Skip to content

How to Add Mods to Your Kerbal Space Program Server ​

In Kerbal Space Program mods only run inside the game itself – the DarkMultiPlayer server does not load any KSP mods. Its job is a different one: through the file mod-control.txt it defines which mods players are allowed to use, and it can optionally distribute a ready-made modpack to them.

Important

All players need the same mods locally in their GameData folder. If a player is missing a mod from the server list or has an additional one installed, the connection is rejected.

Warning

Create a backup before changing the mod list. Vessels built with parts from a mod stop working as soon as that mod is removed.

Generate and upload the mod list ​

You do not write the mod list by hand – you generate it in the game: the DMP client reads your GameData folder and writes the finished file from it.

  1. Set up KSP with the mods you want
    Install all mods that should be allowed on the server on your PC and start Kerbal Space Program.

  2. Open Mod Control
    In the DMP window in the main menu click on Options and switch to the Advanced tab. It contains the Mod Control section.

  3. Generate the file
    In the Mod Control section click on Whitelist or Blacklist. The file is written directly into your KSP folder:

    [KSP folder]/mod-control.txt
  4. Stop the server
    Stop your server via the dashboard. The mod list is only read on server start.

  5. Connect via SFTP
    Connect to your server via SFTP.

  6. Upload the file
    Upload the file into the following directory and replace the existing one:

    /Config/mod-control.txt
  7. Start the server
    Start your server. From now on it checks the GameData folder of every joining player against this list.

Whitelist or blacklist?

VariantMeaning
WhitelistOnly the mods from your installation are allowed. The usual choice for a server with a fixed mod list.
BlacklistPlayers may use any mods. Only explicitly blocked files and resources are forbidden.

Note

If the file is missing, your server automatically generates a mod-control.txt on startup that only contains the stock parts of the game. If an old file is still present at that point, it is renamed to mod-control.txt.bak first. This does not happen when you upload the file via SFTP – there you overwrite the file yourself, so keep a copy beforehand.

Structure of mod-control.txt ​

The file consists of sections, each starting with a !. Lines starting with # are comments.

SectionMeaning
!required-filesFiles every player must have installed
!optional-filesFiles that may be installed but are not required
!partslistAll parts that may be used on the server
!resource-whitelistOnly the listed files are allowed (whitelist variant)
!resource-blacklistThe listed files are forbidden (blacklist variant)

Entries are written as a path relative to the GameData folder, optionally followed by a checksum:

DarkMultiPlayer/Plugins/DarkMultiPlayer.dll=6a1c9a...

Warning

!resource-whitelist and !resource-blacklist are mutually exclusive. Only one of the two sections may contain entries.

Configure mod control ​

How strictly your server checks is controlled by the value modControl in the file /Config/Settings.txt. Stop your server before editing the file.

ValueMeaning
ENABLED_STOP_INVALID_PART_SYNCDefault. Vessels using forbidden parts are not synchronized to the other players.
ENABLED_STOP_INVALID_PART_LAUNCHVessels using forbidden parts cannot be launched at all.
DISABLEDNo checks. Every player can use any mods.

Important

Only disable mod control if you know what you are doing. Without checks, vessels with parts other players cannot load end up in the universe.

Distribute a modpack to your players ​

Optionally your server can provide the matching mods to your players so nobody has to collect them one by one.

  1. Choose the mode
    Open the dashboard, go to the settings and set the field Mod Pack Mode:

    ValueMeaning
    NONEDefault. The server does not distribute any mods.
    CKANThe server sends a CKAN file containing the mod list to the players.
    GAMEDATAThe server sends the complete mod files to the players.
  2. Upload the modpack
    Upload the mods via SFTP into the matching location:

    /Config/GameData/            (for GAMEDATA)
    /Config/DarkMultiPlayer.ckan (for CKAN)

    Tip

    Alternatively an admin can upload their complete GameData straight from the game: the command /upload in the DMP chat is enough. Without admin rights the message "You are not an admin, unable to upload" appears – see Add Admin.

  3. Refresh the file list
    If you uploaded the files via SFTP, run the following command in the console of your dashboard afterwards:

    /reloadmods

    Note

    Without this command, players report the message "DMP Server has an out of date hash list. Tell the admin to run /reloadmods".

  4. Inform your players
    To install the pack, players need the additional tool DMP Modpack Updater from d-mp.org/downloads. Kerbal Space Program has to be closed for that – the GameData folder cannot be modified while the game is running.

Warning

The values Mod Pack Mode, Warp Mode, Game Mode, Game Difficulty and Server Name are written from the dashboard into Settings.txt on every server start. Only change them in the dashboard – changes made directly in the file are overwritten on the next start.

Note

Distributing a modpack does not replace the mod-control.txt. It only makes sure players get the files – the actual checking still happens through the mod list.