// Garry's Mod

Garry's Mod DarkRP-server opzetten: jobs, addons en 64-bit

Garry's Mod DarkRP-server opzetten: jobs, addons en 64-bit

Een DarkRP-server maak je in vier stappen: zet de gamemode op darkrp, laad DarkRP en je addons via een Workshop-collectie, zet je eigen jobs en instellingen in de addon darkrpmodification (nooit in DarkRP zelf) en maak jezelf admin met FAdmin. Hieronder elke stap met de echte bestandsnamen, plus wat de 64-bit-update van Garry's Mod van september 2026 wel en niet voor je server betekent.

Wat je nodig hebt

DarkRP is de roleplay-gamemode van FPtje, gebouwd op sandbox: spelers kiezen een job, verdienen salaris en kopen spullen via het F4-menu. Naast een Garry's Mod-server (Steam-app 4020) heb je nodig:

  • Een GSLT (Game Server Login Token). De Facepunch-wiki noemt die verplicht; zonder token zakt je server in de serverlijst. Je maakt hem op de Steam-pagina voor gameserveraccounts met App ID 4000, één per server. In ons paneel plak je hem in de startup-variabele Steam Account Token.
  • Een Workshop-collectie, openbaar of niet vermeld (unlisted). Een privécollectie kan de server niet lezen.
  • De addon darkrpmodification van GitHub, voor alles wat je zelf aanpast.

Wanneer níét? Wil je alleen met een paar vrienden bouwen en klooien, dan is sandbox minder werk. DarkRP loont pas als je regels wilt handhaven en tijd hebt om te modereren.

Stap 1: gamemode, map en Workshop-collectie

Volgens de README installeer je DarkRP via git of via de Workshop (ID 248302805). Het makkelijkst: zet DarkRP in je collectie. Vul daarna in het paneel bij de startup-variabelen in:

  • Gamemode: darkrp, de naam van de gamemodemap.
  • Workshop-collectie: het ID van je collectie. Het startcommando geeft het mee als +host_workshop_collection; de server downloadt de collectie bij elke start, inclusief geneste collecties.
  • Map: de bestandsnaam van een RP-map zonder .bsp. Zit de map in je collectie, dan staat de naam meestal in de Workshop-beschrijving.

Spelers krijgen de map en DarkRP automatisch als die uit de collectie van de server komen. Andere addons met content, zoals models of geluiden, zet je klaar met resource.AddWorkshop("ID") in een Lua-bestand; op onze servers staat daarvoor al garrysmod/lua/autorun/server/workshop.lua. Gebruik daar losse addon-ID's, geen collectie-ID, en sla addons die alleen Lua bevatten over: die komen via een ander systeem mee. Een volgende update brengt nog een alternatief: losse Workshop-ID's in cfg/srcds_workshop_ids.txt. Eind september zit die functie alleen nog in de dev-branch, niet in de gewone serverversie. Meer over addons in de kennisbank: Workshop-addons en gamemodes installeren.

Stap 2: darkrpmodification, nooit de core

De belangrijkste regel staat letterlijk in de README: "don't touch DarkRP's core files". Wat je in gamemodes/darkrp/ verandert, raak je bij de volgende update van DarkRP kwijt. Daarvoor bestaat darkrpmodification: download de zip van GitHub en zet de inhoud in een eigen map onder garrysmod/addons/, via bestandsbeheer of SFTP. In die map staan alleen tekstbestanden:

Mappenstructuur van een DarkRP-server: de addon darkrpmodification in garrysmod/addons met darkrp_config en darkrp_customthings, naast lua/bin voor binaire modules en de DarkRP-gamemode die je niet aanpast
Waar je DarkRP aanpast: alles in de addon darkrpmodification, niets in gamemodes/darkrp.
  • lua/darkrp_config/: settings.lua (de belangrijkste instellingen), disabled_defaults.lua, mysql.lua en licenseweapons.lua.
  • lua/darkrp_customthings/: jobs.lua, shipments.lua, entities.lua en bestanden voor agenda's, munitie, deurgroepen, groepschats en voertuigen.
  • lua/darkrp_language/ voor vertalingen en lua/darkrp_modules/ voor eigen modules.

Stap 3: eigen jobs, shipments en entities

Een job is één blok in jobs.lua, in dezelfde vorm als de standaardjobs van DarkRP:

