About AsyncSave
From ThunderstoreMoves Valheim's world and character saves off the main thread, so saving no longer freezes the game.
AsyncSave
AsyncSave moves Valheim's world and character saves off the main thread, so a save no longer freezes the game. Nothing about the save format changes — the bytes it writes are the bytes vanilla would have written.
The two halves are independent and neither syncs anything over the network, so the same DLL runs unmodified on a dedicated server, a client, or a host, any mix is supported.
How it works
World save (server or host)
Vanilla's ZNet.SaveWorld clones every ZDO in the world into a fresh list, on one frame, and only then hands it to the writer thread. AsyncSave replaces that with a coroutine that walks ZDOMan's sectors across many frames, serializing each ZDO straight into a reusable buffer, while the writer thread waits on it.
Character save (anywhere there is a local player)
Vanilla's minimap save writes 8.4 million individual booleans through a BinaryWriter, then gzips the result and writes the .fch synchronously. AsyncSave bulk-copies the explored arrays (two memcpys producing the identical byte sequence), then hands compression, hashing and the file write to a background worker. The parts that touch Unity-owned or gameplay-mutated state stay on the main thread.
The character save made on quit, logout and shutdown still runs synchronously and in full before the scene goes away, so it is never in flight; only its minimap step uses the bulk copy.
Automatic stand-downs
If the mod cannot safely run — it fails to patch ZNet.SaveWorld, the .fch layout is not the one this build was written against, the revision hooks are missing, or the host is big-endian — it disables the affected half or falls back to FullScan for that session only and logs why. Your config file is never rewritten, so the setting you chose is still there next launch.
Requirements
BepInEx. No dependencies on other mods. Incompatible with SmoothSave (they patch the same paths); BepInEx will refuse to load both.
If you enjoy my mods donations are appreciated. My mods will never be paid and donations are not required.
Highlights
From source dataLoaders
Runs on BepInEx.
Footprint
Rated a light load on a server.
Dependencies
Needs 1 other project installed alongside it.
AsyncSave on Nxeon
From our catalogue- One-click install
- Supported on Nxeon Valheim servers, for BepInEx servers. We download it from Thunderstore, place it, and restart the server.
- Server side
- Optional on the server
- Server type needed
- BepInEx
- Server load
- light
- Smallest plan we suggest
- Valheim — 4 GB (4 GB RAM). This follows our own load rating above, not a benchmark.
- Latest build
- 0.7.0, released 2026-10-26
Game versions by loader
| Loader | Game versions | Newest |
|---|---|---|
| BepInEx |
From 4 recorded builds of AsyncSave.
Recent builds
| Build | Released | Game versions | Loaders |
|---|---|---|---|
| 0.7.0 | 2026-10-26 | n/a | BepInEx |
| 0.6.1 | 2026-10-15 | n/a | BepInEx |
| 0.6.0 | 2026-09-23 | n/a | BepInEx |
| 0.5.0 | 2026-09-09 | n/a | BepInEx |
Dependencies
- Required: BepInExPack Valheim
Declared by the newest build that lists any. Required ones are installed with it on one-click installs.
Run AsyncSave on a Valheim server
Pick a server or deploy a new one above; it is installed in one click.
What kind of mod it is
From the catalogQuality of life & UI
Small conveniences, tweaks and interface improvements players notice straight away.
Works on a server
From source side supportThunderstore lists server-side support for AsyncSave as optional: it can run on a server, but isn’t required there.
Compatibility
- Game
- Valheim
- Loaders
- BepInEx
- Runs on
- Serveroptional on the server
- Requires
- One-click install needs a BepInEx server. 1 other project installed alongside it.
Verified at the source
- ✓ThunderstoreOfficial listing, checked 2026-10-27Open ↗
- ✓AuthorMidnightMods, as published on Thunderstore
- ✓LicenseNot published by the sourceFree





