Stellaris Dashboard
repository·master·Indexed 40 days ago
https://github.com/eliasdoehne/stellaris-dashboardA tool for parsing Stellaris save files to provide detailed historical statistics, market price graphs, and galaxy map timelapses. It operates as a standalone application or an in-game browser interface via a Steam Workshop mod. Version 8.0.0 features include an event ledger, resource budget tracking, and customizable graph layouts via config.yml.
What's inside Stellaris Dashboard
- The Stellaris Dashboard is developed with the vanilla game in mind. While it may work with other mods, compatibility is not guaranteed. If you encounter issues with a modded game, report them to the developer, especially if the mod is widely used.
Configure Visibility and Data Depth Settings
masterThe dashboard includes several settings to balance immersion and data availability:
Show information for all countries: Reveals information about countries you haven't met (effectively a cheat). Does not reveal other players in multiplayer.Show all country types: Includes enclaves and pirates in the data.Store data of all countries: Reads detailed budgets and pop statistics for non-player countries. This increases processing time and database size but allows full inspection of other countries via the dropdown menu.Filter history ledger by event type: Changes the event ledger behavior to show all events (like leader level-ups) on the main page instead of just specific entries.
Understand update notifications
masterThe dashboard program checks for updates by comparing its own version against a version ID provided by the Steam Workshop mod. If a new version is released, a notification will appear in the dashboard UI.
Privacy Note: The dashboard program runs locally on your computer and does not send any data externally.
Export a Galaxy Map timelapse
masterYou can export a GIF or PNG sequence of the galaxy map showing territorial changes over time using the controls on the Galaxy Map page.
Export Options:
- Single GIF file (high memory usage).
- Individual PNG frames.
- Both.
Customization Parameters:
Start date: The in-game date to begin the animation.End date: The final date (always included as the last frame).Step size (days): The interval between frames. Higher values reduce the total frame count.Frame time (ms): The duration each frame is displayed (GIF only).
Configure the dashboard for Multiplayer
masterMultiplayer support is currently experimental. By default, the dashboard hides information about other player-controlled empires to maintain privacy, even if the "Show all empires" checkbox is enabled in settings.
To use the dashboard in a multiplayer session:
- Open the dashboard settings menu.
- Configure your multiplayer username.
- If you wish to see other players' data, uncheck the
Hide other playerssetting.
Build the Stellaris Dashboard from source
masterDevelopers can build the dashboard using
uvandrust.Prerequisites:
git(clone with--recurse-submodulesto include test saves).uv(manages Python environments and dependencies).- A Rust toolchain (required to compile the
rust_parser).
Development Workflow:
uv sync: Creates the virtual environment, installs dependencies, and builds the Rust parser viamaturin.uv run stellarisdashboardcli parse-saves: Reads existing save files into the database.uv run stellarisdashboard: Starts the dashboard.uv run pytest: Runs the test suite.
git clone --recurse-submodules <url> uv sync uv run stellarisdashboardcli parse-saves uv run stellarisdashboard uv run pytestInstall the Stellaris Dashboard mod for in-game access
masterTo access the dashboard directly from within Stellaris, you must install the companion mod.
- Subscribe to the mod in the Steam Workshop.
- Activate the mod in the Stellaris Launcher.
Accessing the Dashboard in-game:
- Open the in-game internet browser by clicking the help icon in the lower right or pressing the shortcut
ALT-B. (If the help icon is hidden, click the "More" button to reveal it). - Use the navigation buttons in the top right corner of the browser window to switch between dashboard views.
- Alternatively, open
http://localhost:28053in any web browser (e.g., on a second monitor).
# No specific command, follow manual stepsImprove Dashboard performance
masterIf the dashboard is slow or resource-intensive, apply these optimizations:
- Reduce Graph Load: Manually edit the configuration file to rearrange graphs into tabs, removing unnecessary ones.
- Reduce Data Volume: Increase the in-game autosave interval or increase the "Skip saves" parameter in the dashboard settings.
- Lower Memory Usage: Decrease the
Initial graph resolutionsetting to load less data into memory at startup. - Reduce CPU Usage: Decrease the number of CPU threads used for reading new save files in the dashboard settings.
Configure the graph tab layout
masterYou can customize the dashboard layout by modifying the
tab_layoutsection inconfig.yml. This allows you to group specific graphs into custom tabs, disable unused graphs to improve performance, and organize the interface to your preference.Rules for Tab Names
- You can use almost any name for your tabs.
- Reserved Names: Do not use
MarketsorGalaxy Mapas tab names; these are reserved and will be ignored if used in the configuration.
Applying Changes
- Changes to the tab layout only take effect after restarting the dashboard.
- Warning: It is recommended to keep a backup copy of
config.ymlbecause the dashboard may overwrite changes during operation.
Resetting the Layout
To return to the default layout, you can either:
- Delete the
tab_layoutsection fromconfig.yml. - Delete the entire
config.ymlfile to reset all default settings.
tab_layout: my-first-tab: - net_mineral_income_graph - net_energy_income_graph my-second-tab: - system_count_graphInstall and run the Dashboard Application
masterFor users who want to run the dashboard as a standalone application:
- Download the latest release for your OS from the GitHub releases page.
- Extract the zip archive to your preferred location.
- Run the
stellarisdashboardapplication.
Note: The packaged app automatically tracks new saves as they appear. If you need to bulk-import existing save files, you must use a source checkout with the CLI (see 'Building from source').
Configure the dashboard for Observer Mode
masterTo use the dashboard while in Observer Mode, follow these steps to ensure data is available:
- Start the game as a regular country and allow it to generate at least one save file.
- Switch to Observer Mode.
- In the dashboard settings, enable
Store data of all countries. - (Optional) Enable
Show information for all countriesto view data for all empires.
Manage Galactic and Internal Market Data
masterThe dashboard tracks two types of markets:
- Galactic Market (
GalacticMarketResource): Represents market data for a single resource at a specific time. It tracksresource_index(matching game files),availability,fluctuation, and totalresources_bought/resources_soldacross all countries. - Internal Market (
InternalMarketResource): Represents a country's specific internal market resources, identified byresource_name_id(linked toSharedDescription). It tracks resourcefluctuation.
- Galactic Market (