Developer Guides ‐ HLL RCON Commands - MarechJ/hll_rcon_tool GitHub Wiki

🧭 You are here : Wiki home / Developer Guides / HLL RCON Commands


Table of Contents

Protocol

HLL servers open up a RCON port that lets people connect via TCP. All communication is encrypted with a XOR cipher, with the key sent upon opening the socket connection.

Implementations include:

Executing commands

Commands are encrypted strings without special headers. Responses are SUCCESS, FAIL, EMPTY, or a custom string for information.

Parameters are added after the command, separated by spaces. Some parameters can be wrapped in "quotation marks" to include spaces.

All commands except help require authorization via the login command. An incorrect password returns a non-SUCCESS response, and unauthorized commands yield FAIL.

Lists

Some commands return a tab-separated (\t) list, with the first entry indicating the list length (excluding itself), ending with a tab: 2\tITEM1\tITEM2\t

WARNING: Some commands allow tab injection into responses, causing parsing failures. Replace tabs in inputs to prevent this. For example, in vipadd, a tab in the name parameter makes subsequent get vipids responses unreadable until removed with vipdel.

Built-in console

The game has a built-in RCON console, opened with Ctrl + Alt + Shift + N. Depending on your admin role, you may need to login to use certain commands.

Unique player IDs

Each player has a persistent unique ID (UID), ideal for targeting individuals. Many commands require player names instead of UIDs, so check each command’s documentation.

UIDs vary by platform:

  • Steam: Steam64ID
  • Other platforms: MD5-hashed version 4 UUID (Changed in U15.2: UUIDs are now hashed).

Commands

Legend:

<required>

[optional]

"may be quoted"

Commands are case-insensitive.

NOTE: Unless documented, assume the command returns SUCCESS.


Help

See all commands and their parameters.

NOTE: No login required.

Returns:

  • All available commands and parameters

Login <password>

Authorizes the connection to use commands.

Params:

  • password (str) - The server’s RCON password

RconPassword <old_password> <new_password>

Changes the RCON password.

Params:

  • old_password (str) - Current RCON password
  • new_password (str) - New RCON password

Server


Get Name

Get the server’s name, as seen in the server browser.

Returns:

  • The server’s name

Get Slots

Get the current and maximum player count.

Returns:

  • Current/max player count, separated by a slash
> get slots
89/100

Get GameState

Get current match information.

WARNING: If the last player leaves, their team’s player count stays at 1 until someone joins.

Returns:

  • Match details
> get gamestate
Players: Allied: 48 - Axis: 50
Score: Allied: 2 - Axis: 3
Remaining Time: 0:31:44
Map: utahbeach_warfare
Next Map: stmariedumont_warfare

Get MaxQueuedPlayers

Get the maximum server queue size.

Returns:

  • Max queue length

Get NumVipSlots

Get the number of slots reserved for VIPs.

Returns:

  • Number of reserved slots

SetMaxQueuedPlayers <size>

Changes the maximum server queue size.

Params:

  • size (int) - Queue size (max. 6)

SetNumVipSlots <amount>

Changes the number of slots reserved for VIPs.

Params:

  • amount (int) - Number of reserved slots

Say <message>

Updates the welcome message, shown on the deployment screen and when spawning. Displays to all currently spawned players.

Params:

  • message (str) - Welcome message

Broadcast <message>

Broadcasts a message at the top left of the screen for all players, or clears it if empty.

NOTE: The message parameter is required but can be empty. Broadcast fails, but Broadcast clears the message.

Params:

  • message (str) - Broadcast message, leave empty to clear

ShowLog <timespan> ["filter"]

Get server logs up to the specified minutes ago.

WARNING: Logs are retained until server restart. Actions before a restart are not logged.

Params:

  • timespan (int) - Minutes ago to include logs from (e.g., 5 for the last 5 minutes)
  • filter (str) - Phrase to filter results

Returns:

  • Log messages separated by newlines (\n), or EMPTY if no logs match. See logs section for details.

Maps


Get Map

Get the current map. Repeated maps have a _RESTART suffix (e.g., utahbeach_warfare_RESTART). During map loading (~5 seconds), it may show Untitled_#, where # is the rotation index.

Returns:

  • Active map

Get MapsForRotation

Get a list of all existing maps, unlike rotlist, which lists maps in rotation.

Returns:


Get ObjectiveRow_0 Get ObjectiveRow_1 Get ObjectiveRow_2 Get ObjectiveRow_3 Get ObjectiveRow_4

Get a list of three objective names for the specified row, from left-to-right or top-to-bottom based on map orientation. Used with GameLayout.

WARNING: Fails in Skirmish mode, returning: Cannot execute command for this gamemode.

NOTE: Cannot retrieve the five currently selected objectives.

Added in U15.2.

Returns:

  • List of objective names

RotList

Return the current map rotation.

Returns:

  • \n-delimited sequence of map names

RotAdd <map_name> [after_map_name] [after_map_ordinal]

Add a map to the rotation, at the end unless specified.

WARNING: May return a failure message instead of FAIL.

Changed in U14.7: map_name and after_map_name no longer need /Game/Maps/ prefix and are case-insensitive.

Params:

  • map_name (str) - Map to add
  • after_map_name (str) - Map in rotation to place the new map after
  • after_map_ordinal (int) - Instance of after_map_name to add after, default 1 (1st)

