The Driver Syndicate/Vehicles/Vehicle Zones
Jump to navigation
Jump to search
Vehicle Zones are used to define named vehicle sets for the level.
Currently it's not possible to set vehicle zones to other than default yet but with ongoing road system refactoring it's coming true soon.
Making Vehicle Zones
Each level/city can have it's own unique sets of vehicles. Vehicle zones are defined in the file located in next path:
<Addon Folder>/scripts/lua/levels/<Level Name>_vehicles.lua
For default level it is going to be located in GameData/scripts/lua/levels/default_vehicles.lua
If your city is in early stages of development or for some reason it does not have vehicle zones, the game will fall back for default one.
File Structure
Example of vehicles.lua file:
local FreeRideVehicleSet = {
CopVehicles = {
default = {
Patrol = {
cop_regis = { },
--cop_k5 = { minFelony = 0.75 }
},
RoadBlock = {
cop_regis = { },
--cop_k5 = { minFelony = 0.75 }
},
},
mission3 = {
Patrol = {
k5 = { type = "GangAI", tags = PURSUER_PATROL_TAGS }
},
RoadBlock = {}, -- no roadblocks
},
mission4 = {
Patrol = {
k5 = { type = "GangAI", tags = PURSUER_PATROL_TAGS },
mustang = { type = "GangAI", tags = PURSUER_PATROL_TAGS },
carla = { type = "GangAI", tags = PURSUER_PATROL_TAGS },
},
RoadBlock = {}, -- no roadblocks
},
},
Traffic = {
default = {
rollo = {},
mustang = {},
mustang_f = {},
carla = {},
torino = {},
taxi = { interval = 5, tags = "taxi" },
ranchero = { interval = 5 },
k5 = { interval = 8 },
van = { interval = 15 },
cop_regis = { interval = 20, traffic = false }, -- cops are spawn by the requests
vette = { interval = 15 },
--suburban = { interval = 25 },
--bus = { interval = 30, parked = false },
},
warehouses = {
ranchero = { interval = 3 },
k5 = { interval = 3 },
van = { interval = 4 },
taxi = { interval = 12, tags = "taxi" },
rollo = { interval = 2 },
mustang = { interval = 2 },
mustang_f = { interval = 2 },
carla = { interval = 2 },
torino = { interval = 2 },
cop_regis = { interval = 20 },
vette = { interval = 25 },
},
}
}
local GameModeVehicleSets = {
["freeride"] = FreeRideVehicleSet,
--["minigames/survival"] = SurvivalVehicleSet
}
local vehicleSet = GameModeVehicleSets[MissionManager:GetGameMode()]
-- always return freeride set if no corresponding gamemode set has been found
return vehicleSet or FreeRideVehicleSet
In this example:
- default and warehouses are representing zone names. Currently only default is used and IT DOES NOT represent a level name.
- rollo, mustang, carla, van etc are the vehicle script names that are spawned for that zones
- numbers are represeting the spawn interval which also determines the rarity of traffic in a level.
- CopVehicles sets the cop car script globally for the level