Vehicle Sirens Editor
Build and tune emergency lighting: every siren light's colour, rotation, flash and 32-step sequencer pattern with a live preview, BPM and timing, then export carcols.meta. Drop your carcols files to see which siren IDs are taken, free or clashing.
How siren settings work
A siren setting is one <Item> in the <Sirens> block of a carcols.meta. It has an id, timing for the whole set (sequencerBpm, timeMultiplier), how the cast light behaves (falloff and cone angles) and a list of exactly 20 lights. Light 1 is drawn at the model's siren1 bone, light 20 at siren20. A light with no matching bone on the model is skipped, so the same setting looks different on different cars.
The vehicle picks its setting in carvariations.meta with <sirenSettings value="ID" />. That number must match theid in carcols.meta. 0 means no sirens.
Sequencers
Every light has a 32 bit sequencer: one bit per beat at sequencerBpm, 1 is on and 0 is off. The file stores it as an unsigned decimal number. Guides read the bits left to right, so step 1 in the grid is the highest bit. 4294967295 is always on,2863311530 is 1010..., 1431655765 is 0101.... At 300 BPM a full pattern takes 1920 / 300 = 6.4 seconds. Flashing lights use theflashiness sequencer, rotators (rotate true) the rotation one. multiples splits a lit beat into several flashes.
Siren ids and the 255 limit
- The id is a single byte in both carcols and carvariations, so ids go up to 255. 0 means no sirens, and the Limit Adjuster reserves 255, so 1 to 254 is the safe range.
- The game itself uses ids 1 to 20 (build 3889). Rockstar adds new ones with DLCs, so start your own ids higher. The tool suggests ids from 100 up.
- Two resources with the same id do not crash anything, but only one definition is used and the other cars show the wrong lights. Use the Siren ID check tab with every carcols.meta on your server.
- FiveM does not raise the limit (citizenfx/fivem#2612 is still open). The client side SirenSetting Limit Adjuster allows higher ids and 32 lights, but every player has to install it, so it is rarely an option for public servers.
Loading it in FiveM
files {
'data/carcols.meta',
'data/carvariations.meta',
}
data_file 'CARCOLS_FILE' 'data/carcols.meta'
data_file 'VEHICLE_VARIATION_FILE' 'data/carvariations.meta'A carcols.meta that only has a <Sirens> block is fine. If your vehicle resource already ships a carcols.meta, paste the exported<Item> into its Sirens block instead of adding a second file with the same id.
What the preview gets right, and what it does not
- Right: which lights are lit on which step, the BPM and timeMultiplier timing, multiples, colours, lamp positions from the real model's siren bones.
- Approximate: glow size, beam length and brightness, and rotator speed. The game also fades lights and draws coronas and cast light with its own shaders. Always check in game.
- Head and tail light flashes are shown at the model's headlight and taillight bones.
Sources
- Default settings: the game's own carcols and carvariations files (build 3889).
- Sequencer, BPM, rotator and corona behaviour: community guides onmodding-forum.com (emergency lights),rotators and wig wags andLiveLights.
- Id limit discussion: forum.cfx.re,SirenSetting Limit Adjuster.
- data_file names: FiveM resource manifest docs.
More config & code tools
server.cfg Generator
Build a complete, working server.cfg with hostname, slots, OneSync, endpoints, tags, resources & ACE permissions.
fxmanifest.lua Generator
Scaffold a valid resource manifest: fx_version, scripts, NUI page, files, lua54 & dependencies.
Vehicle Handling Editor
Tune mass, drive force, grip and suspension from a UI, then export handling.meta or runtime Lua.