RotDel <map_name> [map_ordinal]

Remove a map from the rotation.

WARNING: May return a failure message instead of FAIL.

Changed in U14.7: map_name no longer needs /Game/Maps/ prefix and is case-insensitive.

Params:

  • map_name (str) - Map to remove
  • map_ordinal (int) - Instance of map_name to remove, default 1 (1st)

Map <map_name> [map_ordinal]

Starts a 60-second timer shown to all players, then ends the match (skipping the End of Round screen) and loads the specified map.

Changed in U14.7: Map no longer needs to be in rotation; map_name is case-insensitive.

Params:

  • map_name (str) - Map to switch to
  • map_ordinal (int) - Instance of map_name to switch to, default 1 (1st)

GameLayout <obj0> <obj1> <obj2> <obj3> <obj4>

Restarts the match with specified objectives, from left-to-right or top-to-bottom based on map orientation. Objectives must match names from Get ObjectiveRow_0 to _4.

NOTE: Objective names are case-insensitive.

WARNING: Invalid objective names or partial parameters may crash the server on Warfare/Offensive modes, poisoning the map until server reinstall. In Skirmish, the match restarts regardless of parameters. TODO: Verify if this bug is patched.

Added in U15.2.

Params:

  • obj0 (str) - 1st objective name
  • obj1 (str) - 2nd objective name
  • obj2 (str) - 3rd objective name
  • obj3 (str) - 4th objective name
  • obj4 (str) - 5th objective name

QueryMapShuffle

Query if map shuffling is enabled.

Added in U14.

Returns:

  • Map Shuffle: TRUE or Map Shuffle: FALSE

ToggleMapShuffle

Toggle map shuffling on or off.

WARNING: May fail under unknown circumstances.

Added in U14.


ListCurrentMapSequence

If map shuffling is enabled, returns the shuffled rotation.

Added in U14.

Returns:

  • \n-delimited sequence of map names

Players


Get Players

Get a list of names of all online players.

Returns:

  • List of player names

Get PlayerIds

Get a list of names and UIDs of all online players.

Returns:

  • List of player names and UIDs:
> get playerids
2\t(WTH) Abu : 76561199023367826\tAnotherName : 12345678901234567\t

Get AdminIds

Get a list of all admins, including name, UID, and role.

Roles are listed via get admingroups.

Returns:

  • List of admins, each with UID, role, and name, space-separated:
> get adminids
2\t76561199023367826 senior (WTH) Abu\t12345678901234567 camera AnotherName\t

Get AdminGroups

Get a list of permission groups or "roles" assignable via adminadd.

Roles and permissions are often configurable via Game Server Provider panels.

Returns:


Get VipIds

Get a list of all VIPs, including UID and comment (usually name).

Returns:

  • List of VIPs, each with UID and comment, space-separated:
> get vipids
2\t76561199023367826 Abu (Admin)\t12345678901234567 AnotherName\t

PlayerInfo <player_name>

Return detailed player information, including team, unit, role, and kills.

NOTE: Only command showing full player names; others truncate names over 20 characters.

WARNING: Information varies by player state:

  • On team select screen: team is None, no loadout.
  • Not in a unit: no unit information.
  • Loadout updates only on spawn.
  • If name has a space as the 20th character, the truncated name ends with a space, causing failure.

Params:

  • player_name (str) - Player’s name

Returns:

  • Player details
> playerinfo (WTH) Abu
Name: (WTH) Abu
steamID64: 12345678901234567
Team: Allies
Role: Officer
Unit: 0 - Able
Loadout: NCO
Kills: 0 - Deaths: 0
Score: C 50, O 0, D 40, S 10
Level: 174

AdminAdd <"player_id"> <"role"> ["name"]

Assign an admin role, granting in-game permissions.

Params:

  • player_id (str) - Player’s UID
  • role (str) - Assignable role
  • name (str) - Player’s name

AdminDel <player_id>

Remove admin roles, revoking permissions.

Params:

  • player_id (str) - Player’s UID

VipAdd <"player_id"> <"name">

Assign VIP permissions for reserved slots.

WARNING: name must be quoted to include spaces. An empty player_id cannot be removed.

Params:

  • player_id (str) - Player’s UID
  • name (str) - Player’s name

VipDel <player_id>

Remove VIP permissions.

Params:

  • player_id (str) - Player’s UID

Moderation


Get TempBans

Get a list of active temporary bans.

Each ban is a string ("ban log") with UID, name at ban time, duration, date, reason, and admin name:

76561199023367826 : nickname "(WTH) Abu" banned for 2 hours on 2021.12.09-16.40.08 for "Being a troll" by admin "Some Admin Name"

Reason and admin name are omitted if not provided.

WARNING: Empty strings may appear due to a bug with expired bans.

Use the full ban log to remove via pardontempban.

Returns:


Get PermaBans

Get a list of active permanent bans.

Each ban is a string ("ban log") with UID, name at ban time, date, reason, and admin name:

76561199023367826 : nickname "(WTH) Abu" banned on 2021.12.09-16.40.08 for "Being a troll" by admin "Some Admin Name"

Use the full ban log to remove via pardonpermaban.

Returns:


Message <"player"> <"message">

