DarkRP's authors ask you never to edit DarkRP's own files. Instead, everything you want to change lives in a small companion addon called darkrpmodification: your jobs, shipments, entities, settings and any scripts you add. This guide installs that addon from its official GitHub page and shows where each kind of change goes. Checked against the addon's repository (last commit 9 May 2026) and DarkRP 2.7.0, October 2026.
Do you need the full addon?
Not always. The DarkRP tab saves the economy, default laws and F4 menu headings into darkrpmodification, and it creates the two files it needs if they are missing. See Set up DarkRP on your GMod server for that. Install the full addon when you want your own jobs, shipments, entities or modules, or any setting the tab does not cover.
What is inside
Everything sits under lua/ in the addon:
Install the addon
- Download the repository as a ZIP from github.com/FPtje/darkrpmodification. The file is named
darkrpmodification-master.zip. - In your server's File Manager, open
garrysmod/addonsand press Upload files to add the ZIP. - Press Extract here on the ZIP. A folder called
darkrpmodification-masterappears. - Use Rename to change that folder to
darkrpmodification. The DarkRP tab looks for that exact name. - Restart the server so DarkRP loads the addon's files.
You should now see garrysmod/addons/darkrpmodification/lua/darkrp_config/settings.lua.
If you have already saved something in the DarkRP tab, a darkrpmodification folder exists and the rename will clash. Rename the old folder first (for example to darkrpmodification-tab), finish the install, then copy the lines between -- >>> PYW-DARKRP >>> and -- <<< PYW-DARKRP <<< from the old settings.lua and categories.lua to the end of the new ones. The tab manages that block from then on.
Make a change
Open the file in the File Manager, edit it and press Save. settings.lua, disabled_defaults.lua, jobs.lua and categories.lua explain themselves in comments at the top. To add a job, put it in lua/darkrp_customthings/jobs.lua, under the comment that says where custom jobs go:
TEAM_BUILDER = DarkRP.createJob("Builder", {
color = Color(80, 120, 200, 255),
model = "models/player/Group03/Female_01.mdl",
description = [[You build things for the city.]],
weapons = {"weapon_fists"},
command = "builder",
max = 4,
salary = 60,
admin = 0,
vote = false,
hasLicense = false,
})To change one of DarkRP's own jobs, first switch the default off in disabled_defaults.lua, then paste your edited copy into jobs.lua. Restart the server after any edit, because DarkRP reads these files as it starts and Lua refresh is off by default.
Modules
A module is a folder inside lua/darkrp_modules/ holding Lua files. Files starting with sv_ run on the server, cl_ on players' computers and sh_ on both. Use a lowercase folder name with no spaces. Addons that are meant to sit in garrysmod/addons do not belong in this folder, and DarkRP prints an error in the Console if it finds one there.
Common problems
- A change did nothing. Restart the server and check you edited the file inside
darkrpmodification, not a copy. - A Lua error in the Console. DarkRP explains config and module mistakes in plain language when the server starts. Read the message, fix the line it names and restart.
- Your tab settings vanished. See the warning above about the rename clash.
Related guides

Install GmodAdminSuite on Your GMod Server
Install the free GmodAdminSuite Workshop addon and its config addon, edit the Lua config files, and leave storage on its default.
4 min read
Rename DarkRP on Your GMod Server
Run DarkRP under your own name with FPtje's derived gamemode: set it up in the File Manager, change the title and point the Startup tab at it.
3 min read
How to add a Steam Workshop collection to your GMod server
Build a public Workshop collection, paste its link in the Workshop tab and restart: the server and joining players get the same addons, no API key.
6 min read