How toOpenRCT2

How to Make Yourself Admin on an OpenRCT2 Server (users.json)

Become admin on a headless OpenRCT2 server: find your key hash, add it to users.json with groupId 0, then set groups so friends can build, not just spectate.

Updated Oct 7, 2026 · 5 min read

On this page

To make yourself admin on a headless OpenRCT2 server, find your key hash in the name of the .pubkey file in your own OpenRCT2 keys folder (it looks like YourName-<40 character hash>.pubkey), then add an entry with that hash and "groupId": 0 to users.json in the server's user data folder. The server reloads users.json every time someone joins, so reconnect and you are in the Admin group. Then fix the default group, because new players join as Spectators who can only chat.

On a server hosted from inside the game, the host is admin automatically. On a headless server the "host" is the server itself, so somebody has to be promoted by hand once.

How OpenRCT2 identifies players

OpenRCT2 does not use accounts. The first time you open multiplayer, the game makes a key pair for your player name and stores it in your user data folder:

File Where (Windows)
YourName.privkey Documents\OpenRCT2\keys\
YourName-<hash>.pubkey Documents\OpenRCT2\keys\

On Linux the folder is ~/.config/OpenRCT2/keys/, and on macOS ~/Library/Application Support/OpenRCT2/keys/.

The long string after the dash in the .pubkey filename is your key hash. The server knows you by that hash, not by your name, so renaming yourself does not change your rank, and someone else using your name cannot take your rank either. It also means that if you reinstall and lose the .privkey, the server sees a stranger.

The default groups

A fresh server creates groups.json with three groups:

groupId Group What it can do
0 Admin Everything, including cheats, kicking and changing groups
1 Spectator Chat only
2 User Build rides, paths and scenery, hire staff, set prices. No kicking, group changes, cheats or tile editing

And the default group for newcomers is 1, Spectator. That is why the most common complaint after setting up a server is "my friends can join but cannot build anything".

Step 1: Find your hash

Open your own keys folder and copy the part of the .pubkey filename between the dash and .pubkey. If the folder is empty, open Multiplayer in OpenRCT2 once and join any server so the game creates your key.

Step 2: Edit users.json on the server

Stop the server, then open users.json in the server's user data folder (the folder passed with --user-data-path). It is a JSON list. The server adds itself to it on first start. Add yourself:

[
  {
    "hash": "the-server-hash-already-here",
    "name": "Server",
    "groupId": 0
  },
  {
    "hash": "paste-your-40-character-hash-here",
    "name": "YourName",
    "groupId": 0
  }
]

Watch the commas: every entry except the last needs one after its closing brace. A broken users.json is ignored, which looks like the change "did nothing".

Strictly, the server reloads users.json whenever a player connects, so this also works without stopping it, as long as nothing saves over your edit at the same moment. Stopping first is the safe habit.

Step 3: Rejoin

Start the server and connect. Open the Multiplayer window from the toolbar and look at the Players tab: your name now shows in the Admin group. Admins also skip the server password.

Building a coaster together on an OpenRCT2 server

Step 4: Let your friends build

You have two choices, both in the Multiplayer window:

  1. Change the default group. On the Groups tab, set the default group to User. Everyone who joins from now on can build. Good for a private, passworded server.
  2. Promote people one by one. On the Players tab, pick a player and set their group to User. Their hash is saved to users.json automatically, so they keep the group next time. Good for a public server where strangers should watch first.

To make another admin, set their group to Admin the same way. You never need to edit the file again after the first admin exists.

Custom groups and permissions

On the Groups tab you can add groups and tick permissions individually. The permission list, as it appears in groups.json:

Permission Allows
PERMISSION_CHAT Chatting
PERMISSION_TERRAFORM Raising and lowering land
PERMISSION_SET_WATER_LEVEL Changing water
PERMISSION_TOGGLE_PAUSE Pausing the game
PERMISSION_CREATE_RIDE, PERMISSION_BUILD_RIDE Placing and building rides
PERMISSION_REMOVE_RIDE Demolishing rides
PERMISSION_RIDE_PROPERTIES Prices, colors, operating modes
PERMISSION_SCENERY, PERMISSION_PATH Scenery and footpaths
PERMISSION_CLEAR_LANDSCAPE Clearing trees and scenery
PERMISSION_GUEST, PERMISSION_STAFF Managing guests and staff
PERMISSION_PARK_PROPERTIES, PERMISSION_PARK_FUNDING Park name, entry fee, loans and marketing
PERMISSION_KICK_PLAYER Kicking
PERMISSION_MODIFY_GROUPS, PERMISSION_SET_PLAYER_GROUP Managing groups
PERMISSION_CHEAT The cheats window
PERMISSION_MODIFY_TILE The tile inspector
PERMISSION_PASSWORDLESS_LOGIN Joining without the password

A popular setup for a public server is a Builder group with everything except demolishing rides, park funding and cheats, so newcomers can help without bulldozing someone's coaster or taking out the maximum loan.

An OpenRCT2 park built by a group

A whitelist from users.json

With known_keys_only = true under [network] in config.ini, only players already listed in users.json can join. Everyone else sees This server only allows whitelisted players to connect. Promote your group to User first, so their hashes are saved, then turn it on.

Admin on GamezServers

On a GamezServers OpenRCT2 server, users.json and groups.json sit in the server's ServerData folder in the file manager, so steps 2 and 3 take a minute in the browser. Stop the server from the panel, edit, save and start it again, and use the one click backup before experimenting with groups. For the rest of the setup, see how to host an OpenRCT2 server, and if friends are refused at the door, OpenRCT2 version mismatch and desync fixes.

FAQ

How do I find my OpenRCT2 key hash?

It is in the filename of the .pubkey file in your OpenRCT2 keys folder, after your name and the dash.

Why can my friends not build on my OpenRCT2 server?

New players join the Spectator group, which can only chat. Set the default group to User on the Groups tab, or promote them on the Players tab.

Do I need to restart the server after editing users.json?

No, the server reloads it when a player connects. Stopping the server before editing is still the safest way.

Can I get admin back if I reinstalled OpenRCT2?

Only if you kept your keys folder. A new install makes a new key with a new hash, so add the new hash to users.json the same way.

Skip the setup. Your own OpenRCT2 server.

$2.49USD first month

Then $4.99/mo. Just trying it? $1.25 for 3 days

Keep reading