Releases: SteamServerUI/StationeersServerUI
SSUI v5.13.2 🐞
Minor improvements and fixes:
SLP: Reinstall without losing mods
-
Added a Reinstall SLP button in the SLP management panel
-
Reinstall removes only the SLP plugin directory, preserving all installed mods and modconfig.xml, then downloads and installs the latest SLP version
-
Available via POST /api/v2/slp/reinstall and UI -> config -> SLP
-
Added 🎮 Game Version button to the server status panel - shows the detected game version as an ephemeral message (button only appears once a version is detected)
-
Added 🔄 Next Auto Restart button -shows the next scheduled restart time in the user's local timezone using Discord's native timestamp formatting, including a live countdown (button only appears when auto-restart is enabled)
Auto-restart schedule now tracks the next restart time at runtime; the value is cleared when the server stops or auto-restart is cancelled
Bug Fix: Detached Game Server on SSUI Update/Restart ( Fixes #159)
- Applying an SSUI update while the game server was running caused the server process to become detached — SSUI would lose track of it and start a second instance on the next "Start Server" command
- SSUI now gracefully stops the game server before launching the new executable, on both Windows and Linux
- Same fix applies to RestartMySelf() used during the post-update self-restart
What's Changed
- v5.13.2 - SLP fix and discord improvements by @JacksonTheMaster in #161
Full Changelog: v5.13.1...v5.13.2
SSUI v5.13.1 🔧 Remote Galaxy
This release features refactors of the Discord integration, adds THEMES to the UI, redesigns the connected players panel with rich embeds, adds server uptime display on the WebUI, improves backup retention logic, upgrades SSUI to Go 1.26, and brings SSUICLI quality-of-life improvements along with a couple more improvements, read below:
🤖 Discord Improvements
Refactor of the Discord Integration
Tip
The good news: Functionality will not be disrupted by below changes, and you don't need to reconfigure anything.
The config package migrates old keys to new keys.
Caution
The SavesChannel and ErrorChannel where Deprecated.
Those events are now sent to the StatusChannel, which is now called EventLogChannel.
Caution
The ConnectionListChannel and ServerInfoPanelChannel have been combined into a unified StatusPanelChannel.
Note
The configured ConnectionListChannel will be migrated and reused as the StatusPanelChannel
The configured StatusChannel will be migrated and reused as the EventLogChannel
The configured ServerInfoPanelChannel is now unused in favor of the unified StatusPanelChannel
You can safely delete the now unused channels SavesChannel, ErrorChannel and ServerInfoPanelChannel from your Discord.
- Deprecated dedicated saves channel in favor of evens channel and Consolidated server info and connected players panels into a single status panel,
sendServerStatusPanel, which now handles player connection updates and server info / password gathering.
Connected Players Panel Redesign
The connected players panel has been completely redesigned — gone is the plain-text code block, replaced with a rich Discord embed:
- Player names are now clickable links to their Steam profiles
- Color-coded: panel green when players are online, grey when empty
- Shows player count and a "Last updated" timestamp
Fixes and improvements:
- Fixed a bug where Discord button interactions (e.g., on the server info panel) were prematurely acknowledged due to a combined condition in the slash command handler. The handler now correctly separates interaction type checks, preventing button presses from being swallowed silently.
- Updated localization keys on UI for Discord channels to be more informative
- fixed the "Error sending log to Discord; Message cannot be empty" bug
🌐 WebUI:
Implement a theme engine for user-customizable themes
This builds upon the theming preparations already done with the xmas update:
- Added a new theme editor UI to the config page for customizing theme colors and presets.
- Added functionality for importing and exporting themes in JSON format.
- Created some preset themes (reused the themes from SSUI v7/SteamServerUI)
⏱️ Uptime on WebUI
Server uptime is now displayed directly on the web UI dashboard next to the status indicator. The /v2/server/status API response now includes an uptime field with a human-readable format (e.g., 1d2h3m4s).
💾 Backup Retention System Improvements
Enhanced the backup retention logic for more accurate and reliable cleanup:
- Fixed a bug where backups from different months but the same day-of-month (e.g., Jan 15 and Feb 15) were incorrectly treated as the "same day" — now uses full calendar day comparison (year + day-of-year)
- The "keep last N" backups now properly update daily/weekly/monthly retention trackers, preventing redundant keeps
- Corrupt or unreadable backup files are now logged and skipped instead of causing the entire backup scan to fail
🖥️ SSUICLI Improvements
- All commands now have descriptions shown in
helpoutput - Commands are split into user and dev categories — run
help devto see developer commands if necessary. - Help output is now cleanly formatted with aligned columns and color coding
- New dev commands:
dumpheapprofile— dump a pprof heap profile for debuggingtestserverstatuspaneldiscord— sends a fake player list to test the Discord connected players panel
🪲 Bug Fixes & Minor Improvements
- Fixed typo in admin password info text ("Leavy" → "Leave")
- Enhanced "Save Name" config UI label in all localizations to reflect "creates a new save" for less experienced / new users and clarify that changing the value to a non-existent folder name creates a new save
Note
Development focus will fully shift to SteamServerUI by the end of February. SSUI will be updated & fixed for the foreseeable future, but this will likely be one of the last StationeersServerUI feature releases unless @JacksonTheMaster cannot stop working on this (happend twice now, who knows)
What's Changed
- Fix Discord button interaction issues and Improve "Save Name" input labels by @JacksonTheMaster in #152
- Enhance retention logic and backup file error handling by @JacksonTheMaster in #154
- Add uptime information to WebUI by @JacksonTheMaster in #153
- Update Go version and enhance CLI commands by @JacksonTheMaster in #155
- feat: Implement theme editor and engine for user-customizable themes by @JacksonTheMaster in #158
- Discord Integration Refactor, Theming & backup retention improvements, uptime reporting on webUI, Go 1.26 upgrade, SSUICLI improvements by @JacksonTheMaster in #157
Full Changelog: v5.12.3...v5.13.1
SSUI v5.12.3 🎛️ Command Central
This release introduces an interactive CLI dashboard, a new optional Discord server info panel, optional automatic password rotation, and backup download functionality for both the web UI and from Discord.
Note
The Interactive CLI Dashboard is a new experimental feature using bubbletea. It provides a terminal-based UI for server management. Run dashboard or d from your good old SSUICLI to try it out.
🖥️ Interactive CLI Dashboard
A brand new terminal-based dashboard for managing your server directly from the CLI, powered by bubbletea.
- Real-time status, player list, config and SSUI log panels
- Keyboard shortcuts for quick actions
- Server uptime tracking (not yet on UI, sorry NAM)
The CLI Dashboard can be set to launch automatically when SSUI is started in the foreground (is a tty) by setting "IsCLIDashboardEnabled": true in the UIMod/config/config.json. Might become the default at a later stage, let's see.
🤖 Discord Server Info Panel
New interactive Discord panel with a button to get the current server password. Disabled by default, optional when using Discord integration.

Nice for community servers using the new feature below
🔐 Automatic Password Rotation
Keep your server password changing on every restart with automatic password changes. Disabled by default.
- Generates a random 6-digit (numbers from 100000-999999) password on server start
- Configurable via the Discord Settings config tab
💾 Backup Download Functionality
Download backups directly, especially useful for Docker users:
- New download buttons in the web UI backup controls
/downloadDiscord command to upload backup files directly to Discord
- Buttons on Discord bot /list responses if the list includes 5 or less backups
⚙️ Expert Settings
New "Expert Settings" section in the advanced settings config page for very advanced configuration options.
🪲 Bug Fixes & Improvements
- Increased buffer size for global console channel, fixing missing parts of startup messages during first-time setup. Might lead to the known windows console buffer issues reappearing, let's see.
- Added back to dashboard button to sliding tabs on config page
- Improved config page headline texts
- Docker nightly builds now include
-nightlysuffix in package name
🌍 Localization
- Added localization for Expert Settings, Server Info Panel, and Password Rotation across de-DE, en-US, and sv-SE
Full Changelog: v5.11.1...v5.12.3
SSUI v5.11.1 💫 Station Modifications
This release introduces functions for installing and uninstalling SLP, along with a comprehensive mod package upload system.
It also adds the multiplayersafe branch to the setup wizard.
Note
The SLP integration is now in BETA. You can access it from the config tab with the SLP Icon, but there will be a Beta disclaimer banner.
This release adds Mod management to SSUI. You can now download & install SLP, upload mod packages and update Mods from the UI with the click of a button.
You can also view installed mods.
Enhance the UI for managing mods
Updated the API to handle mods and workshop details
Add functionality for workshop mod updates
Slighly refactored the CLI for improved structure
Add new commands for testing and managing mods
Improve credits page and add donors Stealthbob & Sumisukyo
This release was initially released as 5.11.0 and was now updated to ship v5.11.1 since 5.11.0 contained a major bug.
- fix terrain system bool incorrectly switching to false for multiplayersafe branch in applyConfig function
- removed SSCM "Save" trigger when detecting an autosave since it constantly double-saves without much benefit beyond that.
- Add Stationeers Launch Pad (SLP) mod management features by @JacksonTheMaster in #148
Full Changelog: v5.10.1...v5.11.0
SSUI v5.10.1 🐞
This is a very small patch fixing 2 bugs:
- The
BackendEndpointPortflag (-p) would not apply if set to 8443 - The
WorldIDfield would not apply if used on the Terrain Settings config page -> removed it from the Basic Settings, nowWorldIDis to be set from the wizard or the Terrain Settings page - Added a -GamePort flag to set the connection port for gameserver connections from CLI directly at startup
- This was added for BadDucky52's SSUI pterodactyl egg to work as intended
- This means you can now run SSUI inside pterodactyl -> if you have to 🤷♂️
In the next days / weeks, a mod support update (v5.11.0) will follow, adding
- StationeersLaunchPad install & uninstall
- SLP ModPackage Uploads
- Possibly automatic mod updates
- Fix BackendEndpointPort not applying if p = 8443, add GamePort flag (ptero) by @JacksonTheMaster in #147
Full Changelog: v5.10.0...v5.10.1
SSUI v5.10.0 - Refined Signal 📶
This Release improves the automatic update system, announcement system and config page UI. It also includes several localization and bug fixes, and some general polish.
The wiki is now updated and overhauled!
♻️ Auto-Updater improvements
- Refactored and split updater code into separate files for maintainability
- Added periodic update polling during runtime (every 6 hours)
- Added server-side API endpoints to check for updates
- Implemented localized frontend update modal to notify users of available updates and allow in-app updating.
⚙️ UI/UX Improvements
- Config page overhaul:
- New sliding tab structure
- improved terminology
- Added (but temporarily hidden) SLP tab preparation.
- Moved detection manager into tab style.
- Fixed broken button icons (I broke them in 5.9.1 with the xmas design) and some mobile styling issues.
📢 Improved main dashboard announcements
- Improved announcements system to display multiple announcements if needed.
🪲 Bug Fixes & Reliability
- Fixed world saved detection and notifications (debounced to prevent spam, cleaner timestamps; reported by @steven10172, thx).
- Added retry once logic and better error handling for SteamCMD exit status 8 (especially during first setup; thanks to Seneram (Discord handle)).
- Fixed missing localization on setup finalize button and setup info text (fixes #121).
- Fixed config page mobile styles in several places.
🌍 Localization
- Updated/added messages in de-DE, en-US, and sv-SE files (local IP guidance, setup track, update modal, general clarity improvements).
🤏 Minor changes
- Updated README and Wiki (finally)
- Fixed preview buttons to point to v4 live demo again (as it's still close enough).
- Added direct download buttons by improving the github pages page (Now the "Download Page"
- Changed copyright/year references from 2025 → 2026.
SSUI v5.9.1 - Singularity Escape 🌌✨
Huge thanks to @akirilov (Mens_Rea (Discord)) for the work on this update.
Important
This release is strongly recommended for all users, especially anyone who experienced extremely slow backup loading times or uses ZFS/large backup directories. The performance improvement is night-and-day.
Caution
With this update, the Backup manager no longer supports the old (pre-terrain update) terrain and save system. Please switch to the new Terrain system if you wish to continue to use new SSUI features. Alternatively, you can continue to use the old system by using SSUI 5.8 and below, disabling auto-updates via the config.json file.
New Features
- Added RoundRobin and CommunityStart world configuration options
- Game server console output can now be automatically logged to file (
SSUI/logs/gameserver/) (enable from Advanced options) - Log directory is now created reliably on first start
- added dynamic announcement section to UI with support for fetching and displaying dynamic announcements from external JSON source (github pages) to be able to notify users on the dashboard without the need to update the executable (Update / bug announcements)
- added credits page and credits button and bottom of main dashboard
Major Performance & Stability Fix regarding the Backup Manager
- Completely eliminated the severe O(n²) performance bug in the Backup Manager
→ Previously caused 30–60+ minute load times (or even hours) when users had thousands of backup files, especially on ZFS or slow filesystems.
→ Fixed by pre-computing .save file indices in a single directory pass.
→ Backup list now loads in seconds even with 5000+ files. - Dropped support for the legacy (pre-terrain-update) save/backup format in the new Backup Manager
- Starting a pre-terrain dedicated server still works perfectly fine
- The Backup Manager now strictly enforces / only works with the new terrain system
- Added a very noticeable warning in the config loading when loading preterrain SSUI
- Added a collapsible info banner on the dashboard explaining the change
- Migration of saves (also powered by JacksonTheMaster, the author of SSUI): https://sst.jxsn.dev
Fixes & Polish
- *Fixed console auto-scroll to bottom (finally)
- Removed duplicate scrollbar in console window
- Fixed re-advertising to Steam master servers when IP or game version changes
- Minor UI/dashboard improvements and text fixes
- Updated World ID guidance text in world config
- refactored CSS to enhance use of variables for improved theming and consistent styling across UI components
- added silly xmas styling (conditional from 1st of Dec to 10th of Jan)
Version
Now at 5.9.1 (includes internal hotfix 5.8.1 )
Jackson
What's Changed
- Fix backup manager nested loops slowing down servers with large numbers of saves by @akirilov in #138
- Feat gameserver logfiles by @JacksonTheMaster in #139
- Fixed console scrolling for active console by @akirilov in #140
- merge v5.9 (BM bigO fix & UI updates) by @JacksonTheMaster in #142
Full Changelog: v5.8.0...v5.9.1
SSUI v5.8.0 - Astral Echo 🔊
This release brings powerful new API capabilities, enhanced server list "advertisement" features, and important stability fixes.
Note
Critical race conditions and memory leaks have been addressed in this release. Please report any issues you encounter!
⚙️ This release introduces API key authentication for external monitoring, flexible server advertisement modes including reverse proxy support, and multiple critical bug fixes for improved stability.
🔑 Key Features & Improvements
🔐 API Keys & Monitoring
-
New API Key System: Generate API keys for external monitoring and automation from
/api/v2/auth/setup/apikey- Accepts also a POST with json body - {"durationMonths": 6} for example
- Support for dynamic expiration duration (1 month default, up to 3 years for service accounts)
- Improved JWT handling for secure authentication
-
Server Status Endpoint: New monitoring API endpoint to check server running state at
/api/v2/monitor/gameserver/status(Idea: @Locxion) -
Optimized Performance: Refactored server state checks to use global settings, significantly reducing backend load
📡 Advanced Server Advertisement (Credit @akirilov)
- Reverse Proxy Support: Manually set your advertised server IP for reliable server list functionality behind reverse proxies
⚠️ Important: RequiresServerVisible=Falsein server settings.- Intelligent Advertisement Modes: The advertiser supports multiple configuration modes via
AdvertiserOverrideflag: auto- Automatically detects your public IP using ipify- A Valid IPv4 address - Uses the provided IP directly
- DNS hostname - Performs DNS lookup on the provided string
🔧 Other Improvements
- Refactored configuration management internally
- Updated some npm dependencies (
/v2UI)to latest versions
🐛 Critical Bug Fixes
Security
- Fixed Path Traversal Vulnerability: Second round of fixes for zip slip issues in steamcmd-helper (zips are a slippery slope!)
Stability
- Fixed Race Condition in SSE Handling: Resolved panic when SSE connections closed during message formatting (Credit @semoro)
- Eliminated concurrent writes to HTTP/2 Response Writer
- Fixes "Write called after Handler finished" crashes
General
- Fixed Command-Line Flag Error Message: Corrected "nosanitycheck" flag name in log output to match expected parameter
NoSanityCheck - Linux Compatibility: Ensured
run_bepinex.shis only removed on Linux systems where it exists - Various code quality improvements and refactoring
Contributors: @JacksonTheMaster, @mitoskalandiel, @akirilov, @semoro
Full Changelog: v5.7.1...v5.8.0
SSUI v5.7.1 - Celestial Tide⛵
The reloaded "Smooth Sailing" Release
After weeks of intense development, refactoring, and lots of major backend improvements in the past few weeks, I'm thrilled to announce that v5.7.0 is finally here - with tons of under the hood improvements! This release text will focus on user facing changes, for a full rundown see #108
Note
I hope we didn't break stuff - please report any anomalies ~ Jackson
⚙️ This release introduces user-friendly save configurations, a streamlined terrain settings interface, and enhanced stability for Docker environments, along with critical bug fixes and improved translations.
🔑Key Features & Improvements
- Improved Save Configuration: Replaced SaveInfo with separate SaveName and WorldID fields for easier, more flexible save setup.
- SaveName now supports spaces, and old data is automatically migrated.
- New Terrain Settings Interface: A cleaner, intuitive world generation settings page appears only when using the new terrain system, with validation hints for required fields.
- Enhanced Backup Manager: Improved reliability in initialization and clearer logging for backup operations.
- **A new sanity check at every run, making sure the environment is properly able to run SSUI
- New Command-Line Options: Added
NoSteamCMDandNoSanityCheckflags for users to skip SteamCMD initialization or environment checks (use with caution). - Better UI Feedback: Added validation indicators, improved tooltips and fixes on the configuration page.
- Updated Translations: Improved German, Swedish, and English localizations for better accessibility.
🐋Docker now functional on both Debian & Ubuntu, and probably everywhere else
🪲Notable Bug Fixes
- Fixed an issue where the Backup Manager could instantiate twice
- Resolved Docker file pathing and permission issues for consistent behavior.
- Corrected terminal message formatting on Linux.
- Fixed incorrect wiki link
- fixed adding sensitive information to support packages.
Full Changelog on PR: #108
SSUI v5.6.5 - Orbital Homecoming 💾
Tip
The new terrain system was released by RocketWerkz! UseNewTerrainAndSaveSystem is now true by default!
💾 This release adds changes needed to default to the new Stationeers Terrain and Save system, as well as updating their respective localization strings to show "Terrain" values rather than "Beta Terrain" texts as before.
Swedish and German will fallback to English for now as localization is not done for those yet, this will be addressed in the next release.
Features and Fixes ✅⚙️
- Changed UI texts and default to new terrain system
- Missing swedish and german localizations atm, will fallback to english
- fixed worldOptions in Save Identifier setup step showed old worldIDs if newterrain was enabled
- Changed UseNewTerrainAndSaveSystem" default is now true!
Docker 🐋
This release also includes substantial improvements to the Docker container of StationeersServerUI - a huge thx to @1Solon. We now offer a prebuilt container on ghcr.io. Documentation will be updated shortly.
General repo improvements
- Updated NPM dependencies and rm electron entirely
Removed lines in PR / release are mostly due to electron being beeing red / removed- Electron was leftover from SteamServerUI and is not needed in this repo
- Added Github CodeQL to repo
New Developers
Also I want to take the opportunity and welcome @akirilov to the team here! 🎉🥳