Skip to content

Repository files navigation

Magnetar

A plugin and mod loader for the Space Engineers (SE1) Dedicated Server, built on Pulsar — the game-client plugin loader — which is vendored as a git submodule. Pulsar provides the plugin model, configuration, network and compiler infrastructure; Magnetar adds the server host: headless launch of the dedicated server, daemon mode, lifecycle control, chat commands, and the PluginSdk server plugins compile against.

Magnetar ships two launchers that drop in for SpaceEngineersDedicated.exe:

Launcher Runtime Platforms
MagnetarLegacy .NET Framework 4.8 Windows only
MagnetarInterim .NET 10 (via dotnet-compat) Windows + Linux

On Windows both launchers are built; on Linux only MagnetarInterim (.NET 10).

Compatibility plugins are loaded implicitly:

Command-line flags are unified with Pulsar: the plugin-loader flags are Pulsar's own, plus Magnetar's server-specific flags (-daemon, -config, -ds64, consent control, …); client-only options do not apply. Configuration, profile and source files use Pulsar's current formats.

You can register new plugins by making PRs to the MagnetarHub.

Control plane — Quasar

Quasar is a separate control plane with a Web UI that can manage and control multiple Magnetar instances from one place. Each Magnetar reports structured status and logs; Quasar orchestrates them.

Configuration tool — MagnetarConfig

MagnetarConfig is a cross-platform terminal UI (Terminal.Gui, Turbo Vision look) that configures and operates one Magnetar-managed Dedicated Server instance: edit the global SpaceEngineers-Dedicated.cfg, per-world session settings and mod lists, create/delete/activate worlds, manage plugins and profiles, start/stop/reload the daemonized server (PID-file status), and read the game and Magnetar logs. It ships in both bundles as MagnetarConfig.exe (Windows) / MagnetarConfig.bin (Linux) next to the launchers. See the Config tool user manual.

Versioning

Magnetar's version is the vendored Pulsar version plus a build component: 2.3.3.0 is the first Magnetar build on Pulsar 2.3.3, and 2.3.3.1 would be a Magnetar-only release on the same Pulsar base. Release tags and bundle names use all four components; -version prints the first three.

Building

Clone with the Pulsar submodule and build the solution:

git clone --recurse-submodules https://github.com/CometWorks/magnetar
cd magnetar
dotnet build -c Release Magnetar.slnx

Every build deploys a portable install tree (default: %APPDATA%\Magnetar on Windows, ~/.config/Magnetar on Linux). Magnetar itself is portable: its configuration lives next to the binaries and the install folder can be moved anywhere. On Linux the native runtime libraries are downloaded by the linux-compat plugin on first launch.

See Building for details.

Documentation

Page What's in it
Install & Releases Prebuilt bundles, what to download, installing.
Usage Running the launcher, daemon mode, handoff to the DS.
Configuration Config/install dirs, DS detection, environment variables.
Config tool MagnetarConfig user manual: edit config/worlds/mods/plugins, start/stop, logs.
Config tool internals Design and implementation of MagnetarConfig: file formats, architecture, state machines, testing.
Plugins Plugin hubs and the trust boundary.
Building Per-platform build, dependency staging, packaging, releases.
Repository layout What lives where in the source tree.

Contact

Discord for support and developer discussion. GitHub issues and PRs for bug reports and contributions.

About

Magnetar plugin loader for the Space Engineers Dedicated Server.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages