Setting Up a Modding Environment

From Space Engineers Wiki
Jump to navigation Jump to search
beginner
Learnings

How to set up an environment for modding.

How to edit files to change the game.

How to make a specific mod.

Overview
Related


Modding in Space Engineers has a lot of fields as pointed out in the Introduction, that also means you don't have to set up for all of them, only for the ones you want to use.

What all the fields of modding have in common is the file structure of the mod, all mods start as a local mod.

Folder Structure

Required: Creating a local mod

Past that how you design your folder structures is up to you.

A few optional things you can do to make things easier:

Visible file extensions

Windows by default hides extensions for files that have a program assigned to open them, which can canse issues for development where they're very important to not get wrong (like mistaking a .sbc for a .txt and wondering why it doesn't work).

You can however tell Windows to show the real name of the file all the time:

  1. Open any folder
  2. At the top View then Options button
  3. Go to the View tab of that window
  4. Disable "Hide extensions for known file types"

Development folder elsewhere with symlink

You can have your source files (.blend, .csproj, .png, etc) a directory before the mod folder itself, and then the whole thing can be somewhere else than the SE appdata folder.

For example:
D:\Dev\SpaceEngineers\
D:\Dev\SpaceEngineers\YourMod\*.blend
D:\Dev\SpaceEngineers\YourMod\Content\Data\*.sbc
D:\Dev\SpaceEngineers\YourMod\Content\Models\*\*.mwm

Then you can symlink the Content to the local mods folder. This allows you to have a clean mod folder while all the source files can be outside of it and not accidentally publish them.

To create the symlink you need to use system commandline: mklink /J "path\to\appdata\SE\mods\YourMod" "path\to\real\modfolder\Content"

Shortcuts to key folders

You will find yourself navigating to these a lot, where you shortcut them is up to you, a few options:

  • Start menu
  • Quick Access (left of explorer window)
  • Pinned in taskbar when right-clicking any folder

And now the paths recommended to have:

  • SE's AppData folder (%appdata%/SpaceEngineers)
  • SE's install folder (in Steam you can right-click -> properties and Local Files has a Browse button to lead you to it)
  • If you installed it: SE ModSDK's install folder (same as above but for the SDK)
  • If you used the symlink way: Your development folder

Mod SDK

On Steam there's "Space Engineers Mod SDK" which you can download and it contains the source files for models (.fbx + .xml + .hkt) as well as some tools and the profiling version of the game. See Profiling the Game on detailed install steps and how to use the profiler build if you ever need to.

SBC Modding

Because SBC are XML format, you can even use Notepad but is not recommended.
A more specialized editor that handles XML with syntax highlighting and even some basic syntax checking will be godsend, especially as the game is not known for its descriptive errors.

Recommended software, pick one:

  • Notepad++ - After installing and running it, head to Plugins -> Plugins Admin and install XML Tools.
  • Visual Studio Code - Setup guide

Next: SBC things to know.

Other tools in SBC & Art modding tools.

Mod Scripting

Other tools in Mod programming tools.

C# programming

Highly recommended to have a proper IDE with "intellisense" which means the editor is aware of the context of your code as you type.
A proper IDE can also compile the code which will give you compile errors before you even load the game, and with an analyzer specific for Space Engineers it can even check the whitelist for you.

Recommended software, pick one:

If you have older existing projects, then Convert old projects to new SDK.

See the overview of how mod scripts work at Mod C# programming.

Visual Scripting Tool

This is an official tool primarily for scenarios. Official guide

Asset Modding

Refer to Space Engineers Utilities (SEUT) for the primary workflow aid to making models and texturing. Also helps with planet creation.

Other tools in SBC & Art modding tools.