Skip to content

Repository files navigation

Satisfactory Save Map

Drop your save file, see your whole factory in seconds — right in the browser, without uploading anything anywhere.

satisfactorymap.net — no install, no account. Or get the desktop app for saves too big for any browser.

The map with a 632,000-object mega-factory loaded

Your save is parsed on your own machine by a Rust parser compiled to WebAssembly. Nothing is uploaded, so there is nothing to wait for: a 600,000-object endgame save loads in ~8 seconds — the same save takes almost two minutes on the incumbent web map, a measured 13× difference. And it stays fast after loading: panning the full-factory overview, this map never dropped a frame (worst: 24 ms) where the incumbent froze for up to 15 seconds at a time — WebGL rendering instead of DOM markers (methodology & reproducible script).

What you get

  • The whole factory, mapped — buildings by build-menu category, belts/pipes/railways/power lines as curves, resource nodes with purity, vehicles, trains, players, collectables and crash sites.
  • Find anything — search across every inventory in the save ("where did I leave my hard drives?"), per-building tooltips with recipe, power, clock speed and belt/pipe bottleneck detection.
  • Progression at a glance — MAM research, alternate recipes, AWESOME Shop, HUB milestones, Space Elevator status.
  • Select & total — rectangle-select any part of the factory and get its combined inventory and object list.
  • Edit your save — move, copy/paste, rotate or delete whole factory sections (with undo), then download the edited .sav and load it in the game. Copies travel between saves, too: copy, load the other save in the same tab, paste. Copies up to 50,000 objects also go through the OS clipboard for pasting in another browser tab; beyond what the browser's memory can carry, the desktop app takes over.
  • Link straight to a map — append ?url=<address-of-a-save> to load a hosted .sav automatically (e.g. a dedicated server's autosave exposed over HTTP). The file downloads directly into your browser — never through this site's servers — so its host must allow cross-origin (CORS) requests.
  • Private by construction — fully client-side; the save never leaves your machine. Works offline once loaded.

Factory detail: production rows, belts and a rail roundabout

Desktop app

Browsers cap WebAssembly at 4 GB of memory, which the very largest mega-factory saves can exceed. The desktop app (Tauri, Windows) wraps the same engine and the same interface with no memory ceiling — and it's the fastest way to open saves straight from your save folder. It can also pull the newest save straight off a dedicated server (the official server HTTPS API — the same one the in-game Server Manager uses): enter the server's address and admin password in the Save File panel and hit Fetch latest save. One firewall note: the API listens on TCP port 7777, while the game itself uses UDP — so the server must have TCP 7777 (or its custom port) open too, not just UDP (details). Download the installer from the Releases page, or build it from source in a few minutes (see CONTRIBUTING.md).

Why does Windows warn when installing? The installer is not code-signed — signing certificates cost hundreds of euros per year, which isn't sensible for a free tool yet. Windows shows its standard "unknown publisher" SmartScreen prompt for any unsigned installer; "More info → Run anyway" proceeds. The app is open source, the installer is built from this repository, and every release lists SHA-256 checksums so you can verify what you downloaded.

Building from source

Everything — site, parser, desktop app, data extraction — is covered in CONTRIBUTING.md.

Credits & save-format lineage

The Rust parser is a port of GreyHak/sat_sav_parse, validated field-by-field against the Python reference with bit-exact differential gates. The static world tables in game_data/sav_data/ were originally converted from that project; they now regenerate from the game's own level data (validated 1:1 against the originals — see game_data/extractors/extract_collectables.py). This project wouldn't exist without GreyHak's format work.

License & trademark

The code is licensed under AGPL-3.0 — the parser port with GreyHak's written permission, since the upstream it derives from is GPL-3.0-only (scope recorded in NOTICES.md). The Satisfactory Save Map name, logo, and the satisfactorymap.net domain are not covered by that license: forks and rehosts are welcome under the AGPL, but must use their own name and domain, must preserve the copyright and license notices (including the in-app footer), and — being AGPL — must publish their source, including when only serving the app. The canonical instance is satisfactorymap.net.

Satisfactory is a trademark of Coffee Stain Studios. The game-derived data (icons, map image, item/building tables) belongs to Coffee Stain Studios and is not distributed in this repository — see CONTRIBUTING.md. This project is not affiliated with or endorsed by Coffee Stain Studios.

About

Interactive map + save editor for Satisfactory saves - fully client-side (Rust to WASM). Loads a 600k-object save in ~8s, 13x faster than the incumbent.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Contributors

Languages