Installing FireScript V2

FireScript V2 ships alongside Fire Hose V2 in the same package. It runs perfectly well on its own, but the two are designed to run together — the hose's water and foam are what put these fires out.

1. Add it to server.cfg

Start it after your framework:

ensure firehosemodels
ensure firehosev2
ensure firescriptv2

2. Choose your framework

In firescriptv2/config.lua:

  • UseESX = true — plus UseNewESX = true on newer ESX
  • UseQBCORE = true
  • leave all false for standalone

JobNames controls which jobs count as firefighters — that gates fire warnings, blips, the tablet and map units.

3. Permissions

Turn on UseWhitelist before you go live — with it false, every player counts as an admin, on every framework. Who is a firefighter, a scenario manager and an admin, who can open the tablet, and a ready-made server.cfg block are all on Permissions.

4. Seed the random rotation

Run this once as an admin:

/importfires

It converts the 232 bundled fire locations into ready-to-run scenarios for the random rotation. Without it, the rotation has nothing to pick from.

5. Pick a map image

The dispatch tablet ships with several map images at different sizes and detail levels. Set Config.Tablet.MapImage to whichever suits your players — see The dispatch tablet.

Map credit: the tablet's map images are built from neen-atlasmap by NeenGame, released under the MIT licence. Thank you to NeenGame for making it available.

Optional

Fire tablet item (ESX / QBCore)

Using a fire_tablet item from the inventory opens the Fire Control tablet, with exactly the same access check as /firetablet — carrying the item does not get a non-firefighter in. Rename it with Config.Tablet.ItemName, or set it to "" to turn the item off.

QBCore — add to qb-core/shared/items.lua:

['fire_tablet'] = {['name'] = 'fire_tablet', ['label'] = 'Fire Tablet', ['weight'] = 500, ['type'] = 'item', ['image'] = 'fire_tablet.png', ['unique'] = true, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Fire Control dispatch tablet.'},

ESX — add it to your database:

INSERT INTO `items` (`name`, `label`, `weight`) VALUES ('fire_tablet', 'Fire Tablet', 1);

ox_inventory — add it to ox_inventory/data/items.lua:

['fire_tablet'] = { label = 'Fire Tablet', weight = 500, stack = false, close = true },

Move the bundled fire_tablet.png into your inventory's image folder. On esx_inventoryhud and similar, add the item to Config.CloseUiItems so the inventory closes when the tablet opens.

Other

  • Discord logging needs a webhook resource providing the dw:registerWebhook export. Leave Config.Discord.UseWebHooks false if you do not have one. The webhook URL goes in server.cfg as set firescript_webhook "...", never in config.lua — every player downloads that file.
  • Dispatch alert tone — drop a .ogg in html/sounds and name it in Config.Dispatch.AlertSound.
Can't find what you need? Ask on Discord — response in under 5 hours.