Send a message to a player, shown top-right.

WARNING: Names with spaces fail due to a bug; use UID instead.

Params:

  • player (str) - Player’s name or UID
  • message (str) - Message to show

Punish <"player"> ["reason"]

Kill a player with a message.

Params:

  • player (str) - Player’s name
  • reason (str) - Reason shown

SwitchTeamOnDeath <player>

Switch a player’s team on next death.

Params:

  • player (str) - Player’s name

SwitchTeamNow <player>

Switch a player’s team immediately, killing them if alive.

Params:

  • player (str) - Player’s name

Kick <"player"> ["reason"]

Kick a player with a message.

Params:

  • player (str) - Player’s name
  • reason (str) - Reason shown

TempBan <"player_id"> [duration] ["reason"] ["admin_name"]

Temporarily ban a player.

WARNING: player_id supports names, but it’s unsafe and doesn’t return FAIL for unrecognized names, using an empty string instead.

Params:

  • player_id (str) - Player’s UID
  • duration (int) - Ban duration in hours, default 2
  • reason (str) - Reason shown
  • admin_name (str) - Admin’s name, for audit

PermaBan <"player_id"> ["reason"] ["admin_name"]

Permanently ban a player.

WARNING: player_id supports names, but it’s unsafe and doesn’t return FAIL for unrecognized names, using an empty string instead.

Params:

  • player_id (str) - Player’s UID
  • reason (str) - Reason shown
  • admin_name (str) - Admin’s name, for audit

PardonTempBan <ban_log>

Remove a temporary ban.

Params:


PardonPermaBan <ban_log>

Remove a permanent ban.

Params:


Configuration


Get Idletime

Get minutes of inactivity before auto-kick.

Returns:

  • Minutes players can be idle

Get HighPing

Get latency threshold for auto-kick.

Returns:

  • Latency threshold in milliseconds

Get TeamSwitchCooldown

Get team switch cooldown.

Returns:

  • Cooldown in minutes

Get AutoBalanceEnabled

Check if team auto-balance is enabled.

Returns:

  • 0 or 1

Get AutoBalanceThreshold

Get auto-balance player threshold.

Returns:

  • Threshold

Get VoteKickEnabled

Check if vote kicks are enabled.

Returns:

  • 0 or 1

Get VoteKickThreshold

Get vote kick threshold.

Returns:

  • Votes required

Get Profanity

Get a list of censored chat words.

Returns:

  • List of profanities

SetKickIdleTime <threshold>

Set inactivity auto-kick time.

Params:

  • threshold (int) - Minutes, 0 to disable

SetHighPing <threshold>

Set latency auto-kick threshold.

Params:

  • threshold (int) - Milliseconds, 0 to disable

SetTeamSwitchCooldown <cooldown>

Set team switch cooldown.

Params:

  • cooldown (int) - Minutes

SetAutoBalanceEnabled <bool>

Enable/disable team auto-balance.

Params:

  • bool (bool) - on or off

SetAutoBalanceThreshold <threshold>

Set max player difference for auto-balance.

Params:

  • threshold (int) - Threshold

SetVoteKickEnabled <bool>

Enable/disable vote kicking.

Params:

  • bool (bool) - on or off

SetVoteKickThreshold <threshold_pairs>

Set votes required for kick, varying by player count.

Params:

  • threshold_pairs (str) - Comma-separated playercount & threshold pairs, starting with 0 players (e.g., 0,5,25,10 for 5 votes at 0+ players, 10 at 25+)

ResetVoteKickThreshold

Reset vote kick thresholds set by setvotekickthreshold.


BanProfanity <profanities>

Add words to profanity list.

Params:

  • profanities (str) - Comma-separated words

Returns:

  • List of profanities

UnbanProfanity <profanities>

Remove words from profanity list.

Params:

  • profanities (str) - Comma-separated words

Returns:

  • List of profanities

Logs

Logs are obtained with Showlog, returned as text, oldest first, with each line prefixed by time elapsed and timestamp.

TODO: Add vote kick logs

[10:00:00 hours (1639106251)] CONNECTED A Player Name (12345678901234567)
[10:00:00 hours (1639122640)] DISCONNECTED A Player Name (12345678901234567)
[10:00:00 hours (1639143555)] KILL: A Player Name(Axis/12345678901234567) -> (WTH) A Player name(Allies/12345678901234567) with MP40
[10:00:00 hours (1639144073)] TEAM KILL: A Player Name(Allies/12345678901234567) -> A Player Name(Allies/12345678901234567) with M1 GARAND
[30:00 min (1639144118)] CHAT[Team][A Player Name(Allies/12345678901234567)]: Please build garrisons!
[30:00 min (1639145775)] CHAT[Unit][A Player Name(Axis/12345678901234567)]: comms working?
[15.03 sec (1639148961)] Player [A Player Name (12345678901234567)] Entered Admin Camera
[15.03 sec (1639148961)] Player [A Player Name (12345678901234567)] Left Admin Camera
[15.03 sec (1639148961)] BAN: [A Player Name] has been banned. [BANNED FOR 2 HOURS BY THE ADMINISTRATOR!]
[15.03 sec (1639148961)] KICK: [A Player Name] has been kicked. [BANNED FOR 2 HOURS BY THE ADMINISTRATOR!]
[15.03 sec (1639148961)] MESSAGE: player [A Player Name(12345678901234567)], content [Stop teamkilling, you donkey!]
[805 ms (1639148969)] MATCH START SAINTE-MÈRE-ÉGLISE Warfare
[805 ms (1639148969)] MATCH ENDED `SAINTE-MÈRE-ÉGLISE Warfare` ALLIED (2 - 3) AXIS 

