---
title: "Core Keeper Mods: How to Install Them (and Run Them on a Dedicated Server)"
description: "Install Core Keeper mods from Steam Workshop or mod.io, then run them on a Linux dedicated server: the Mods folder, Linux builds and matching players."
url: "https://www.gameserverkings.com/knowledge-base/core-keeper/core-keeper-mods/"
category: "Core Keeper"
category_url: "https://www.gameserverkings.com/knowledge-base/core-keeper/"
published: "2026-09-28T03:33:04.692Z"
updated: "2026-09-28T03:33:04.692Z"
source_format: "markdown"
site: "GameServerKings"
---

# Core Keeper Mods: How to Install Them (and Run Them on a Dedicated Server)

Installing Core Keeper mods for yourself takes one click: subscribe on Steam Workshop or mod.io and restart the game. Getting the same mods onto a dedicated server is different. The server doesn't talk to either mod site, runs on Linux, and quietly skips any part of a mod that was only built for Windows. This guide covers both halves: how Core Keeper mods install on your PC as of update 1.3, and how to put them on a GameServerKings server so that you and your friends load into the same modded world.

> [!NOTE] Version this page was checked against
> Core Keeper **1.3.0.2** (the 22 September 2026 hotfix for *Riders of the Underground*), on both the game and the Linux dedicated server. The server behaviour described below comes from Pugstorm's own modding documentation and from the mod loader that ships inside the dedicated server files.

## How Core Keeper mods work in 1.3

Pugstorm supports modding officially, and there is one mod system. Mods are built with the official **ModSDK** (a Unity project) and published to one of two places:

- **Steam Workshop**. This was an opt-in beta in 1.2 and is now fully released alongside 1.3.
- **mod.io**, at `mod.io/g/corekeeper`, which you can also browse from the game's main menu.

Update 1.3 also added an in-game **mods menu**. It shows whether each mod loaded, where it was installed from, and lets you change the load order. If a mod fails to compile or is missing a dependency, a tooltip there tells you, and clicking it opens `Player.Log`.

Mods are tagged with the game version they were built against. Use the version filter on Workshop or mod.io, because a mod built for 1.2 may not load on 1.3.

## Installing mods on your own PC

**From Steam Workshop:** subscribe to the mod on Core Keeper's Workshop page and restart the game. Steam stores it in `steamapps\workshop\content\1621690\<workshop id>\` and updates it while the game is closed.

