Skip to content

Core Keeper Dedicated Server Setup: Game ID, Direct Connect, Arguments and Ports (1.3)

Set up a Core Keeper dedicated server: SteamCMD app 1963720, Game ID vs direct connections, every launch argument, GameInfo.txt and what our panel sets.

Updated October 28, 2026
Core Keeper

A Core Keeper dedicated server is the free Core Keeper Dedicated Server tool (Steam app 1963720, anonymous SteamCMD login), with native Windows and Linux builds. Start it with -batchmode. Without a -port, players join with the Game ID over Steam's relay, which works for Steam players only. Add -port and the server takes direct IP connections, which lets Epic, GOG and Microsoft Store players join too. Everything the server decides on start-up, including the Game ID and the join password, ends up in GameInfo.txt next to the executable.

Checked against Core Keeper 1.3.0.6 (hotfix of 9 October 2026, Riders of the Underground)

Sources: the README.txt, ARGUMENTS.txt and _launch.sh that ship inside the current server depots, Pugstorm's patch notes on Steam, and our panel's Core Keeper egg.

Two Ways Players Join

Game ID (default) Direct connection
How to turn it on Nothing to set Start with -port <port> and open that port
Who can join Steam players Steam, Epic Games Store, GOG and Microsoft Store players
What players enter The Game ID IP, port and password (Steam players can still use the Game ID)
Port forwarding Not needed. Traffic goes over the Steam relay network Needed

Pugstorm added cross-store direct connections in patch 1.1.2.3 (August 2025). Consoles aren't included: patch 1.1.2.4 notes that "the game currently does not support crossplay between PC and consoles". The README also warns that with direct connections "your servers IP will be shared with other players, as will the players IP be shared with the server". To accept direct connections from one store only, add -allowonlyplatform Steam (or Epic, Microsoft, GOG).

Installing and Starting the Server

steamcmd +login anonymous +app_update 1963720 +quit
bash

The server is small: Steam lists the Windows depot at about 0.42 GB and the Linux one at about 0.48 GB (28 October 2026).

Windows: start the launch script that ships with the server, or run CoreKeeperServer.exe -batchmode with your arguments.

Linux: run _launch.sh. It installs xvfb and libxi6 if they're missing, starts a virtual display, and runs ./CoreKeeperServer -batchmode -logfile CoreKeeperServerLog.txt with your arguments. There's a reason for the virtual display: Pugstorm says you need -batchmode "(NOT -nographics since part of the procedural generation is done on the GPU)", and that on Linux -batchmode "doesn't seem to work". The server therefore runs inside Xvfb on a headless machine.

Older versions stay available as Steam branches for worlds that aren't ready to update: 1.2.1.5, 1.2.0.7, 1.1.2.10 and 1.1.2.0 (add -beta <branch> to the SteamCMD line). Server and players must be on the same version.

Launch Arguments

From ARGUMENTS.txt in the 1.3 server files. Most of these can also be set in ServerConfig.json in the server's data path. -port and -ip work only on the command line.

Argument What it does Default
-world 0–29 Which world slot to load. Different numbers give separate saves 0
-worldname "Name" Name players see
-worldseed "text" Seed. Applies only when the world is first created Random
-worldmode Normal / Hard / Creative / Casual Game mode. Switching between Creative and the others after creation "is not supported" Normal
-maxplayers 16 Player cap. Pugstorm warns a higher count "may require more server resources or make the session unstable" 8
-gameid <id> Fixed Game ID, 15 to 28 letters and digits, without Y, y, x, 0 or O Random
-password "text" Password for direct connections, up to 28 characters. Not used with the Game ID Random
-port 7778 Turns on direct connections on that port Off (Steam relay)
-allowonlyplatform Steam Direct connections from one store only All PC stores
-datapath <folder> Where saves and ServerConfig.json live A DedicatedServer folder in the default Core Keeper save location
-season Halloween Forces a seasonal event (None turns events off) From the system date
-activatecontent <bundle> / -activateallcontent Turns on optional content bundles. "There is no way to undo this" Off

Where the data path is by default: on Windows, %USERPROFILE%\AppData\LocalLow\Pugstorm\Core Keeper\DedicatedServer\. On Linux, Unity puts it under the user's ~/.config/unity3d/Pugstorm/Core Keeper/DedicatedServer/.

Reading GameInfo.txt