WARNING: BAN, KICK, and MESSAGE logs may include unescaped newlines, splitting into multiple lines:

[13:35 min (1671206494)] MESSAGE: player [A Player Name(12345678901234567)], content [This is line 1.
This is line 2.
And this is line 3!]

Escape newlines with Regex, replacing those not followed by a log timestamp:

# Python
import re
logs = logs.strip('\n')
logs = re.sub(r"\n(?!\[.+? \(\d+\)\])", "\\n", logs)

Available Maps

NOTE: Some maps (e.g., hill400_warfare_night) are only available in PTEs.

Map Name Query Name Pretty Name* Base Gamemode Environment Attackers
CAR_S_1944_Day_P_Skirmish DEV_F_DAY_SKM CARENTAN Skirmish Carentan Skirmish Day
CAR_S_1944_Dusk_P_Skirmish DEV_F_DUSK_SKM CARENTAN Skirmish Carentan Skirmish Dusk
CAR_S_1944_Rain_P_Skirmish DEV_F_RAIN_SKM CARENTAN Skirmish Carentan Skirmish Rain
carentan_offensive_ger CT CARENTAN Offensive Carentan Offensive Day GER
carentan_offensive_us CT CARENTAN Offensive Carentan Offensive Day US
carentan_warfare CT CARENTAN Warfare Carentan Warfare Day
carentan_warfare_night CT_N CARENTAN NIGHT Warfare Carentan Warfare Night
driel_offensive_ger Driel_Day DRIEL Offensive Driel Offensive Day GER
driel_offensive_us Driel_Day DRIEL Offensive Driel Offensive Day GB
driel_warfare Driel DRIEL Warfare Driel Warfare Dawn
driel_warfare_night Driel_N DRIEL Warfare Driel Warfare Night
DRL_S_1944_P_Skirmish DEV_C_SKM DRIEL Skirmish Driel Skirmish Dawn
DRL_S_1944_Day_P_Skirmish DEV_C_Day_SKM DRIEL Skirmish Driel Skirmish Day
DRL_S_1944_Night_P_Skirmish DEV_C_Night_SKM DRIEL Skirmish Driel Skirmish Night
ELA_S_1942_P_Skirmish DEV_D_Day_SKM EL ALAMEIN Skirmish El Alamein Skirmish Day
ELA_S_1942_Night_P_Skirmish DEV_D_Night_SKM EL ALAMEIN Skirmish El Alamein Skirmish Dusk
elalamein_offensive_CW elalamein EL ALAMEIN Offensive El Alamein Offensive Day B8A
elalamein_offensive_ger elalamein EL ALAMEIN Offensive El Alamein Offensive Day DAK
elalamein_warfare elalamein EL ALAMEIN Warfare El Alamein Warfare Day
elalamein_warfare_night elalamein_N EL ALAMEIN Warfare El Alamein Warfare Dusk
elsenbornridge_offensiveger_day DEV_N ELSENBORN RIDGE Offensive Elsenborn Ridge Offensive Day GER
elsenbornridge_offensiveger_morning DEV_N_Morning ELSENBORN RIDGE Offensive Elsenborn Ridge Offensive Dawn GER
elsenbornridge_offensiveger_night DEV_N_Night ELSENBORN RIDGE Offensive Elsenborn Ridge Offensive Night GER
elsenbornridge_offensiveUS_day DEV_N ELSENBORN RIDGE Offensive Elsenborn Ridge Offensive Day US
elsenbornridge_offensiveUS_morning DEV_N_Morning ELSENBORN RIDGE Offensive Elsenborn Ridge Offensive Dawn US
elsenbornridge_offensiveUS_night DEV_N_Night ELSENBORN RIDGE Offensive Elsenborn Ridge Offensive Night US
elsenbornridge_skirmish_day DEV_N_Day_SKM ELSENBORN RIDGE Skirmish Elsenborn Ridge Skirmish Day
elsenbornridge_skirmish_morning DEV_N_Morning_SKM ELSENBORN RIDGE Skirmish Elsenborn Ridge Skirmish Dawn
elsenbornridge_skirmish_night DEV_N_Night_SKM ELSENBORN RIDGE Skirmish Elsenborn Ridge Skirmish Night
elsenbornridge_warfare_day DEV_N ELSENBORN RIDGE Warfare Elsenborn Ridge Warfare Day
elsenbornridge_warfare_morning DEV_N_Morning ELSENBORN RIDGE Warfare Elsenborn Ridge Warfare Dawn
elsenbornridge_warfare_night DEV_N_Night ELSENBORN RIDGE Warfare Elsenborn Ridge Warfare Night
foy_offensive_ger Foy FOY Offensive Foy Offensive Day GER
foy_offensive_us Foy FOY Offensive Foy Offensive Day US
foy_warfare Foy FOY Warfare Foy Warfare Day
foy_warfare_night Foy_N FOY Warfare Foy Warfare Night
HIL_S_1944_Day_P_Skirmish DEV_H_Day_Skirmish HILL 400 Skirmish Hill 400 Skirmish Day
HIL_S_1944_Dusk_P_Skirmish DEV_H_Dusk_Skirmish HILL 400 Skirmish Hill 400 Skirmish Dusk
hill400_offensive_ger Hill400 HILL 400 Offensive Hill 400 Offensive Foggy GER
hill400_offensive_US** Hill400 HILL 400 Offensive Hill 400 Offensive Day US
hill400_warfare Hill400 HILL 400 Warfare Hill 400 Warfare Day
hill400_warfare_night*** Hill400_N HILL 400 Warfare Hill 400 Warfare Night
hurtgenforest_offensive_ger Hurtgen HÜRTGEN FOREST Offensive Hürtgen Forest Offensive Foggy GER
hurtgenforest_offensive_US Hurtgen HÜRTGEN FOREST Offensive Hürtgen Forest Offensive Day US
hurtgenforest_warfare_V2 Hurtgen HÜRTGEN FOREST Warfare Hürtgen Forest Warfare Day
hurtgenforest_warfare_V2_night Hurtgen_N HÜRTGEN FOREST Warfare Hürtgen Forest Warfare Night
kharkov_offensive_ger Kharkov Kharkov Offensive Kharkov Offensive Day GER
kharkov_offensive_rus Kharkov Kharkov Offensive Kharkov Offensive Day RUS
kharkov_warfare Kharkov Kharkov Warfare Kharkov Warfare Day
kharkov_warfare_night Kharkov_N Kharkov Warfare Kharkov Warfare Night
kursk_offensive_ger Kursk KURSK Offensive Kursk Offensive Day GER
kursk_offensive_rus Kursk KURSK Offensive Kursk Offensive Day RUS
kursk_warfare Kursk KURSK Warfare Kursk Warfare Day
kursk_warfare_night Kursk_N KURSK Warfare Kursk Warfare Night
mortain_offensiveger_day Mortain MORTAIN Offensive Mortain Offensive Day GER
mortain_offensiveger_dusk Mortain_E MORTAIN Offensive Mortain Offensive Dawn GER
mortain_offensiveger_overcast Mortain_O MORTAIN Offensive Mortain Offensive Overcast GER
mortain_offensiveUS_day** Mortain MORTAIN Offensive Mortain Offensive Day US
mortain_offensiveUS_dusk Mortain_E MORTAIN Offensive Mortain Offensive Dawn US
mortain_offensiveUS_overcast** Mortain_O MORTAIN Offensive Mortain Offensive Overcast US
mortain_skirmish_day Mortain_SKM_Day MORTAIN Skirmish Mortain Skirmish Day
mortain_skirmish_dusk Mortain_SKM_Evening MORTAIN Skirmish Mortain Skirmish Dawn
mortain_skirmish_overcast Mortain_SKM_Overcast MORTAIN Skirmish Mortain Skirmish Overcast
mortain_warfare_day Mortain MORTAIN Warfare Mortain Warfare Day
mortain_warfare_dusk Mortain_E MORTAIN Warfare Mortain Warfare Dawn
mortain_warfare_overcast Mortain_O MORTAIN Warfare Mortain Warfare Overcast
omahabeach_offensive_ger Omaha OMAHA BEACH Offensive Omaha Beach Offensive Day GER
omahabeach_offensive_us Omaha OMAHA BEACH Offensive Omaha Beach Offensive Day US
omahabeach_warfare Omaha OMAHA BEACH Warfare Omaha Beach Warfare Day
omahabeach_warfare_night Omaha_N OMAHA BEACH Warfare Omaha Beach Warfare Dusk
PHL_L_1944_OffensiveGER PHL PURPLE HEART LANE Offensive Purple Heart Lane Offensive Day GER
PHL_L_1944_OffensiveUS PHL PURPLE HEART LANE Offensive Purple Heart Lane Offensive Day US
PHL_L_1944_Warfare PHL PURPLE HEART LANE Warfare Purple Heart Lane Warfare Rain
PHL_L_1944_Warfare_Night PHL_N PURPLE HEART LANE Warfare Purple Heart Lane Warfare Night
PHL_S_1944_Rain_P_Skirmish DEV_K_Rain_SKM PURPLE HEART LANE Skirmish Purple Heart Lane Skirmish Rain
PHL_S_1944_Morning_P_Skirmish DEV_K_Morning_SKM PURPLE HEART LANE Skirmish Purple Heart Lane Skirmish Morning
PHL_S_1944_Night_P_Skirmish DEV_K_Night_SKM PURPLE HEART LANE Skirmish Purple Heart Lane Skirmish Night
remagen_offensive_ger Remagen REMAGEN Offensive Remagen Offensive Foggy GER
remagen_offensive_us Remagen REMAGEN Offensive Remagen Offensive Day US
remagen_warfare Remagen REMAGEN Warfare Remagen Warfare Day
remagen_warfare_night Remagen_N REMAGEN Warfare Remagen Warfare Night
SMDM_S_1944_Day_P_Skirmish DEV_M_SKM ST MARIE DU MONT Skirmish St. Marie Du Mont Skirmish Day
SMDM_S_1944_Rain_P_Skirmish DEV_M_Rain_SKM ST MARIE DU MONT Skirmish St. Marie Du Mont Skirmish Rain
SMDM_S_1944_Night_P_Skirmish DEV_M_Night_SKM ST MARIE DU MONT Skirmish St. Marie Du Mont Skirmish Night
SME_S_1944_Day_P_Skirmish DEV_I_DAY_SKM SAINTE-MÈRE-ÉGLISE Skirmish St. Mere Eglise Warfare Day
SME_S_1944_Morning_P_Skirmish DEV_I_MORNING_SKM SAINTE-MÈRE-ÉGLISE Skirmish St. Mere Eglise Warfare Dawn
SME_S_1944_Night_P_Skirmish DEV_I_NIGHT_SKM SAINTE-MÈRE-ÉGLISE Skirmish St. Mere Eglise Warfare Night
stalingrad_offensive_ger Stalin STALINGRAD Offensive Stalingrad Offensive Day GER
stalingrad_offensive_rus Stalin STALINGRAD Offensive Stalingrad Offensive Day RUS
stalingrad_warfare Stalin STALINGRAD Warfare Stalingrad Warfare Day
stalingrad_warfare_night Stalin_N STALINGRAD Warfare Stalingrad Warfare Night
stmariedumont_off_ger StMarie ST MARIE DU MONT OFFENSIVE St. Marie Du Mont Offensive Day GER
stmariedumont_off_us StMarie ST MARIE DU MONT OFFENSIVE St. Marie Du Mont Offensive Day US
stmariedumont_warfare StMarie ST MARIE DU MONT Warfare St. Marie Du Mont Warfare Day
stmariedumont_warfare_night StMarie_N ST MARIE DU MONT Warfare St. Marie Du Mont Warfare Night
stmereeglise_offensive_ger SME SAINTE-MÈRE-ÉGLISE Offensive St. Mere Eglise Offensive Dawn GER
stmereeglise_offensive_us SME SAINTE-MÈRE-ÉGLISE Offensive St. Mere Eglise Offensive Day US
stmereeglise_warfare SME SAINTE-MÈRE-ÉGLISE Warfare St. Mere Eglise Warfare Day
stmereeglise_warfare_night SME_N SAINTE-MÈRE-ÉGLISE Warfare St. Mere Eglise Warfare Night
tobruk_offensiveger_day DEV_O TOBRUK Offensive Tobruk Offensive Day DAK
tobruk_offensiveger_morning DEV_O_Morning TOBRUK Offensive Tobruk Offensive Dawn DAK
tobruk_offensiveger_dusk DEV_O_Dusk TOBRUK Offensive Tobruk Offensive Dusk DAK
tobruk_offensivebritish_day DEV_O TOBRUK Offensive Tobruk Offensive Day B8A
tobruk_offensivebritish_morning DEV_O_Morning TOBRUK Offensive Tobruk Offensive Dawn B8A
tobruk_offensivebritish_dusk DEV_O_Dusk TOBRUK Offensive Tobruk Offensive Dusk B8A
tobruk_skirmish_day DEV_O_DAY_SKM TOBRUK Skirmish Tobruk Skirmish Day
tobruk_skirmish_morning DEV_O_MORNING_SKM TOBRUK Skirmish Tobruk Skirmish Dawn
tobruk_skirmish_dusk DEV_O_DUSK_SKM TOBRUK Skirmish Tobruk Skirmish Dusk
tobruk_warfare_day DEV_O TOBRUK Warfare Tobruk Warfare Day
tobruk_warfare_morning DEV_O_Morning TOBRUK Warfare Tobruk Warfare Dawn
tobruk_warfare_dusk DEV_O_Dusk TOBRUK Warfare Tobruk Warfare Dusk
utahbeach_offensive_ger Utah UTAH BEACH Offensive Utah Beach Offensive Day GER
utahbeach_offensive_us Utah UTAH BEACH Offensive Utah Beach Offensive Day US
utahbeach_warfare Utah UTAH BEACH Warfare Utah Beach Warfare Day
utahbeach_warfare_night Utah_N UTAH BEACH Warfare Utah Beach Warfare Night

