SHOWCASE VIDEO
About DarkRP Fire System
You may recognize the script idea from custom roleplay gamemodes such as OCRP, PERP, SantosRP etc. The fire material is used by those gamemodes and has been for years.I advise that you use VCMod ELS for sirens, lights, etc on fire trucks. The script supports 2 fire trucks by default, which are both supported by VCMod ELS!
Features

























Admin Commands
Here is a list of the available console commands:
- Create fire spawn location (ch_create_fire name)
- Remove fire spawn location (ch_remove_fire name)
- Remove all fire spawn locations (ch_remove_fire_all)
- Turn off all fires (adminfire_fireoff)
- Spawn fire at your current aim (adminfire_spawnfire)
- List of valid fire file names (adminfire_validfire)
- Start all fires at set spawn locations (adminfire_startall)
- Current amount of fires (adminfire_fireamount)
Other Details
This addon supports DarkRP 2.7.+
Extract the
SETUP
1 - First step is to setup fire spawn locations.
All you have to do, is go to the locations you want the fire to spawn at, and type
The "name" part has to be an unique name to recognize the fire location.
Use the command
Use the command
2- Once you've done that, you will want to set up the fire truck NPC for the firefighters.
Go the the location you want it to be at and type
3 - Now you must set up locations for the actual fire trucks to spawn at. You can setup as many as you want and it will choose randomly.
Go to your desired spawn points and type
You can clear all fire truck spawns by typing
Remember to aim in the right direction, so you get the right angle.
You must be an administrator on your server to perform these actions and no restarts are required!
EXTINGUISHER CABINETS
As a server owner, you can setup extinguisher cabinets around the map as you wish. They're available through the Q Menu in the category "DarkRP Fire System".
Place as many as you'd like and run the console command
You can use the
Extract the
darkrpfiresystem
folder to your addons.SETUP
1 - First step is to setup fire spawn locations.
All you have to do, is go to the locations you want the fire to spawn at, and type
ch_create_fire uniquename
into your console.The "name" part has to be an unique name to recognize the fire location.
Use the command
ch_remove_fire uniquename
to remove a specific fire location. No restart is required.Use the command
ch_remove_fire_all
to remove all fire locations. No restart is required.2- Once you've done that, you will want to set up the fire truck NPC for the firefighters.
Go the the location you want it to be at and type
firetrucknpc_setpos
into your console to spawn the NPC.3 - Now you must set up locations for the actual fire trucks to spawn at. You can setup as many as you want and it will choose randomly.
Go to your desired spawn points and type
firetruck_addspawnpos
in console.You can clear all fire truck spawns by typing
[B]firetruck_clearallspawns[/B]
in console.Remember to aim in the right direction, so you get the right angle.
You must be an administrator on your server to perform these actions and no restarts are required!
EXTINGUISHER CABINETS
As a server owner, you can setup extinguisher cabinets around the map as you wish. They're available through the Q Menu in the category "DarkRP Fire System".
Place as many as you'd like and run the console command
fire_ext_cabinets_savepos
to save all cabinets on the map.You can use the
CH_FireSystem.Config.CabinetCooldown
config to modify how frequent players can retrieve extinguishers from the cabinet.CONTENT
Script content can be found at:
https://steamcommunity.com/sharedfiles/filedetails/?id=1598105059
Make sure to add this to your servers workshop collection as well.
Script content can be found at:
https://steamcommunity.com/sharedfiles/filedetails/?id=1598105059
Make sure to add this to your servers workshop collection as well.
To customize the general settings, go to
To customize firetrucks, go to
To customize and add languages, go to
To customize darkrp additions (jobs, ents, etc), go to
There are over 30 different configuration options in the general settings.
The rest of the config files has no limits. You can add as many firetrucks as you want.
General Config
Adding Firetrucks
To customize firetrucks, go to
I have pre-configured 6 fire trucks and you can find the code and workshop links in the following knowledge base article: https://www.gmodstore.com/help/addon/e1-CoNs0SYKh7mIOVRqYsw/adding-firetrucks
Additionally you can add any fire truck you'd like to the addon yourself.
darkrpfiresystem/lua/ch_fire_system/shared/config/ch_fire_config.lua
To customize firetrucks, go to
darkrpfiresystem/lua/ch_fire_system/shared/config/ch_fire_truck_config.lua
To customize and add languages, go to
darkrpfiresystem/lua/ch_fire_system/shared/config/ch_fire_config_lang.lua
To customize darkrp additions (jobs, ents, etc), go to
darkrpfiresystem/lua/darkrp_modules/ch_fire_system/sh_ch_fire_system_darkrp.lua
There are over 30 different configuration options in the general settings.
The rest of the config files has no limits. You can add as many firetrucks as you want.
General Config
Code:
-- Set Language
-- Available languages: English: en - French: fr - Danish: da - German: de - Russian: ru - Spanish: es - Chinese: cn
CH_FireSystem.Config.Language = "en" -- Set the language of the script.
--[[
General Config
--]]
CH_FireSystem.Config.MaterialTypes = { -- Full list of material types (ground types), that fire can spread on. For example: wood, grass, carpet.
[MAT_DIRT] = true,
[MAT_WOOD] = true,
[MAT_COMPUTER] = true,
[MAT_FOLIAGE] = true,
[MAT_PLASTIC] = true,
[MAT_SAND] = true,
[MAT_SLOSH] = true,
[MAT_TILE] = true,
[MAT_GRASS] = true,
[MAT_VENT] = true,
}
-- List of potential MAT enums: https://wiki.garrysmod.com/page/Enums/MAT
CH_FireSystem.Config.AllowedTeams = { -- You can add fire chief and stuff like that, and they can do the things fire fighters can.
["Fire Fighter"] = true,
["Fire Fighter Chief"] = true,
}
CH_FireSystem.Config.MaxFires = 250 -- Maximum amount of fires that can spawn/spread.
CH_FireSystem.Config.RandomFireInterval = 300 -- Interval between random fires are generated around the map.
CH_FireSystem.Config.RemoveAllOnLastDC = false -- Remove all fires when there are no more players on the server (to prevent lag?).
CH_FireSystem.Config.SpreadInterval = 120 -- Time between fire spreads (in seconds).
CH_FireSystem.Config.ExtinguishPay = 10 -- Payment for turning off a fire.
CH_FireSystem.Config.NotifyOnExtinguish = true -- Send the player a notification that they've received money for extinguishing fire.
CH_FireSystem.Config.AutoTurnOff = 600 -- Fire will automatically turn off after x seconds. 0 and it will burn until put out with extinguisher.
CH_FireSystem.Config.RandomizeFireSpawn = true -- Will randomize if a fire spawns or not when CH_FireSystem.Config.RandomFireInterval hits 0. true is enabled, false is disabled.
CH_FireSystem.Config.FireFightersRequired = 1 -- How many fire fighters are required before fires will start?
CH_FireSystem.Config.EnableSmokeEffect = false -- Disable/Enable the smoke effect that emits from fire (true/false)
CH_FireSystem.Config.ExtinguishAllFiresOnFFLeave = true -- Should all fires turn off when the last fire fighter leave their job.
CH_FireSystem.Config.DrawActiveFires = false -- Draw active fires location on fire fighters screen if not in sight.
--[[
Fire Damage Config
--]]
CH_FireSystem.Config.FireFighterDamage = 2 -- The amount of damage fire fighters should take from standing in fire.
CH_FireSystem.Config.FireDamage = 4 -- The amount of damage everyone else should take from standing in fire.
CH_FireSystem.Config.VehicleDamage = 6 -- The amount of damage vehicles should take from being in fire.
CH_FireSystem.Config.DamageInterval = 0.5 -- The amount of time between taking damage when standing in fire (in seconds).
CH_FireSystem.Config.RemovePropTimer = 10 -- Time amount of seconds before a prop is removed after it ignites (if it is not extinguished).
CH_FireSystem.Config.BurntPropColor = Color(120, 120, 120, 255) -- If a prop hits the fire, it will set on fire and turn into this color (burnt color).
CH_FireSystem.Config.IgniteProps = true -- Should props ignite when touched by fire?
CH_FireSystem.Config.SetPlayersOnFire = true -- Should players actually ignite when touched by fire?
CH_FireSystem.Config.PlayerOnFireDuration = 10 -- Amount of seconds the player should be on fire?
CH_FireSystem.Config.EnableSmokeDamage = true -- Basically changes the distance between fire and player before damage is taken. For realistic, say it's the smoke "killing" the player.
--[[
Firetruck NPC Config
--]]
CH_FireSystem.Config.NPCModel = "models/odessa.mdl" -- This is the model of the NPC to get a firetruck from.
CH_FireSystem.Config.MaxTrucks = 3 -- The maximum amount of firetrucks allowed in total on the server.
CH_FireSystem.Config.UseRequiredULXRanks = true -- Should the firetrucks be restricted by ulx ranks?
CH_FireSystem.Config.NPCDisplayName = "Fireman Sam" -- NAME (text for overhead display)
CH_FireSystem.Config.NPCDisplayDescription = "Retrieve a firetruck here" -- Text for overhead display
CH_FireSystem.Config.OverheadTextDisplay = false -- Should the new overhead text display show?
CH_FireSystem.Config.OverheadSpinningBubble = true -- Should the chat bubble model spin on top of the firetruck NPC?
CH_FireSystem.Config.OverheadSpinningBubbleSpeed = 0.4 -- The speed at which the bubble turns. Increase to make it faster, decrease to make it slower.
CH_FireSystem.Config.DistanceTo3D2D = 400000 -- Distance between player and supply crate/money bag before text appears.
--[[
Fire Axe Config
--]]
CH_FireSystem.Config.AxeFireRange = 450 -- If there is fire within this range of the door, firefighters can open it.
CH_FireSystem.Config.AxePlayerDamage = 5 -- How much damage should the fire axe do to players. Set to 0 to disable.
--[[
Fire Pyro Job
--]]
CH_FireSystem.Config.EnablePyroJob = true -- If you want to enable the pyro job and the cheap molotov cocktail, set this to true. If not, set it to false.
--[[
Fire Extinguisher Citizen
--]]
CH_FireSystem.Config.FireExtRemoveTimer = 20 -- The amount of seconds before the fire fighter is removed from the citizen after he start using it.
CH_FireSystem.Config.ExtinguishCitizenPay = 4 -- Payment for turning off a fire as a non-firefighter.
--[[
Fire Extinguish Config
--]]
CH_FireSystem.Config.ExtinguisherRandomSpeed = math.random( 2, 4 ) -- Modify the amount of "damage" the extinguisher will do to fire. Default means between 1 and 3. To make it faster put for example math.random( 3, 5 )
CH_FireSystem.Config.HoseRandomSpeed = math.random( 4, 6 ) -- Modify the amount of "damage" the fire hose will do to fires. Keep in mind the "Weapons DLC" is required to get the fire hose.
--[[
Fire Extinguisher Cabinet
--]]
CH_FireSystem.Config.CabinetCooldown = 600 -- Cooldown between taking a fire extinguisher from the cabinet. IN SECONDS
--[[
Fire Admin Chat Commands
--]]
CH_FireSystem.Config.ChatCommandFireOff = "!fireoff"
CH_FireSystem.Config.ChatCommandSpawnFire = "!spawnfire"
CH_FireSystem.Config.ChatCommandValidFires = "!validfires"
CH_FireSystem.Config.ChatCommandStartAllFires = "!startall"
CH_FireSystem.Config.ChatCommandFireAmount = "!fireamount"
--[[
XP SUPPORT
https://github.com/uen/Leveling-System and https://www.gmodstore.com/market/view/ZulBh6wzRg2udB-bskk59w and https://www.gmodstore.com/market/view/8vAdDl46QUmo9upPDM02kA and https://www.gmodstore.com/market/view/MNKuVyfcQjykUYkLV63Fmg
https://www.gmodstore.com/market/view/uInsVHfPQ-q3apZhBLEX3A and https://www.gmodstore.com/market/view/ZI2Ev9tOQT2avLrCXQxGWA
--]]
CH_FireSystem.Config.ExtinguishFireMinXP = 50 -- Amount of XP given when extinguishing fire (minimum amount)
CH_FireSystem.Config.ExtinguishFireMaxXP = 50 -- Amount of XP given when extinguishing fire (maximum amount). The amount is randomized between these two values.
To customize firetrucks, go to
darkrpfiresystem/lua/ch_fire_system/shared/config/ch_fire_truck_config.lua
I have pre-configured 6 fire trucks and you can find the code and workshop links in the following knowledge base article: https://www.gmodstore.com/help/addon/e1-CoNs0SYKh7mIOVRqYsw/adding-firetrucks
Additionally you can add any fire truck you'd like to the addon yourself.
Accessories DLC
The addon includes remote explosives and timed C4 bombs. You can use both type of explosives to flip over vehicles and blow them up causing a lot of damage and fire.
Vehicles being flipped over will cause a chaos in your city and really put your fire fighters to work.
Players can set up fire alarms with different ranges in their house/base. Useful for making sure that no fire is started without being noticed and quickly put out using Citizen Extinguishers.
If users buys and activates the advanced fire alarm with the extended range, they will also be notified when it starts. In case they are far away, they will receive a notification on their screen.
Weapons DLC
This DLC adds exclusive weapons & entities to use with your fire department roleplay. The fire hose, which you can only use once nearby a firetruck, and is much more effective at turning off fires. An incendiary grenade which creates a bunch of fires when it explodes. An explosive gasoline tank, and a firestopper grenade to turn off fires within a range from it's detonation.
Discord Server & Support
I own a Discord server for customers and anyone else who wish to join. I will occasionally provide exclusive offers and help with minor issues that might occur with my scripts. If you have a more serious problem, please create a conversation with me onsite.Conflicting addons is not to be said if I will support that or not. This is something I will decide upon confrontation about a conflicting addon. If you have found a conflicting addon, then feel free to create a conversation and I'll see if I can assist with solving the conflict.