Each start rewrites GameInfo.txt next to the executable. It holds the Game ID and, with direct connections on, the local and public IPs, the port, the password and which platforms may join. It also warns about any argument with an invalid value or one that was ignored. Its last line is a ready-made IP;PORT;;PASSWORD string. Paste it into the IP field of Join Game Via IP and the game splits it into the right boxes.

If there's no GameInfo.txt at all, the server failed during set-up. Check CoreKeeperServerLog.txt in the same folder.

Using Your Own World Settings

The server has no world-settings UI. To use custom world generation:

  1. Create a world in the normal game with the settings you want.
  2. In that save's folder, copy the matching file from worldgenparams into a worldgenparams folder in the server's data path (create it if needed).
  3. Rename the file to the world index you'll use, and start a new world on that index.
  4. For the exact same map, also use the same seed.

Admins, Kicks and Bans

Admin rights are handed out in game: an admin can make other players admins, ban players and regenerate the Game ID from the pause menu, and kick players on dedicated servers. A world admin can also turn PvP on or off and use guest mode, where non-admin players can look around but can't change the world. Pugstorm's server README doesn't say how the first admin is picked on a dedicated server, so check the pause menu on your first join.

Core Keeper has no admin console for server owners. See Core Keeper Console Commands and Cheats: What Exists in 1.3 (and What Doesn't) for what exists instead.

Running It on GameServerKings

On a GameServerKings Core Keeper server the panel runs the native Linux binary under Xvfb and builds the start line from the Startup tab:

Startup field Argument Notes
World Index -world 0 by default
World Name -worldname 3 to 100 characters
World Seed -worldseed The panel accepts whole numbers only. 0 is the default
Game ID -gameid Optional. The panel asks for 28 characters. Leave it empty for a random one
Max Players -maxplayers Our default is 100, well above the game's 8. Lower it if the world stutters
World Mode -worldmode Takes 0 or 1. Leave it at 0 (Normal). For Hard, Creative or Casual, open a ticket before you create the world

What that means in practice:

  • Direct connections are always on. The start line passes -port with your allocated port, so players from every PC store can join with IP, port and password, and Steam players can still use the Game ID.
  • The join password is generated by the server. There's no password field. Open GameInfo.txt in Files to get the Game ID, password and IP;PORT;;PASSWORD string to give your friends.
  • Your world and ServerConfig.json are in the data-path folder under .config/unity3d/Pugstorm/Core Keeper/DedicatedServer/ in Files.
  • Auto Update is on by default, so a restart takes the current version.
  • Mods go in CoreKeeperServer_Data/StreamingAssets/Mods/ and need Linux asset bundles. Core Keeper mods covers it step by step.

Common Problems

  • Friends on Epic, GOG or the Microsoft Store can't find the server. They can't use the Game ID. They need direct connections: the IP, port and password from GameInfo.txt.
  • Console players can't join. That's expected. Core Keeper has no PC-to-console crossplay.
  • Setting a value in ServerConfig.json does nothing. -port and -ip are never read from the file, and anything passed on the start line is already set there. Check GameInfo.txt for "invalid" or "ignored" warnings.
  • The world isn't the one you made at home. World-gen parameters and seed only apply when a world is first created. Copy the worldgenparams file and seed, then start a fresh world index.
  • A self-hosted Linux server won't start. Run it through _launch.sh, which sets up Xvfb and the libraries it needs. Don't use -nographics.

FAQ

Is the Core Keeper dedicated server free?

Yes. App 1963720 downloads with an anonymous SteamCMD login. Players still need the game.

Can Xbox, PlayStation or Switch players join a Core Keeper dedicated server?

No. Dedicated servers take PC players only (Steam, Epic, GOG and Microsoft Store, the last three through direct connections). Pugstorm says the game "does not support crossplay between PC and consoles".

How do I join my Core Keeper server by IP?

The server needs -port (ours always has it). Then open Join Game Via IP and paste the IP;PORT;;PASSWORD line from GameInfo.txt.

How many players can a Core Keeper server have?

The default is 8. -maxplayers raises it, and Pugstorm warns that more players "may require more server resources or make the session unstable".

Can I move my single-player world to a dedicated server?

Pugstorm's README only documents copying a world's generation settings (worldgenparams) and seed, not moving the world itself. If you need an existing world moved onto your GSK server, open a ticket and we'll do it with you.


Made with 💜 by GameServerKings

Need a Core Keeper server?

Deploy an instantly-provisioned Core Keeper server on high-clock hardware — DDoS protected, no contracts, cancel anytime.

From $7.80 /month