**From mod.io:** subscribe on the website or from the in-game mod.io menu. Some mods depend on others, which the mod page lists, and the game installs those dependencies as well. On Windows, mod.io keeps the files in `C:\Users\Public\mod.io\5289\mods\`.

**Manually:** extract the mod into `CoreKeeper_Data\StreamingAssets\Mods\` in the game's install folder. Manually installed mods never update themselves.

That covers single player and hosting from inside the game. A dedicated server works differently.

## Why the dedicated server needs its own copy

Three things about the Core Keeper dedicated server decide how you mod it:

1. **It only loads mods from a folder.** The server build registers a single mod source, the local `Mods` folder. It has no mod.io or Steam Workshop loader, so subscribing on your account does nothing for the server. Every mod has to be uploaded as files.
2. **Every player needs the same mods.** Nothing downloads the server's mods to players when they join. Pugstorm's wording is that mods work on dedicated servers "so long as all players have the same mods installed". Everyone installs the same mods, at the same versions, on their own PC.
3. **The server is Linux, so it needs Linux asset bundles.** The ModSDK always builds a mod's art and content as `<ModName>_Windows.assetbundle`, but it only builds `<ModName>_Linux.assetbundle` if the author ticks the Linux option. The Linux server skips the Windows bundle and logs `Ignoring … wrong platform`. The mod's scripts still load, so the server doesn't crash. Anything that mod adds through its bundle (new items, enemies, tiles, scenes) just won't exist on the server.

Point 3 is what usually breaks a modded server. A mod made only of scripts, such as a hotkey or UI tweak, can work without a Linux build. A mod that adds content needs one.

## Installing mods on your GameServerKings server

Your server runs the native Linux `CoreKeeperServer` binary. The mod folder is:

```
CoreKeeperServer_Data/StreamingAssets/Mods/
```

That folder isn't there on a fresh server, so you create it the first time.

1. **Take a backup first.** Mods can change a world permanently. See [How to create a backup](/knowledge-base/general/how-to-create-a-backup/).
2. **Stop the server** from the panel.
3. **Get the mod files.** The easiest way to make sure the server runs the same version as your players is to use the copy you already installed. On Windows, that's the mod's folder under `steamapps\workshop\content\1621690\` (Workshop) or `C:\Users\Public\mod.io\5289\mods\` (mod.io). You can also download the zip from the mod's mod.io page.
4. **Check the files.** Open the mod folder:
   - It must contain `ModManifest.json` at its top level. If the zip has an extra folder layer, upload the inner folder.
   - If the mod has `.assetbundle` files, look for one ending in `_Linux.assetbundle`. If there's only `_Windows.assetbundle`, the content in that bundle won't load on the server. Ask the author for a Linux build before relying on it.
5. **Upload.** In the panel, open **Files**, go to `CoreKeeperServer_Data/StreamingAssets/`, create a folder named `Mods`, and upload each mod as its own sub-folder:
   ```
   CoreKeeperServer_Data/StreamingAssets/Mods/
     ├── SomeMod/
     │    ├── ModManifest.json
     │    ├── SomeMod_Linux.assetbundle
     │    └── ...
     └── SomeLibraryMod/
          └── ModManifest.json ...
   ```
   Large mods are easier to upload over SFTP: see [How to upload files via SFTP](/knowledge-base/general/how-to-upload-files-via-sftp/). You can also upload a zip in the file manager and use **Unarchive**.
6. **Upload the dependencies as well.** mod.io installs dependencies automatically on your PC, but the server only has what you upload. Every library mod the mod page lists needs its own folder in `Mods/`.
7. **Start the server** and check the log (below).
8. **Have every player install exactly the same set of mods** before joining.

## Checking that the server loaded the mods

The server writes its log to `CoreKeeperServerLog.txt` in the server's root folder, which you can open from **Files**. The mod loader writes these lines:

| Log line | Meaning |
|---|---|
| `loaded mod <name> at …/StreamingAssets/Mods/<folder>` | The mod was found and registered |
| `Ignoring …_Windows.assetbundle: wrong platform` | Normal when a Linux bundle is also present. If there is **no** `loading …_Linux.assetbundle` line for the same mod, the mod's content isn't on the server |
| `failed to load mod <name> at …` | The manifest was read but the mod was rejected. Check the lines around it |
| `failed to load assetbundle from mod <name>` | The Linux bundle exists but couldn't be loaded. Check the mod's page for a build that matches the current game version |

No `loaded mod` lines at all usually means the folder is in the wrong place, or `ModManifest.json` sits one folder too deep.

## Mod settings: the other `mods` folder

Some mods have settings files. The server keeps those in a folder that is also named `mods`, inside its **save data** directory, which is separate from the install folder. On a Linux server that directory is normally under `.config` in your home folder, so in **Files** look for:

```
.config/unity3d/Pugstorm/Core Keeper/DedicatedServer/mods/
```

If you can't find it there after the server has run once, contact support and we'll point you to it.

The server creates a `README.txt` in it that says **"MODS ARE NOT LOADED FROM HERE"**, and it means it. This folder only holds settings. Mod files dropped here are ignored, so put the mods themselves in `StreamingAssets/Mods/`.

## When Core Keeper updates

Your server updates itself on boot while the **Auto Update** variable is `1` (the default), so it picks up a new game version as soon as it restarts. Mods you uploaded don't update themselves. After a major update:

1. Check each mod's page for a build tagged with the new game version.
2. Stop the server, replace the mod folders with the new versions, and start it again.
3. Tell your players to update too. Workshop and mod.io update their copies while the game is closed.

If a mod has no update yet and the server fails to start or behaves oddly, move that mod's folder out of `Mods/` and restart. Take a backup before any update if you rely on mods. See [How to create a backup](/knowledge-base/general/how-to-create-a-backup/).

## Troubleshooting

- **Things break for players after adding mods:** compare mod lists. Everyone, including the server, needs the same mods at the same versions. If players can't reach the server at all, mods usually aren't the cause: see [Players can't connect to my server](/knowledge-base/general/players-cant-connect/).
- **A modded item or enemy is missing on the server but fine in single player:** the mod has no `_Linux.assetbundle`. It works on your Windows PC and not on the Linux server.
- **The mod works on the server but only for some players:** those players are missing the mod or have an older version. The server doesn't hand mods out.
- **You subscribed on Workshop but the server didn't change:** the server never reads your subscriptions. Upload the files.
- **A mod needs another mod:** upload the dependency as its own folder in `Mods/`, next to the mod itself.

## What to read next

- [How to upload files via SFTP](/knowledge-base/general/how-to-upload-files-via-sftp/): the easiest way to move whole mod folders
- [How to create a backup](/knowledge-base/general/how-to-create-a-backup/): take one before adding or updating mods
- [How to use your server panel](/knowledge-base/general/how-to-use-your-server-panel/): the Files tab, variables and console

---

Made with 💜 by GameServerKings
