Web Analytics Made Easy - Statcounter

Tools / Vintage Story

Vintage Story World Handoff

Moving a world onto a dedicated server means putting the .vcdbs in the right place, bringing the right mods, and setting one line in serverconfig.json that silently costs you the world if it's wrong. Drop your folder and get a bundle laid out the way a server expects it. Read and packed in your browser; nothing is uploaded.

Drop your VintagestoryData folder here

Its Saves folder or a single .vcdbs works too.

or just the world file:

Your world never leaves your browser Server layout matches what we run in production Caches and logs dropped; unreadable mods kept

The one line that loses worlds

Vintage Story finds its world through SaveFileLocation in serverconfig.json. On a server it looks like this:

"SaveFileLocation": "./data/Saves/myworld.vcdbs"

If that path doesn't resolve, the server does not stop and does not print anything a normal person would notice. It generates a fresh world and starts it, which from the outside is indistinguishable from your world having been deleted. People then upload the file again, or restore a backup over the top, and make it worse. This tool writes the line for you from the filename it actually found, so the two cannot disagree.

Mods travel with the world, but not all of them

A world generated with content mods has those blocks and items baked into it. Start it on a server without those mods and the content disappears from the world, which is not something a restart fixes. So server-side mods have to come across.

Client-side mods are the opposite: they do nothing on a server, and each player installs them locally. This tool reads each mod's modinfo.json and separates the two. Where a zip has no readable modinfo.json, it is included anyway, because dropping a mod the world was built with costs far more than carrying a spare one.

What is deliberately left behind

Cache, Logs, RiverCache and BackupSaves are not in the bundle. The server rebuilds all of them, and on a mature world they are usually most of the bytes. Leaving them out is the difference between a bundle you can move and one you cannot.

Very large worlds

Past about half a gigabyte the world is described rather than packed: a browser cannot hold a multi-gigabyte zip in memory. That is not much of a limitation in practice, because a .vcdbs is a single file — upload it straight into the server's Worlds folder and use the config and mods from the bundle.

Player data

Single-player character data (inventory, position, health) lives inside the .vcdbs, so it moves with the world and needs nothing extra. A server's Playerdata folder is created per player on first join, so there is nothing to bring from a single-player world.

Moving to a managed server

On a managed Vintage Story server the Worlds and Mods folders are exposed directly in the file manager, so the bundle above maps onto them one for one, and a snapshot is taken before the swap.

Check the mods survive your version → · Check a world for damage → · Build a worldconfig →

This tool: v1.3 · updated 29 Aug 2026