* Appears in MATCH START and MATCH ENDED logs.
** Lowercase in Get Map and Get Gamestate outputs.
*** Only in PTEs.

Available Weapons

NOTE: The British melee weapon uses an "En Dash" (–) instead of a hyphen (-).

Firearms

Category United States (US) Germany (GER) Soviet Union (RUS) Great Britain (GB)
Submachine Guns M1A1 THOMPSON, M3 GREASE GUN MP40 PPSH 41, PPSH 41 W/DRUM Sten Gun Mk.II, Sten Gun Mk.V, Lanchester, M1928A1 THOMPSON
Semi-Auto Rifles M1 GARAND, M1 CARBINE GEWEHR 43 SVT40
Bolt-Action Rifles KARABINER 98K MOSIN NAGANT 1891, MOSIN NAGANT 91/30, MOSIN NAGANT M38 SMLE No.1 Mk III, Rifle No.4 Mk I, Rifle No.5 Mk I
Assault Rifles M1918A2 BAR STG44, FG42 Bren Gun
Shotguns M97 TRENCH GUN
Machine Guns BROWNING M1919 MG34, MG42 DP-27 Lewis Gun
Sniper Rifles M1919 SPRINGFIELD KARABINER 98K x8, FG42 x4 SCOPED MOSIN NAGANT 91/30, SCOPED SVT40 Lee-Enfield Pattern 1914 Sniper, Rifle No.4 Mk I Sniper
Pistols COLT M1911 WALTHER P38, LUGER P08 NAGANT M1895, TOKAREV TT33 Webley MK VI
Flamethrowers M2 FLAMETHROWER FLAMMENWERFER 41 FLAMETHROWER
Melee Weapons M3 KNIFE FELDSPATEN MPL-50 SPADE Fairbairn–Sykes
Grenades MK2 GRENADE M24 STIELHANDGRANATE, M43 STIELHANDGRANATE RG-42 GRENADE, MOLOTOV Mills Bomb, No.82 Grenade
Satchel Charges SATCHEL SATCHEL SATCHEL CHARGE Satchel
Anti-Personnel Mines M2 AP MINE S-MINE POMZ AP MINE A.P. Shrapnel Mine Mk II
Anti-Tank Mines M1A1 AT MINE TELLERMINE 43 TM-35 AT MINE A.T. Mine G.S. Mk V
Anti-Tank Rifles BAZOOKA PANZERSCHRECK PTRS-41, BAZOOKA PIAT, Boys Anti-tank Rifle
Flare Guns FLARE GUN FLARE GUN FLARE GUN No.2 Mk 5 Flare Pistol

