forked from Simnation/Main
ed
This commit is contained in:
parent
577410aa72
commit
a58add2e97
11 changed files with 908 additions and 0 deletions
611
resources/[carscripts]/kq_realoffroad/config.lua
Normal file
611
resources/[carscripts]/kq_realoffroad/config.lua
Normal file
|
@ -0,0 +1,611 @@
|
|||
Config = {}
|
||||
|
||||
-- This enabled additional debug commands and logs
|
||||
-- Debug commands:
|
||||
-- /surfaceDebug - Displays the surface that the wheel is standing on along with all its configured values
|
||||
Config.debug = false
|
||||
|
||||
|
||||
-------------------------------------------------
|
||||
--- GENERAL SETTINGS
|
||||
-------------------------------------------------
|
||||
|
||||
-- By default this script is configured to replicate realistic(ish) values while keeping the gameplay fun and entertaining.
|
||||
-- If you want to make this script less realistic and more arcady. If your players are getting annoyed and you don't want
|
||||
-- a realistic handling. Here are the recommended values:
|
||||
-- generalDepthDifficulty = 25
|
||||
-- generalSinkageSpeed = 50
|
||||
-- generalTractionLoss = 50
|
||||
|
||||
-- General difficulty of the depth handling.
|
||||
-- 100 = default
|
||||
-- Lower this value to make driving in deep surfaces (such as mud or deep sand) easier for ALL vehicles
|
||||
-- Raise this value to make driving in deep surfaces more difficult
|
||||
Config.generalDepthDifficulty = 100
|
||||
|
||||
-- General speed of the vehicle sinking into the surface
|
||||
-- 100 = Default
|
||||
-- Lower this value to make all vehicles sink slower
|
||||
-- Raise this value to make all vehicles sink faster
|
||||
Config.generalSinkageSpeed = 100
|
||||
|
||||
-- General loss of traction based on vehicle surface
|
||||
-- Vehicles will be more likely to skid on low traction surfaces
|
||||
-- Lower this value to decrease the general traction loss (make vehicles drift less on slippery surfaces)
|
||||
-- Raise this value to make vehicles lose more traction on slippery surfaces (make vehicles drift more on slippery surfaces)
|
||||
Config.generalTractionLoss = 100
|
||||
|
||||
|
||||
|
||||
-------------------------------------------------
|
||||
--- VEHICLE MODIFIERS
|
||||
-------------------------------------------------
|
||||
|
||||
-- Changes that offroad tires will make.
|
||||
-- upgradeValue = value of how much better the vehicle should perform when deep in a surface (mud, sand, etc.)
|
||||
-- tractionOnSoft = Additional traction when on materials of softness that's more than 10
|
||||
-- tractionOnHard = Additional (in default case negative) traction on hard materials (softness less than 10)
|
||||
Config.offroadTires = {
|
||||
upgradeValue = 50,
|
||||
tractionOnSoft = 20,
|
||||
tractionOnHard = -10,
|
||||
}
|
||||
|
||||
-- Handling upgrade in deep surface for AWD (4WD) vehicles
|
||||
Config.awdUpgrade = 25
|
||||
|
||||
-- Speed at which vehicles will have 100% of skidding effect applied. When driving under said speed vehicles will not slide nearly as much
|
||||
-- (in km/h)
|
||||
Config.skidSpeedThreshold = 60
|
||||
|
||||
-------------------------------------------------
|
||||
--- SCRIPT PERFORMANCE SETTINGS
|
||||
-------------------------------------------------
|
||||
|
||||
-- The refresh rate of all the sinking/surface logic. The higher the value the less smoother the visuals but better script performance.
|
||||
-- If your server is known for players with slower devices you might want to turn this up
|
||||
-- If your players have better computers or you really want the off-roading to look good try turning it down
|
||||
-- Values between 100 - 500
|
||||
Config.refreshRate = 200
|
||||
|
||||
|
||||
|
||||
-------------------------------------------------
|
||||
--- AREA BLACKLISTING
|
||||
-------------------------------------------------
|
||||
|
||||
-- Some custom MLOs have incorrectly set surfaces for the areas (e.g asphalt is marked as dirt or sand), causing vehicles to sink
|
||||
-- Here you can define custom areas in which the script will not be active in
|
||||
|
||||
-- By default I configured some popular locations for custom MLOs to hopefully prevent majority of issues with sinking into
|
||||
-- incorrectly setup MLO surfaces
|
||||
Config.areaBlacklist = {
|
||||
{ -- Pillbox hospital
|
||||
coords = vector3(293.17, -584.5, 42.8),
|
||||
radius = 20.0
|
||||
},
|
||||
{ -- LSPD
|
||||
coords = vector3(444.9, -1003.2, 30.7),
|
||||
radius = 60.0
|
||||
},
|
||||
{ -- Simeon's dealership
|
||||
coords = vector3(-40.4, -1111.3, 25.8),
|
||||
radius = 40.0
|
||||
},
|
||||
{ -- BCSO
|
||||
coords = vector3(-446.0, 6013.8, 31.8),
|
||||
radius = 50.0
|
||||
},
|
||||
{ -- Sandy Shores PD
|
||||
coords = vector3(1853.6, 3685.8, 34.3),
|
||||
radius = 25.0
|
||||
},
|
||||
{ -- Legion Square
|
||||
coords = vector3(202.3, -941.9, 27.6),
|
||||
radius = 120.0
|
||||
},
|
||||
}
|
||||
|
||||
-------------------------------------------------
|
||||
--- DETAILED SETTINGS
|
||||
-------------------------------------------------
|
||||
|
||||
-- Blacklist. This will disable all script functionality for said model/vehicle class
|
||||
Config.blacklist = {
|
||||
models = {
|
||||
'rcbandito',
|
||||
'monster',
|
||||
'rhino',
|
||||
'scarab',
|
||||
'khanjali',
|
||||
},
|
||||
classes = {
|
||||
[0] = false, -- Compacts
|
||||
[1] = false, -- Sedans
|
||||
[2] = false, -- SUVs
|
||||
[3] = false, -- Coupes
|
||||
[4] = false, -- Muscle
|
||||
[5] = false, -- Sports Classics
|
||||
[6] = false, -- Sports
|
||||
[7] = false, -- Super
|
||||
[8] = false, -- Motorcycles
|
||||
[9] = false, -- Off-road
|
||||
[10] = false, -- Industrial
|
||||
[11] = false, -- Utility
|
||||
[12] = false, -- Vans
|
||||
[17] = false, -- Service
|
||||
[18] = false, -- Emergency
|
||||
[19] = false, -- Military
|
||||
[20] = false, -- Commercial
|
||||
}
|
||||
}
|
||||
|
||||
-- If you define a model specific multiplier it will be used instead of the class multiplier
|
||||
-- Vehicle classes https://docs.fivem.net/natives/?_0x29439776AAA00A62
|
||||
-- Abstract value - Determines how well the class or model of the vehicle can handle being submerged in the surface
|
||||
-- 0 = Default
|
||||
-- Positive values = Better handling / ability to get out of deep surface
|
||||
-- Negative values = Worse handling / less ability to get out of deep surface
|
||||
Config.depthHandlingQuality = {
|
||||
models = {
|
||||
seminole2 = 20,
|
||||
sandking = 20,
|
||||
sandking2 = 20,
|
||||
issi2 = -10,
|
||||
panto = -20,
|
||||
comet4 = 30,
|
||||
|
||||
-- dirt bikes
|
||||
bf400 = 30,
|
||||
sanchez = 20,
|
||||
manchez = 20,
|
||||
esskey = 0,
|
||||
cliffhanger = 0,
|
||||
enduro = 0,
|
||||
},
|
||||
classes = {
|
||||
[0] = 5, -- Compacts
|
||||
[1] = -5, -- Sedans
|
||||
[2] = 15, -- SUVs
|
||||
[3] = 0, -- Coupes
|
||||
[4] = -5, -- Muscle
|
||||
[5] = 5, -- Sports Classics
|
||||
[6] = 5, -- Sports
|
||||
[7] = 5, -- Super
|
||||
[8] = -20, -- Motorcycles
|
||||
[9] = 35, -- Off-road
|
||||
[10] = -10, -- Industrial
|
||||
[11] = -10, -- Utility
|
||||
[12] = -5, -- Vans
|
||||
[17] = 10, -- Service
|
||||
[18] = 10, -- Emergency
|
||||
[19] = 15, -- Military
|
||||
[20] = -5, -- Commercial
|
||||
}
|
||||
}
|
||||
|
||||
-- If you define a model specific multiplier it will be used instead of the class multiplier
|
||||
-- Vehicle classes https://docs.fivem.net/natives/?_0x29439776AAA00A62
|
||||
-- Abstract value - Determines how much traction the vehicle has on an off-road surface
|
||||
-- 0 = Default
|
||||
-- Positive values = Better handling / less traction loss effect
|
||||
-- Negative values = Worse handling / more traction loss effect
|
||||
Config.tractionHandlingQuality = {
|
||||
models = {
|
||||
seminole2 = 25,
|
||||
sandking = 15,
|
||||
sandking2 = 15,
|
||||
comet4 = 20,
|
||||
},
|
||||
classes = {
|
||||
[0] = 5, -- Compacts
|
||||
[1] = 0, -- Sedans
|
||||
[2] = 10, -- SUVs
|
||||
[3] = 0, -- Coupes
|
||||
[4] = -5, -- Muscle
|
||||
[5] = -5, -- Sports Classics
|
||||
[6] = -5, -- Sports
|
||||
[7] = -10, -- Super
|
||||
[8] = 0, -- Motorcycles
|
||||
[9] = 20, -- Off-road
|
||||
[10] = -10, -- Industrial
|
||||
[11] = -10, -- Utility
|
||||
[12] = -5, -- Vans
|
||||
[17] = 10, -- Service
|
||||
[18] = 15, -- Emergency
|
||||
[19] = 20, -- Military
|
||||
[20] = -5, -- Commercial
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
-- Options to decrease traction when theres snow on the roads or the weather is snowy
|
||||
Config.snow = {
|
||||
enabled = true,
|
||||
tractionLoss = 30,
|
||||
|
||||
weathers = {
|
||||
'XMAS',
|
||||
},
|
||||
}
|
||||
|
||||
-- Options to decrease traction when its raining
|
||||
Config.rain = {
|
||||
enabled = true,
|
||||
tractionLoss = 10,
|
||||
}
|
||||
|
||||
|
||||
-- Whether to disable the total stop when deep in mud. When `true` vehicles will always be able to move slowly, even when deep submerged
|
||||
Config.disableTotalStop = false
|
||||
|
||||
-------------------------------------------------
|
||||
--- ROADSIDE SETTINGS
|
||||
-------------------------------------------------
|
||||
|
||||
-- When enabled it makes surfaces which are close to main roads less deep to prevent cars from sinking too deep when on the median etc.
|
||||
Config.roadSideHelper = {
|
||||
enabled = true,
|
||||
|
||||
-- Maximum distance from the road (mind that this takes the middle point of the road. You can see the distance in the /surfaceDebug mode
|
||||
distanceThreshold = 15.0,
|
||||
|
||||
-- Depth multiplier
|
||||
depthMultiplier = 0.1,
|
||||
|
||||
-- Traction loss multiplier
|
||||
tractionMultiplier = 0.25,
|
||||
}
|
||||
|
||||
|
||||
-------------------------------------------------
|
||||
--- SURFACES
|
||||
-------------------------------------------------
|
||||
|
||||
-- name = Only used for the ease of config as well as the debug mode
|
||||
-- traction = Amount of traction on the surface. Anything below 100 will make the vehicles skid. Lower value = more skid
|
||||
-- Maximum 100
|
||||
-- Minimum 0
|
||||
|
||||
-- depth = Maximum depth of the surface in mm (millimeter) - (100mm = +-4 inches)
|
||||
-- Maximum infinite
|
||||
-- Minimum 0
|
||||
|
||||
-- softness = The softness of the material. This dictates how fast the vehicles will sink into the surface. (This is also used for off-road tires to decide their handling boost
|
||||
-- Maximum infinite
|
||||
-- Minimum 0
|
||||
|
||||
-- Values which will be assigned to all un-configured surfaces
|
||||
Config.fallbackSurface = {
|
||||
name = 'Fallback Surface',
|
||||
traction = 100,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
}
|
||||
|
||||
Config.surfaces = {
|
||||
[1] = {
|
||||
name = 'Concrete',
|
||||
traction = 100,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[4] = {
|
||||
name = 'Road',
|
||||
traction = 100,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[5] = {
|
||||
name = 'Tarmac',
|
||||
traction = 100,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[6] = {
|
||||
name = 'Sandy roadside',
|
||||
traction = 80,
|
||||
depth = 50,
|
||||
softness = 5,
|
||||
},
|
||||
[9] = {
|
||||
name = 'Sandstone',
|
||||
traction = 80,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[10] = {
|
||||
name = 'Rock',
|
||||
traction = 80,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[11] = {
|
||||
name = 'Rock',
|
||||
traction = 80,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[13] = {
|
||||
name = 'Cobble',
|
||||
traction = 90,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[16] = {
|
||||
name = 'Limestoneesque sand',
|
||||
traction = 80,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[17] = {
|
||||
name = 'Rocky dry dirt',
|
||||
traction = 80,
|
||||
depth = 50,
|
||||
softness = 5,
|
||||
},
|
||||
[18] = {
|
||||
name = 'Dry sand',
|
||||
traction = 80,
|
||||
depth = 130,
|
||||
softness = 40,
|
||||
},
|
||||
[19] = {
|
||||
name = 'Road sand',
|
||||
traction = 90,
|
||||
depth = 30,
|
||||
softness = 5,
|
||||
},
|
||||
[20] = {
|
||||
name = 'Grainy Sand',
|
||||
traction = 80,
|
||||
depth = 100,
|
||||
softness = 10,
|
||||
},
|
||||
[21] = {
|
||||
name = 'Gravely sand',
|
||||
traction = 70,
|
||||
depth = 220,
|
||||
softness = 30,
|
||||
},
|
||||
[22] = {
|
||||
name = 'Wet hard sand',
|
||||
traction = 70,
|
||||
depth = 250,
|
||||
softness = 50,
|
||||
},
|
||||
[23] = {
|
||||
name = 'Gravel road',
|
||||
traction = 75,
|
||||
depth = 50,
|
||||
softness = 5,
|
||||
},
|
||||
[24] = {
|
||||
name = 'Wet sand',
|
||||
traction = 60,
|
||||
depth = 350,
|
||||
softness = 70,
|
||||
},
|
||||
[31] = {
|
||||
name = 'Gravely dirt/path',
|
||||
traction = 70,
|
||||
depth = 50,
|
||||
softness = 5,
|
||||
},
|
||||
[32] = {
|
||||
name = 'Gravely dirt',
|
||||
traction = 70,
|
||||
depth = 200,
|
||||
softness = 15,
|
||||
},
|
||||
[35] = {
|
||||
name = 'Tuff Sand',
|
||||
traction = 90,
|
||||
depth = 50,
|
||||
softness = 5,
|
||||
},
|
||||
[36] = {
|
||||
name = 'Dirt',
|
||||
traction = 70,
|
||||
depth = 300,
|
||||
softness = 40,
|
||||
},
|
||||
[37] = {
|
||||
name = 'Deep road sand',
|
||||
traction = 60,
|
||||
depth = 75,
|
||||
softness = 15,
|
||||
},
|
||||
[38] = {
|
||||
name = 'Rocky sand',
|
||||
traction = 70,
|
||||
depth = 150,
|
||||
softness = 10,
|
||||
},
|
||||
[40] = {
|
||||
name = 'Moist dirt path',
|
||||
traction = 60,
|
||||
depth = 150,
|
||||
softness = 50,
|
||||
},
|
||||
[41] = {
|
||||
name = 'Swamp grass',
|
||||
traction = 50,
|
||||
depth = 250,
|
||||
softness = 50,
|
||||
},
|
||||
[42] = {
|
||||
name = 'Swamp sand',
|
||||
traction = 70,
|
||||
depth = 500,
|
||||
softness = 110,
|
||||
},
|
||||
[43] = {
|
||||
name = 'Hard Sand',
|
||||
traction = 75,
|
||||
depth = 50,
|
||||
softness = 10,
|
||||
},
|
||||
[44] = {
|
||||
name = 'Dirt/Sand',
|
||||
traction = 50,
|
||||
depth = 200,
|
||||
softness = 25,
|
||||
},
|
||||
[46] = {
|
||||
name = 'Hard grass',
|
||||
traction = 80,
|
||||
depth = 50,
|
||||
softness = 5,
|
||||
},
|
||||
[47] = {
|
||||
name = 'Grass',
|
||||
traction = 65,
|
||||
depth = 125,
|
||||
softness = 10,
|
||||
},
|
||||
[48] = {
|
||||
name = 'Tall grass',
|
||||
traction = 60,
|
||||
depth = 150,
|
||||
softness = 20,
|
||||
},
|
||||
[49] = {
|
||||
name = 'Farmland',
|
||||
traction = 60,
|
||||
depth = 200,
|
||||
softness = 35,
|
||||
},
|
||||
[50] = {
|
||||
name = 'Podzol',
|
||||
traction = 70,
|
||||
depth = 125,
|
||||
softness = 25,
|
||||
},
|
||||
[51] = {
|
||||
name = 'Podzol',
|
||||
traction = 70,
|
||||
depth = 125,
|
||||
softness = 25,
|
||||
},
|
||||
[52] = {
|
||||
name = 'Dry podzol',
|
||||
traction = 80,
|
||||
depth = 75,
|
||||
softness = 10,
|
||||
},
|
||||
[64] = {
|
||||
name = 'Metal',
|
||||
traction = 90,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
[125] = {
|
||||
name = 'Drain concrete',
|
||||
traction = 70,
|
||||
depth = 0,
|
||||
softness = 0,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
-- Zone multiplier
|
||||
-- This has been added to modify the maximum depth of all surfaces located within zones.
|
||||
-- Its used to make grass located (for example) in the city less deep to make it more realistic and easier to drive on.
|
||||
-- If you have popular areas in your city in which you want the off-roading (think of road medians etc.) to be easier you can add the zone here.
|
||||
-- Same goes for areas which you want to be more difficult. You can make the depth multiplier higher for those
|
||||
|
||||
-- You can view the zone you're in by using the debug command /surfaceDebug
|
||||
|
||||
-- Map of zones: https://www.reddit.com/media?url=https%3A%2F%2Fi.redd.it%2F5cw11krz9kcz.jpg
|
||||
-- Zone names and hashes: https://docs.fivem.net/natives/?_0xCD90657D4C30E1CA
|
||||
|
||||
Config.zones = {
|
||||
{
|
||||
name = 'City',
|
||||
depthMultiplier = 0.3,
|
||||
tractionMultiplier = 0.6,
|
||||
zones = {
|
||||
'MOVIE',
|
||||
'ROCKF',
|
||||
'DOWNT',
|
||||
'DTVINE',
|
||||
'EAST_V',
|
||||
'GOLF',
|
||||
'LEGSQU',
|
||||
'ROCKF',
|
||||
'MORN',
|
||||
'STAD',
|
||||
'DAVIS',
|
||||
'RANCHO',
|
||||
'STRAW',
|
||||
'CHAMH',
|
||||
'PBOX',
|
||||
'SKID',
|
||||
'TEXTI',
|
||||
'LMESA',
|
||||
'ELYSIAN',
|
||||
'TERMINA',
|
||||
'HAWICK',
|
||||
'ALTA',
|
||||
'BURTON',
|
||||
'DELPE',
|
||||
},
|
||||
},
|
||||
{
|
||||
name = 'City beaches',
|
||||
depthMultiplier = 0.75,
|
||||
tractionMultiplier = 0.75,
|
||||
zones = {
|
||||
'BEACH',
|
||||
'DELBE',
|
||||
},
|
||||
},
|
||||
{
|
||||
name = 'Mountains',
|
||||
depthMultiplier = 1.25,
|
||||
tractionMultiplier = 1.1,
|
||||
zones = {
|
||||
'MTCHIL',
|
||||
'MTGORDO',
|
||||
'MTJOSE',
|
||||
'PALHIGH',
|
||||
},
|
||||
},
|
||||
{
|
||||
name = 'Zancudo Swamp',
|
||||
depthMultiplier = 1.1,
|
||||
tractionMultiplier = 1.1,
|
||||
zones = {
|
||||
'LAGO',
|
||||
'ZANCUDO',
|
||||
},
|
||||
},
|
||||
{
|
||||
name = 'Popular',
|
||||
depthMultiplier = 0.75,
|
||||
tractionMultiplier = 0.75,
|
||||
zones = {
|
||||
'PALETO',
|
||||
'HARMO',
|
||||
'GRAPES',
|
||||
'SANDY',
|
||||
'RTRAK',
|
||||
'ZQ_UAR',
|
||||
'HUMLAB',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
-- (Advanced)
|
||||
-- When making the vehicles sink the suspension does not always get updated properly.
|
||||
-- Therefore I had to add a system which updates/refreshes the vehicles suspension.
|
||||
-- There are two systems "force" and "flag". "force" is an old system which applies tiny amounts of visual damage to the car
|
||||
-- Unfortunately this sometimes appears to be too much for certain modded vehicles with very soft shells.
|
||||
-- The new system "flag" seems to work much better but hasn't been tested with some vehicles.
|
||||
-- If you encounter any issues with this system, please let us know on our discord <3
|
||||
Config.suspensionRefresh = {
|
||||
enabled = true,
|
||||
type = 'flag',
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue