Operation: Harsh Doorstop

Operation: Harsh Doorstop

Not enough ratings
EZ Dedicated Server Quickstart Guide
By HATE AGENT
How to quickly get a Dedicated Server running for Operation Harsh Doorstop.
   
Award
Favorite
Favorited
Unfavorite
Quick and dirty
Scroll past this first section if you need explanations.

GOTTA GO FAST VERSION:

PORTS:
7777 UDP INBOUND
7778 UDP OUTBOUND
7779 TCP INBOUND (RCON, optional)
27005 UDP INBOUND

STEPS:
1. ADD PORT RULES TO WINDOWS FIREWALL ON YOUR PC*
2. ADD PORT RULES TO ROUTER/GATEWAY FIREWALL*
3. INSTALL OHD DEDICATED SERVER THROUGH STEAM
4. RUN OPERATIONHARSHDOORSTOPSERVER.BAT, CLOSE IT, RUN AGAIN (DO NOT USE STEAM TO RUN)
5. OPEN THE GAME AND CHECK THE SERVER BROWSER, SORT BY PING

*IF YOUR ISP IS GARBAGE THE PORTS WILL STILL BE BLOCKED ON THEIR END.

FILES AND LOCATIONS
INSTALL FOLDER
\Program Files (x86)\Steam\steamapps\common\Harsh Doorstop Dedicated Server\
BAT EXECUTABLE
\Program Files (x86)\Steam\steamapps\common\Harsh Doorstop Dedicated Server\HarshDoorstopServer.bat
CFG/INI
\Program Files (x86)\Steam\steamapps\common\Harsh Doorstop Dedicated Server\HarshDoorstop\Saved\Config\WindowsServer\
Admins.cfg - Just the SteamID number, CREATE THIS YOURSELF
Game.ini - Doesn't appear (isn't automatically created) or work (if I create it manually) for me
Engine.ini - Doesn't appear (isn't automatically created) or work (if I create it manually) for me
GameUserSettings.ini - Appears for me but resets every time server runs
Mapcycle.cfg - Just the map names, CREATE THIS YOURSELF

MODS:
\Program Files (x86)\Steam\steamapps\common\Harsh Doorstop Dedicated Server\HarshDoorstop\Mods\MODDIRECTORY\
Call mods in the .bat file with
?game=/MODDIRECTORY/core/BLUEPRINTNAME.BLUEPRINTEXTENSION_C
Call custom factions with
?BluForFaction=BP_HDFactionInfo_FACTIONNAME?OpForFaction=BP_HDFactionInfo_FACTIONNAME

Change maps manually with the "servertravel" command in console. Using "Open" will kick connected players.

RIGHT NOW ANY OPTIONS OR CFG JUST DO IT IN THE .BAT SINCE THAT'S ALL THAT WORKED FOR ME.
/GOFAST
Loooooong version

Long version:
Make sure you have port forwarding enabled. You will need to enable it in TWO places:
1. Windows Firewall Rules on your PC
2. Your home router/gateway.

The ports:
7777 UDP INBOUND
7778 UDP OUTBOUND
7779 TCP INBOUND (RCON, optional)
27005 UDP INBOUND

1. Windows Firewall
Go to Inbound rules, add New Rule, make sure you have the right port numbers and protocol.
Go to Outbound rules, do the same thing.

To avoid screw-ups, make a separate rule for each port (you should have 3 new inbound rules and 1 new outbound rule). You can combine 7777 and 27005 into one rule with the correct use of a comma, and it works fine, but if you're unsure just make them separate.

2. Your home router.
Check your wifi IP, your Gateway IP will usually be your admin IP as well (often 192.168.1.1) admin name and password is usually on the bottom of your router, you can search for your router/gateway model number and defaults as well. If your ISP is garbage you may need to call them for the admin/password information for your router.

Once you get admin access to your gateway, you'll need to find the firewall settings and enable port forwarding. The way to do this is entirely dependent on the manufacturer and model of the device.

Most of the time you can't just open the ports "in general," you have to forward them to a specific IP or Machine Address (MAC). This can get messy since MACs and IP assignments can change. Make sure the "Random Hardware Address" option for your PC's network adapter is disabled. Then, make sure you choose the computer you'll be running the server on in the router config settings.

You'll probably need documentation from your router manufacturer, and good luck with the crap documentation and Engrish. Also, there are probably undocumented bugs because consumer networking hardware is usually garbage. Even DMZ mode can be completely bugged.

Ways to check that your ports are open:
https://www.raymond.cc/blog/test-open-port-forwarding-for-your-router-or-computer/
https://www.wikihow.com/Check-if-a-Port-Is-Opened

NOTE: Your ISP may have a THIRD firewall on their end which blocks the ports because they are greedy and generally awful people who almost certainly need several firm slaps in the face out of principle alone. They will likely tell you that you need a "business" account to get the ports opened. Bypassing this is outside the scope of this guide, but it is possible.

Pictured: Typical ISP employees

SECOND:
Install OHD dedicated server through Steam. It's listed under "Tools" and not "Games." It takes about 2gb of hard drive space.

Do NOT run it in Steam, ever. Just don't bother, I haven't managed to get it working yet this way and there's no point, because...

