BG3 Server Adminstration Tools

Coming to BG3 is a new suite of server administration tools. These suite comes in two parts: a customizable SteamID-based permission system, avoiding the need for distributing an rcon password; and a set of commands for managing individual players and groups of players.

Customizable Permissions System

The only way to execute server commands in the past (excluding plugins) has been to distribute a single password shared among all server administrators. Obviously, a problem with this is that if the password leaks, then anyone could access the server and perform malicious commands. A more secure system was needed.

And now, that system has arrived. With this new system, server owners can create “roles” with specific powers, and then assign specific players (by SteamID) to those roles. They can do this by editing a new file, permissions.res , which lies inside the CFG folder of The Battle Grounds III. Within this file, roles, can be created as such:

"admin"
{
  "permissions_manage" 1
  "player_manage" 1
  "mapmode" 1
  "bot_manage" 1
  "console_access" 1
  "players"
  {
    STEAM_1:0:52754047 1
  }
}

This creates a role named “admin” with all possible permissions. Here is a list of all the assignable permissions and what they grant access to:

  • “permissions_manage” – players with this permission are allowed to assign players to roles in-game. Reserve this permission for the trusted server owners.
  • “player_manage” – players with this permission are allowed to kick, slay, and otherwise manage players.
  • “mapmode” – players with this permission are allowed to change the map and change the gamemode.
  • “bot_manage” – players with this permission are allowed to add/remove bots from the server.
  • “console_access” – players with this permission are allowed to execute any console command on the server. This is was the power granted to those in the old password system.

For further details on how to assign and create roles, server administrators should read the documentation inside the permissions.res file.

Command Suite

Corresponding with the new permissions is a new set of commands. Some of these commands are not new, but they have been included because they have been retrofitted into the new system and were not well-documented beforehand.

Some of these commands have an argument called selector, which allows a command to be targeted to multiple players. Here is a command list:

Command Arguments Meaning Permission
slay selector Kills the specified player(s). player_manage
spawn selector Spawns the specified player(s) if they are dead, regardless of gamemode. player_manage
spec selector Changes the specified player(s) to spectator. player_manage
amer selector Switches the specified player(s) to the American team. player_manage
brit selector Switches the specified player(s) to the British team. player_manage
aclass class-abreviation Linebattle mode only. Switches all American players to the class matching the given abbreviation. The abbreviations are the same as those used in the class limit server variables. This also forces players who join the American team to pick this class. player_manage
bclass class-abreviation Same as above, but for the British team. player_manage
akit weapon uniform ammo Linebattle mode only. Switches all American players to the specified weapon, uniform, and ammo of their current class. Arguments must be integers. For example, with American Infantry, a weapon of 0 yields a Long Pattern, 1 yields a Charleville, and 2 yields a Spanish musket. Uniform and ammo default to 0 if not specified. The weapon choice is enforced onto all joining players. player_manage
bkit weapon uniform ammo Same as above, but for the British team. player_manage
clip selector Toggles “noclip” movement on the selected player(s). player_manage
rc command-string All of the arguments after “rc” are passed to the server as a standalone command. This is identical to the “rcon” command which was used before. console_access
bot_add num Adds the specified number of bots to one of the teams. The team alternates between successive commands. bot_manage
bot_add_a num Adds the specified number of bots to the American team. bot_manage
bot_add_b num Adds the specified number of bots to the British team. bot_manage
bot_kick_all Removes all bots from the server. bot_manage
linebattle num-rounds Sets the number of rounds, and then starts a linebattle by running cfg/linebattle.cfg mapmode
lms num-rounds Sets the number of rounds, and then starts an LMS match by running cfg/lms.cfg mapmode
skirm num-minutes-per-round Sets the number of minutes per round, and then starts a 2-round skirmish match by running cfg/skirm.cfg mapmode
changemap map-name Changes the server to the specified map. mapmode
nextmap map-name Sets the next map to be the specified map. mapmode

Selectors

These are the selectors players can use to target a command to target groups of players.

Selector Mechanic
@all Selects all players
@brit Selects all players on the British team
@amer Selects all players on the American team
@spec Selects all players who are spectators
@bot Selects all players who are bots
@me Selects the player making the selection
@aim Selects the player aimed at by the selecting player
@alive Selects all players who are alive
@dead Selects all players who are dead
#number Selects the player whose player index (as viewable with the “status” command) matches the number
name Selects the player whose name most closely matches the given name

Example Commands

  • amer @all //switches all players to American team
  • changemap ctf_river //switches the map to ctf_river
  • spec @aim //Switches the player aimed at to spectator

Needless to say, all of these commands and permissions are subject to change.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.

Up ↑

%d bloggers like this: