Built-in RCON

Startup Command Builder · Operation: Harsh Doorstop

Free moddable tactical shooter · Shooter / Tactical / Mod sandbox

Player tools indexed: 5 Admin consoles: 7

Options are joined with question marks (that is AMP delimiter), the leading HarshDoorstop positional argument can be switched between the two upstream camps (D3), the bind IP is emitted only when a concrete address is given and its casing is selectable (D2, never hardcoded to 0.0.0.0), RCON is off by default and emits -EnableRCON with a placeholder password when enabled (D4), map and faction dropdowns share one source with free input, blank ticket counts are omitted (they are per-map, so no global default), and there are gates at 33 and 65 players

Player tools (5)

Instant interactive calculations and recipe planners

Two routes: search by name in the in-game Multiplayer browser, or add the address under Steam View - Game Servers - Favorites. Whether Favorites wants the query port or the game port is answered both ways by the hosting docs themselves (D8), so this site emits both candidates with their sources instead of guessing. A freshly started server needs a few minutes before it is listed

#query port for favorites#both candidates shown
Open tool →

Four symptom branches: running but unlisted (query port vs the panel allocation, startup not finished, client and server on different build tracks), visible but cannot join (the unsigned-mod signature SteamUGCManager_Failed_LoadWorkshopItem, non-ASCII server names), RCON will not connect (not enabled, the 7778 vs 7779 split, the example port 8000 being a demo value, Source RCON over TCP), config changes not applying (launch parameters override Game.ini, the config folder only appears after one full start)

#four symptom branches#two build tracks
Open tool →

Four appids (game 736590, stable server 950900, closed-beta client 1307180, closed-beta server 1316480), ten playable maps (the AMP enum and the LinuxGSM MapCycle template agree name by name, plus AlDhakir and Jaziira which only the asset dump lists), fourteen faction blueprint names (including the official spelling BP_OOFactionInfo_Wehrmact, sic), ten upstream links with tiers, and the ecosystem RCON client library

#four appids#10 maps, 14 factions
Open tool →

The server does not download Workshop content on its own: fetch it yourself (from steamapps/workshop/content/736590/<id> after subscribing, or via workshop_download_item), upload it to HarshDoorstop/Mods/<MOD>, then select the map/faction/gamemode in the launch parameters to actually enable it; a leftover reference after removal stops the server from starting. Includes the counter-intuitive fact that the default map AAS-TestMap itself comes from Workshop item steam.90201159165580288

#no auto-download#Mods folder
Open tool →

Pure arithmetic over WarmupTime / RoundTimeLimit / TimeBetweenMatches / RoundScoreLimit: how long one match is, how long a full rotation takes, and the total for N matches. The template defaults RoundTimeLimit and RoundScoreLimit to 0, which this site reads as unlimited while stating plainly that the meaning of 0 is not officially documented (interpreted per UE4 convention, unverified). Also previews MapCycle.cfg - one short map name per line, never ini array syntax (C2)

#zero reads as unlimited#MapCycle preview
Open tool →

Server admin and config generation (7)

Config files, startup scripts and command wizards for running a server

No dedicated-server hardware requirement was ever published (only client specs: 8 GB minimum, 16 GB recommended, which cannot be reused). The circulating four-tier RAM table names no hosting provider and cannot be traced, so this site lists it as an untraceable claim rather than adopting it as a spec. Every field is editable, blank means not counted rather than zero, and the maths is a reproducible base plus per-player times players

#no official specs#blank means not counted
Generate config →

Game 7777/UDP, query 27005/UDP, RCON 7779/TCP, plus the 7778/TCP that LinuxGSM uses (D1) - the ecosystem RCON client README states all four must be forwarded. AMP port table does not register the game port at all, which is why panels show only one port. Any cross-instance port collision refuses the whole plan instead of silently changing values

#four-port matrix#collision refuses all
Generate config →

Four platforms (ufw / firewalld / iptables / netsh). By default only the game and query UDP rules are emitted; both RCON ports are explicit opt-ins that come with a risk warning about handing the console to the internet plus an optional source IP/CIDR restriction. RCON is Source RCON over TCP, so no UDP rule is produced for it

#RCON opt-in#four platforms
Generate config →

Pick the stable track app_update 950900 (owning client 736590) or the development track app_update 1316480 (owning client 1307180, the closed beta); the development track comes with the executable rename and symlink steps verbatim from AMP updates.json because the two tracks ship different binary names. Optional Workshop download (IDs validated as digit strings). Backups emit copy commands only, preceded by a stop-the-server warning, and never a delete command

#two build tracks#backups never delete
Generate config →

Options are joined with question marks (that is AMP delimiter), the leading HarshDoorstop positional argument can be switched between the two upstream camps (D3), the bind IP is emitted only when a concrete address is given and its casing is selectable (D2, never hardcoded to 0.0.0.0), RCON is off by default and emits -EnableRCON with a placeholder password when enabled (D4), map and faction dropdowns share one source with free input, blank ticket counts are omitted (they are per-map, so no global default), and there are gates at 33 and 65 players

#question-mark options#credential placeholders
Generate config →

