GMod DarkRP Job Config Generator

Build a complete jobs.lua for your DarkRP server. Add and configure jobs on the left, then copy or download the finished Lua on the right.

Place the generated file at: garrysmod/addons/darkrpmodification/lua/darkrp_customthings/jobs.lua

Jobs (5)

Citizen
Police Officer
Medic
Gun Dealer
Mayor
Tip: DarkRP reads jobs from top to bottom. The first job in the list is typically the default spawn job (GAMEMODE.DefaultTeam = TEAM_CITIZEN).

Job Details

R20
G150
B20

Spawn Weapons

No weapons — job spawns with default hands only.

Use weapon class names, e.g. weapon_pistol, arrest_stick.

Allowed Entities

No extra entities — uses server defaults.

DarkRP entity class names, e.g. sent_shipment, sent_drug_lab.

Custom Fields

Optional — for advanced DarkRP modules (e.g. NeedToChangeFrom).

Values are output as Lua literals — wrap strings in quotes, e.g. "value".

Generated jobs.lua

-- jobs.lua — Generated by DustBowl.Games DarkRP Job Generator
-- https://dustbowl.games/tools/gmod-darkrp-jobs
-- Place at: garrysmod/addons/darkrpmodification/lua/darkrp_customthings/jobs.lua

-- Set the first job as the default spawn job:
-- GAMEMODE.DefaultTeam = TEAM_CITIZEN

TEAM_CITIZEN = DarkRP.createJob("Citizen", {
    color = Color(20, 150, 20, 255),
    model = "models/player/Group03/male_01.mdl",
    description = [[The most basic level of society. Work your way up from here.]],
    weapons = {},
    command = "citizen",
    max = 0,
    salary = 45,
    admin = 0,
    vote = false,
    hasLicense = false,
})

TEAM_POLICE_OFFICER = DarkRP.createJob("Police Officer", {
    color = Color(25, 25, 170, 255),
    model = "models/player/police.mdl",
    description = [[Enforce the law. Use your arrest baton to detain criminals and keep the streets safe.]],
    weapons = {"arrest_stick", "unarrest_stick", "weapon_pistol", "stunstick", "door_ram"},
    command = "cp",
    max = 4,
    salary = 65,
    admin = 0,
    vote = false,
    hasLicense = true,
})

TEAM_MEDIC = DarkRP.createJob("Medic", {
    color = Color(47, 79, 79, 255),
    model = "models/player/kleiner.mdl",
    description = [[Heal injured citizens and keep the community healthy.]],
    weapons = {"weapon_medkit"},
    command = "medic",
    max = 3,
    salary = 45,
    admin = 0,
    vote = false,
    hasLicense = false,
})

TEAM_GUN_DEALER = DarkRP.createJob("Gun Dealer", {
    color = Color(255, 140, 0, 255),
    model = "models/player/monk.mdl",
    description = [[The only person authorised to sell firearms. Supply the city — legally.]],
    weapons = {},
    entities = {"sent_shipment"},
    command = "gundealer",
    max = 2,
    salary = 45,
    admin = 0,
    vote = false,
    hasLicense = true,
})

TEAM_MAYOR = DarkRP.createJob("Mayor", {
    color = Color(150, 20, 20, 255),
    model = "models/player/breen.mdl",
    description = [[Lead the city. Create laws, issue warrants, and manage lockdowns.]],
    weapons = {},
    command = "mayor",
    max = 1,
    salary = 85,
    admin = 0,
    vote = true,
    hasLicense = false,
})
How to install this jobs.lua

Save the file to:

garrysmod/addons/darkrpmodification/lua/darkrp_customthings/jobs.lua

This is the standard location for the darkrpmodification addon. If you're using a different configuration addon, place it wherever your jobs.lua is expected.

After saving, restart the server or use lua_openscript_cl / lua_openscript to reload (full restart is recommended to avoid ghost teams).

Set your default spawn job in jobs.lua: GAMEMODE.DefaultTeam = TEAM_CITIZEN

Reference: DarkRP Custom Job Fields Wiki

Private Garry's Mod hosting

Run your own Garry's Mod server.

Rent a private Garry's Mod server on real hardware — full control-panel access, your mods, your configs, your rules. It's your server; run it your way.

Rent a Garry's Mod server Real hardware · Full control panel · 98% SLA

Don't want to run it yourself? Our managed services & consulting team will set it up and keep it running for you — game servers, Windows, Linux, and cloud, from 10+ years of MSP work.