Go to your Steam FOLDER, usually at
\Program Files (x86)\Steam\Steamapps\Common\Harsh Doorstop Dedicated Server
(If you can't find it, go to the OHD dedicated server entry on Steam, right click, go to properties, then "Manage files.")

IMPORTANT:
HarshDoorStopServer.bat
is the MOST IMPORTANT file to start the server.
This is an editable file which calls the Executable file and options for the server.
Make a backup copy of this .bat file in the same directory. This will come in handy if you mess up your options somehow.

Just run the file once (double click) and it should open a terminal window and a bunch of text will scroll by until it says "server hibernating." Close it out. You've just successfully run the server once. That's it, the server is just that one window. If you close that window, you shut the server down. Leave it open (or minimized) when you want it to actually be running.

You can edit
HarshDoorStopServer.bat
with notepad.
Open it up and check the options. Changing options should be obvious, but don't make any big changes until you've at least successfully run the server a few times.

Change the server name to something you want, if you put Password="12345" in between the other options with question marks ?MaxPlayers=24?Password="12345"? then it will set that as a password for your server.

I'll expand this guide later, but this should be enough for you to get your server off the ground, and get it listed in the server browser.

Once the server is running, you'll get the terminal window again with the hibernating message. Go to steam, open up Harsh Doorstop, and check the multiplayer server list. Sort by ping and your server should be there at the top.

Final notes:
My version of the dedicated server does NOT autocreate a game.ini file, and it also does not READ a manually created game.ini file. Just put whatever options you want in the .bat for now. I'll update this guide as I figure things out.

The Admin.cfg file DOES work but you must create it manually. Create the file and put your SteamID number in it, and you won't need to set up RCON for the server. Send commands to the server in console with "admin COMMANDNAME" e.g. "admin Bot.autofill on" "admin addbluforbots 8"

Mods:
Create a "\Mods\" directory in
\Program Files (x86)\Steam\Steamapps\Common\Harsh Doorstop Dedicated Server\Harsh Doorstop\
(the same folder as Binaries, Content and Saved).

Put your mod folders inside the \Mods\ directory.
\Program Files (x86)\Steam\Steamapps\Common\Harsh Doorstop Dedicated Server\HarshDoorstop\Mods\MODFOLDER\

Any mods you've installed for your client, you can find at
\Program Files (x86)\Steam\steamapps\workshop\content\736590
There are folders there with strange numbers.
Open up the strange folder and you'll see a folder with the mod name.

For example, troopers' path is
\Program Files (x86)\Steam\steamapps\workshop\content\736590\2937335247\TroopersWIP
Copy the named mod folder into the \Harsh Doorstop Dedicated Server\HarshDoorstop\Mods\ directory. So it should look like
\Program Files (x86)\Steam\Steamapps\Common\Harsh Doorstop Dedicated Server\HarshDoorstop\Mods\TroopersWIP\

You can then usually call the mod in the .bat options with

?game=/MODFOLDER/Core/BP_HDGame_AdvanceAndSecure_MODNAME.BP_HDGame_AdvanceAndSecure_MODNAME_C

Call modded factions with
?BluForFaction=BP_HDFactionInfo_AFACTION?OpForFaction=BP_HDFactionInfo_BFACTION
Replace "AFACTION" and "BFACTION" with the actual faction names.

Note: The mod folder doesn't ACTUALLY have a /Core/ folder. That directory structure is INSIDE the .pak file of the mod itself, which you won't be able to see. Calling the custom game mode can be complicated, and mod authors should know best which blueprint file is necessary to call in order to get their custom stuff loaded. IF IN DOUBT, ASK MOD AUTHORS.

Note that this uses forward slashes (*NIX format) for directories and not backslashes (MSFT format).

This guide should at least help you get off the ground and understand the basic structure of the Dedicated Server.

Good luck.
13 Comments
PurgePapa Jun 8 @ 7:32am 
This is most ignorant. Why is this game forcing you to pay to talk and play with your friends??? Ive never in my life played a paid or free game that didn't offer friendly play with friend invites and squads. I am being forced to play with a buncha strangers and not my traditional 15 year gamer clan. I refuse to play a game that forces paid friendships. Ant the firewall exceptions you have to add to run this free dedicated server impose serious security risks. This game is now history to me and the entire Purge clan.
Ϻiῌ Mitchoro the Meat Hashira Jun 12, 2023 @ 11:23pm 
adding bots isnt working for me
bluetvhd Mar 21, 2023 @ 12:53pm 
how the do i open console
HATE AGENT  [author] Mar 18, 2023 @ 2:38pm 
RCON should be listening on 7779.
You have the server misconfigured.
if you have a game.ini, delete it, and put the following in your .bat
[code]@echo off

start HarshDoorstop\Binaries\Win64\HarshDoorstopServer-Win64-Shipping.exe AAS-TestMap?MaxPlayers=4? -log -SteamServerName="TESTSERVER" %*[/code]
That's as barebones as it gets. Once you get it up and running with these options, then build out from there.
StMa Mar 18, 2023 @ 2:23pm 
And yet I can't find the server
StMa Mar 18, 2023 @ 2:23pm 
the weird part is, there is no error message
StMa Mar 18, 2023 @ 2:22pm 
now it says LogRCON: RCON server listening on 0.0.0.0:7777
StMa Mar 18, 2023 @ 2:20pm 
aight, I did, the site says "no answer" (out of "closed" or "open") well that's great
HATE AGENT  [author] Mar 18, 2023 @ 1:48pm 
I've never messed with IPv6 but if you can't do it at the router level you'll probably need to get in touch with your ISP.
I looked up the issue and from what I've read it's just a matter of configuring firewall rules for IPv6 with no forwarding needed. Other people said they had to contact their ISP to get the ports made available.Also, many games simply don't support IPv6. Based on Unreal Engine notes, IPv4 and IPv6 have been bundled together since UE 4.21. Since Harsh Doorstop is based on UE 4.25, it should support IPv6, and the problem will be with either your windows firewall, router or ISP. There are tools to check if your ports are open for IPv6 as well, just do a web search for "IPv6 port checker."