Deployables

Category United States (US) Germany (GER) Soviet Union (RUS) Great Britain (GB)
Artillery Guns 155MM HOWITZER [M114] 150MM HOWITZER [sFH 18] 122MM HOWITZER [M1938 (M-30)] QF 25-POUNDER [QF 25-Pounder]
Anti-Tank Guns 57MM CANNON [M1 57mm] 75MM CANNON [PAK 40] 57MM CANNON [ZiS-2] QF 6-POUNDER [QF 6-Pounder]

Vehicles (Roadkills)

Category United States (US) Germany (GER) Soviet Union (RUS) Great Britain (GB)
Recon Vehicles M8 Greyhound Sd.Kfz.234 Puma BA-10 Daimler
Light Tanks Stuart M5A1 Sd.Kfz.121 Luchs T70 Tetrarch, M3 Stuart Honey
Medium Tanks Sherman M4A3(75)W Sd.Kfz.161 Panzer IV T34/76 Cromwell, Crusader Mk.III
Heavy Tanks Sherman M4A3E2, Sherman M4A3E2(76) Sd.Kfz.181 Tiger 1, Sd.Kfz.171 Panther IS-1 Firefly, Churchill Mk.III, Churchill Mk.VII
Half-tracks M3 Half-track Sd.Kfz 251 Half-track M3 Half-track M3 Half-track
Trucks GMC CCKW 353 (Transport), GMC CCKW 353 (Supply) Opel Blitz (Transport), Opel Blitz (Supply) ZIS-5 (Transport), ZIS-5 (Supply) Bedford OYD (Transport), Bedford OYD (Supply)
Jeeps Jeep Willys Kubelwagen GAZ-67 Jeep Willys