Eighteen keys across five Script sections, sourced primarily from the real file in the LinuxGSM official config-template repository, with the six RCON keys pinned by the Unreal Header Tool dump (whose uint16 and uint32 types give the validation ranges). Two same-named Password keys are told apart by section-qualified ids. Full file and diff fragment come from one value function, any violation refuses the whole output, credentials are always placeholders, and the paste precheck names eight issue classes reporting only len=

#five sections, 18 keys#section-qualified ids
Generate config →

RCON is standard Source RCON over TCP (proved by the client source packet format and the AMP description), so mcrcon-class tools work directly; it only listens with -EnableRCON or bEnabled=True. Commands are tiered: A for hits in the server dump, B+ for the hosting provider dedicated docs, C for single-source items marked unverified. The core rule is that the two entry points use opposite prefixes: the in-game console needs the admin prefix, an RCON client does not. The two camps on ban argument order are shown side by side (D15)

#Source RCON#dual entry prefixes
Generate config →

Operation: Harsh Doorstop Dedicated Server Install (SteamCMD)

SteamCMD appid 950900

sudo useradd -m -s /bin/bash steam
sudo apt update && sudo apt install -y steamcmd lib32gcc-s1
sudo -u steam -i \
  /usr/games/steamcmd +force_install_dir /opt/gameserver \
  +login anonymous +app_update 950900 validate +quit

https://operation-harsh-doorstop.fandom.com/wiki/Server_Install_Instructions

Operation: Harsh Doorstop Config file paths

  • HarshDoorstop/Saved/Config/LinuxServer/Game.ini
  • HarshDoorstop/Saved/Config/WindowsServer/Game.ini
  • HarshDoorstop/Saved/Config/LinuxServer/Engine.ini
  • HarshDoorstop/Saved/Config/LinuxServer/Admins.cfg
  • HarshDoorstop/Saved/Config/LinuxServer/Bans.cfg
  • HarshDoorstop/Saved/Config/LinuxServer/MapCycle.cfg
  • HarshDoorstop/Mods/
  • HarshDoorstop/Saved/Logs/

Server notes

The three-carrier precedence is the first thing to remember: launch parameters > Game.ini > runtime cvars. Panels pass variables as launch parameters, so editing a same-named entry in Game.ini on a panel server has no effect - that is not a bug. RCON is standard Source RCON over TCP (mcrcon-class tools work) but is off by default: it needs -EnableRCON or bEnabled=True under [/Script/RCON.RCONServerSystem] in Game.ini. The LinuxGSM default start parameters carry -RconPort but no -EnableRCON, so RCON may not be listening at all when started that way (D4, not machine-verified). Two port readings coexist: AMP and pelican use 7779, LinuxGSM uses 7778, and the ecosystem RCON client README asks for all four ports to be forwarded (D1); the 8000 in that library example is a demo value. Admins live in Admins.cfg (one SteamID64 per line, not shipped with the server, read at startup, renameable with -AdminList=FileName.cfg); rights granted at runtime with add / addid do not persist - the provider warns "Always add permanent admins to Admins.cfg as well". In game every admin command needs the admin prefix (admin status, admin kick ...) while an RCON client omits it, so the two entry points use opposite prefix rules. After editing the lists, RELOADSERVERCONFIG reloads Admins.cfg, Bans.cfg and MapCycle.cfg without a restart. Bans are written to Bans.cfg as <SteamID64>:<minutes> per line with 0 meaning permanent; unbanning is deleting that line and reloading. Both secrets need care: all three upstreams put the RCON password on the command line (-RCONPassword=), which on Linux is readable from the process list by every local user, so writing it into Game.ini with tight file permissions is safer; the player join password must not contain a question mark because that is the option delimiter (AMP verbatim). Maps and modes are chosen through the map name and ?game= in the launch parameters; mods must be downloaded yourself and uploaded to HarshDoorstop/Mods because the server never downloads Workshop content. There is no savegame, so backups cover only Saved/Config and Mods, and the server must be stopped first (it writes its config files on shutdown). The server has stable and development tracks, the client must be on the same track, and the development track ships different executable names requiring a rename or symlink.

FAQ

Which Operation: Harsh Doorstop server-admin tools are available?
We list 7 tools for Operation: Harsh Doorstop: Capacity & Resource Budget, Four-Port Map & Multi-instance, Firewall Rule Generator, SteamCMD Deploy & Two Build Tracks, Startup Command Builder, Game.ini Builder & Precheck, Source RCON & Command Tiers. All of them run straight in your browser.
Which ports does Operation: Harsh Doorstop need open?
Operation: Harsh Doorstop defaults to 7777/UDP, 27005/UDP, 7779/TCP, 7778/TCP. Use the actual instance configuration and allow only the listed protocols and ports. Check the host firewall, router forwarding and game visibility settings.
How do I install a dedicated Operation: Harsh Doorstop server?
Install it with SteamCMD — the dedicated server app id for Operation: Harsh Doorstop is 950900, so +app_update 950900 validate downloads or updates it. Config files usually live at HarshDoorstop/Saved/Config/LinuxServer/Game.ini, HarshDoorstop/Saved/Config/WindowsServer/Game.ini, HarshDoorstop/Saved/Config/LinuxServer/Engine.ini.
Do these tools cost anything or need installing?
No. Everything runs in the page: no install, no sign-up, no cost. Enter your values and the result appears instantly, and you can copy the generated configs and commands with one click.