Skip to content
Run a Server

How to Install DarkRP on a Garry's Mod Server

Install DarkRP on a Garry's Mod server from GitHub or the Workshop, add darkrpmodification, set +gamemode darkrp, install ULX and make yourself superadmin.

To install DarkRP, put the DarkRP gamemode in garrysmod/gamemodes/darkrp, put the darkrpmodification addon in garrysmod/addons/, and start the server with +gamemode darkrp. Then add an admin mod such as ULX and give yourself the superadmin group.

What You're Installing

PartWhat it isWhere it goes
DarkRPThe roleplay gamemode, by FPtje and contributorsgarrysmod/gamemodes/darkrp/
darkrpmodificationThe addon where you change DarkRP's settings, jobs and shopgarrysmod/addons/darkrpmodification/
An admin modCommands to kick, ban, teleport and manage staffgarrysmod/addons/

You need a working dedicated server first. All paths on this page start from your server folder.

Never Edit DarkRP's Own Files

Don't change anything in gamemodes/darkrp/. Updates overwrite it. Make every change in darkrpmodification instead.

Install DarkRP

DarkRP's developers recommend Git or the Workshop. Downloading the files by hand works but isn't recommended.

Install Git, then clone DarkRP into the gamemodes folder. The folder must be called darkrp:

cd garrysmod/gamemodes
git clone https://github.com/FPtje/DarkRP.git darkrp

To update DarkRP later, stop the server and pull the latest version:

cd garrysmod/gamemodes/darkrp
git pull

Players also need DarkRP's models and materials. Add the DarkRP Workshop item to a server Lua file such as garrysmod/lua/autorun/server/workshop.lua:

resource.AddWorkshop("248302805")

Install darkrpmodification

darkrpmodification only works with DarkRP installed. Clone it into the addons folder:

cd garrysmod/addons
git clone https://github.com/FPtje/darkrpmodification.git darkrpmodification

If you don't use Git, click Download ZIP on the GitHub page. Put the contents into a new folder in garrysmod/addons/. Use a lower-case folder name with no spaces, because Linux servers are case-sensitive.

Set DarkRP as the Gamemode

Change +gamemode in your start script to darkrp:

srcds_win64.exe -console -game garrysmod +maxplayers 32 +gamemode darkrp +map gm_construct +sv_setsteamaccount YOUR_GSLT

gm_construct is fine for testing. For a real server, pick a roleplay city map from the Workshop. Put the map in your collection and use its .bsp name in +map.

Start the server and join. You should spawn as a Citizen with money on your HUD. Press F4 to open the DarkRP menu.

Configure DarkRP

Everything lives in darkrpmodification's lua folder:

FileWhat you change there
darkrp_config/settings.luaDarkRP's main settings. Start here
darkrp_config/disabled_defaults.luaTurn off default jobs, entities and other built-ins you want to replace
darkrp_config/mysql.luaStore DarkRP data in MySQL
darkrp_customthings/jobs.luaYour jobs
darkrp_customthings/entities.luaBuyable entities, such as money printers
darkrp_customthings/shipments.luaWeapon shipments
darkrp_modules/Your own DarkRP modules

Restart the server after you change these files. The DarkRP wiki at darkrp.miraheze.org has guides and documentation for these files.

Add an Admin Mod

DarkRP ships with FAdmin, a basic admin tool. Most servers add a fuller admin mod as well.

ULX and ULib

ULX is a free admin mod by Team Ulysses. It lets you run several admins at different access levels on one server. It has commands from kick, ban and slay to freeze, blind and votes, plus an in-game menu. ULX needs ULib, Team Ulysses' library, installed alongside it.

Add both to your server's Workshop collection:

AddonWorkshop ID
ULX557962280
ULib557962238

After installing, restart the server fully. Team Ulysses say a map change isn't enough.

SAM

SAM is a paid admin mod sold on GmodStore. Follow the install steps that come with your purchase.

Make Yourself Superadmin

Superadmin is the top group. In ULX, superadmins can use every command, override other players' immunity and grant or remove access with userallow and userdeny.

Join your server. Then type this into the server console, not your game console, using your Steam name:

ulx adduser "YourName" superadmin

If you're not online, add yourself by SteamID instead:

ulx adduserid "STEAM_0:1:12345678" superadmin

To find your SteamID, join the server and type status into the server console. It lists every player's SteamID.

Use ULX

Type ulx menu in your game console to open the ULX menu. Bind it to a key so you don't have to type it each time.

Every ULX command starts with ulx in the console. In chat, use ! instead:

ulx help
ulx kick "PlayerName" "Reason"

To add staff, open the Groups tab in the menu, pick a group and click Add. Or use ulx adduser with the group name, such as admin.

Troubleshooting

Next Steps

Tune your server.cfg, keep downloads small with the Workshop guide, and check you're listed with a GSLT and open ports.

Want to see a big DarkRP server running? Join Justified: justified.gg

More in Run a Server

View all