Vehicles (Armament)

NOTE: If a vehicle is destroyed, post-destruction kills omit the vehicle name (e.g., COAXIAL M1919 [M8 Greyhound] becomes COAXIAL M1919).

M8 Greyhound

Recon Vehicle - United States (US)

Category Name
Main Cannon M6 37mm [M8 Greyhound]
Coaxial Machine Gun COAXIAL M1919 [M8 Greyhound]

Stuart M5A1

Light Tank - United States (US)

Category Name
Main Cannon 37MM CANNON [Stuart M5A1]
Coaxial Machine Gun COAXIAL M1919 [Stuart M5A1]
Hull Machine Gun HULL M1919 [Stuart M5A1]

Sherman M4A3(75)W

Medium Tank - United States (US)

Category Name
Main Cannon 75MM CANNON [Sherman M4A3(75)W]
Coaxial Machine Gun COAXIAL M1919 [Sherman M4A3(75)W]
Hull Machine Gun HULL M1919 [Sherman M4A3(75)W]

Sherman M4A3E2 "75mm"

Heavy Tank - United States (US)

Category Name
Main Cannon 75MM M3 GUN [Sherman M4A3E2]
Coaxial Machine Gun COAXIAL M1919 [Sherman M4A3E2]
Hull Machine Gun HULL M1919 [Sherman M4A3E2]

Sherman M4A3E2 "76mm"

Heavy Tank - United States (US)

Category Name
Main Cannon 76MM M1 GUN [Sherman M4A3E2(76)]
Coaxial Machine Gun COAXIAL M1919 [Sherman M4A3E2(76)]
Hull Machine Gun HULL M1919 [Sherman M4A3E2(76)]

M3 Half-track

Half-track - United States (US), Soviet Union (RUS) & Great Britain (GB)

Category Name
Mounted Machine Gun M2 Browning [M3 Half-track]

Sd.Kfz.234 Puma

Recon Vehicle - Germany (GER)

Category Name
Main Cannon 50mm KwK 39/1 [Sd.Kfz.234 Puma]
Coaxial Machine Gun COAXIAL MG34 [Sd.Kfz.234 Puma]