TEAM_MONTEUR = DarkRP.createJob("Monteur", {
    color = Color(230, 140, 20, 255),
    model = {"models/player/Group01/Male_02.mdl"},
    description = [[Repareert auto's in de garage.]],
    weapons = {},
    command = "monteur",
    max = 2,
    salary = GAMEMODE.Config.normalsalary,
    admin = 0,
    vote = false,
    hasLicense = false,
    category = "Citizens",
})

Wil je een standaardjob wijzigen, zoals de politie, dan zet je hem eerst uit in disabled_defaults.lua en kopieer je hem daarna naar jobs.lua. Zo doe je dat ook met wapens en shipments (shipments.lua) en met entities zoals de money printer (entities.lua). Herstart na elke wijziging en kijk in de console: een vergeten komma geeft daar een Lua-fout, en je job verschijnt dan niet in het F4-menu.

Stap 4: instellingen en modules

In settings.lua staan alle knoppen van de economie en de regels, met de standaardwaarden erbij, zoals GM.Config.startingmoney = 500 en GM.Config.normalsalary = 45. Pas alleen aan wat je echt anders wilt. In disabled_defaults.lua zet je hele modules aan of uit: true is uit, false is aan. Honger (hungermod) en de AFK-module staan standaard uit; wil je dat spelers moeten eten, zet hungermod dan op false.

Jezelf admin maken met FAdmin

DarkRP heeft een eigen adminsysteem, FAdmin, dat standaard aanstaat. Maak jezelf superadmin door in de console van het paneel fadmin setroot JouwNaam te typen terwijl je op de server bent; daarna werken de commando's ook in de chat, met / ervoor. Gebruik je liever een ander adminsysteem, zet dan de module fadmin uit in disabled_defaults.lua, zodat er niet twee systemen door elkaar lopen.

Database: SQLite is genoeg

DarkRP bewaart geld en gegevens standaard in de ingebouwde SQLite-database garrysmod/sv.db. Voor één server is dat prima. MySQL (in mysql.lua, met de module MySQLOO) heb je pas nodig als meerdere servers dezelfde gegevens moeten delen, en dan komt ook de 64-bit-vraag om de hoek kijken.

64-bit: wat de update van september wel en niet betekent

Op 16 september bracht Facepunch 64-bit-versies van de client, de dedicated server en Hammer uit. Volgens de patchnotes gaat dat over Windows; de reden is minder kans op crashes door een volle 32-bit-adresruimte bij zware servers en veel addons. Voor Linux noemt de wiki 64-bit nog als onderdeel van de bètabranch x86-64. Op ons paneel start de server met srcds_run van de standaardbranch.

Voor gewone Lua-addons maakt dit niets uit. Het telt alleen bij binaire modules in garrysmod/lua/bin/, zoals MySQLOO: die moeten dezelfde architectuur hebben als je server. Een 32-bit Linux-server laadt gmsv_naam_linux.dll, een 64-bit Linux-server gmsv_naam_linux64.dll. Twijfel je, typ dan in de console lua_run print(jit.os, jit.arch): x86 is 32-bit, x64 is 64-bit. Download daarna de module die daarbij past en test hem eerst, vóór je spelers erop laat.

Slots, RAM en pakket

Het aantal slots zet je in het paneel met Max Players (standaard 32, maximaal 128) en de tickrate met Tickrate (standaard 66). Voor het geheugen geldt een eerlijke grens: een 32-bit serverproces kan hooguit 4 GB geheugen adresseren. Meer RAM dan dat helpt één 32-bit server dus niet.

  • Amateur (2 GB, € 3,00): sandbox of een kleine DarkRP-test.
  • Beginner (4 GB, € 6,00): een DarkRP-server met een normale collectie.
  • Traveller (6 GB, € 9,00): marge voor een zware collectie die tegen die 4 GB aan zit.

Kies je een groter pakket, dan is dat vooral voor de opslag: vanaf Researcher (10 GB, € 15,00) krijg je 60 GB NVMe in plaats van 40 GB. Voor één 32-bit server levert meer RAM weinig op.

Alle Garry's Mod-pakketten hebben NVMe-opslag en DDoS-bescherming, zijn maandelijks opzegbaar en draaien in Hengelo, Frankfurt, Warschau of Beauharnois. Nog geen server? Zie een Garry's Mod-server starten.

Veelgestelde vragen

Hoe maak ik een DarkRP-server?

Zet de gamemode op darkrp, laad DarkRP (Workshop-ID 248302805) en je addons via een openbare of unlisted Workshop-collectie, en zet een GSLT in je startparameters. Je eigen jobs en instellingen komen in de addon darkrpmodification in garrysmod/addons, nooit in de bestanden van DarkRP zelf.

Waar pas ik DarkRP-jobs aan?

In lua/darkrp_customthings/jobs.lua van de addon darkrpmodification, met DarkRP.createJob. Een standaardjob wijzig je door hem eerst uit te zetten in lua/darkrp_config/disabled_defaults.lua en hem daarna naar jobs.lua te kopiëren.

Heb ik een GSLT nodig voor een Garry's Mod-server?

Ja. De Facepunch-wiki noemt de Game Server Login Token verplicht; servers zonder token zakken flink in de serverlijst. Je maakt hem op Steam met App ID 4000, één per server, en geeft hem mee met +sv_setsteamaccount.

Werkt mijn addon op de 64-bit versie van Garry's Mod?

Gewone Lua-addons werken op 32-bit en 64-bit. Alleen binaire modules in garrysmod/lua/bin moeten bij de architectuur passen: _linux.dll voor 32-bit Linux, _linux64.dll voor 64-bit. Met lua_run print(jit.os, jit.arch) in de console zie je welke je server draait.

Verder lezen

// ZELF PROBEREN
Je Minecraft-server binnen 60 seconden online
Bekijk de pakketten →