Sd.Kfz.121 Luchs

Light Tank - Germany (GER)

Category Name
Main Cannon 20MM KWK 30 [Sd.Kfz.121 Luchs]
Coaxial Machine Gun COAXIAL MG34 [Sd.Kfz.121 Luchs]

Sd.Kfz.161 Panzer IV

Medium Tank - Germany (GER)

Category Name
Main Cannon 75MM CANNON [Sd.Kfz.161 Panzer IV]
Coaxial Machine Gun COAXIAL MG34 [Sd.Kfz.161 Panzer IV]
Hull Machine Gun HULL MG34 [Sd.Kfz.161 Panzer IV]

Sd.Kfz.171 Panther

Heavy Tank - Germany (GER)

Category Name
Main Cannon 75MM CANNON [Sd.Kfz.171 Panther]
Coaxial Machine Gun COAXIAL MG34 [Sd.Kfz.171 Panther]
Hull Machine Gun HULL MG34 [Sd.Kfz.171 Panther]

Sd.Kfz.181 Tiger 1

Heavy Tank - Germany (GER)

Category Name
Main Cannon 88 KWK 36 L/56 [Sd.Kfz.181 Tiger 1]
Coaxial Machine Gun COAXIAL MG34 [Sd.Kfz.181 Tiger 1]
Hull Machine Gun HULL MG34 [Sd.Kfz.181 Tiger 1]

Sd.Kfz 251 Half-track

Half-track - Germany (GER)

Category Name
Mounted Machine Gun MG 42 [Sd.Kfz 251 Half-track]

BA-10

Recon Vehicle - Soviet Union (RUS)

Category Name
Main Cannon 19-K 45MM [BA-10]
Coaxial Machine Gun COAXIAL DT [BA-10]

T70

Light Tank - Soviet Union (RUS)

Category Name
Main Cannon 45MM M1937 [T70]
Coaxial Machine Gun COAXIAL DT [T70]

T34/76

Medium Tank - Soviet Union (RUS)

Category Name
Main Cannon 76MM ZiS-5 [T34/76]
Coaxial Machine Gun COAXIAL DT [T34/76]
Hull Machine Gun HULL DT [T34/76]

IS-1

Heavy Tank - Soviet Union (RUS)

Category Name
Main Cannon D-5T 85MM [IS-1]
Coaxial Machine Gun COAXIAL DT [IS-1]
Hull Machine Gun HULL DT [IS-1]

Daimler

Recon Vehicle - Great Britain (GB)

Category Name
Main Cannon QF 2-POUNDER [Daimler]
Coaxial Machine Gun COAXIAL BESA [Daimler]

Tetrarch

Light Tank - Great Britain (GB)

Category Name
Main Cannon QF 2-POUNDER [Tetrarch]
Coaxial Machine Gun COAXIAL BESA [Tetrarch]

M3 Stuart Honey

Light Tank - Great Britain (GB)

Category Name
Main Cannon 37MM CANNON [M3 Stuart Honey]
Coaxial Machine Gun COAXIAL M1919 [M3 Stuart Honey]
Hull Machine Gun HULL M1919 [M3 Stuart Honey]

Cromwell

Medium Tank - Great Britain (GB)

Category Name
Main Cannon OQF 75MM [Cromwell]
Coaxial Machine Gun COAXIAL BESA [Cromwell]
Hull Machine Gun HULL BESA [Cromwell]

Crusader Mk.III

Medium Tank - Great Britain (GB)

Category Name
Main Cannon OQF 57MM [Crusader Mk.III]
Coaxial Machine Gun COAXIAL BESA [Crusader Mk.III]

Firefly

Heavy Tank - Great Britain (GB)

Category Name
Main Cannon QF 17-POUNDER [Firefly]
Coaxial Machine Gun COAXIAL M1919 [Firefly]

Churchill Mk.III

Heavy Tank - Great Britain (GB)

Category Name
Main Cannon OQF 57MM [Churchill Mk.III]
Coaxial Machine Gun COAXIAL BESA 7.92mm [Churchill Mk.III]
Hull Machine Gun HULL BESA 7.92mm [Churchill Mk.III]

Churchill Mk.VII

Heavy Tank - Great Britain (GB)

Category Name
Main Cannon OQF 57MM [Churchill Mk.VII]
Coaxial Machine Gun COAXIAL BESA 7.92mm [Churchill Mk.VII]
Hull Machine Gun HULL BESA 7.92mm [Churchill Mk.VII]

Commander Abilities

Names are the same across factions.

Category Name
Bombing Run BOMBING RUN
Strafing Run STRAFING RUN
Precision Strike PRECISION STRIKE
Katyusha Barrage Unknown

* Kills with Katyusha Barrage show as "Unknown".

Removed Weapons

Name Comment
Lee-Enfield Pattern 1914 Removed in U14.5 for SMLE No.1 Mk III

Bugged Weapon Names

Name Comment
FireSpot Rarely seen when a RUS Assault player kills with a Molotov. Cause of "FireSpot" instead of "MOLOTOV" is unknown, needs testing.
UNKNOWN Seen when the killer’s reference is lost, e.g., a bleeding player gives up after their attacker dies or disconnects.
⚠️ **GitHub.com Fallback** ⚠️