Mods are the number one cause of basically everything
Before working through anything below: if you recently added, updated or removed a mod and something broke shortly after, start there rather than assuming it’s a hardware or hosting problem. Our mods guide covers dependencies and version matching, which together explain a large share of the crashes and connection failures reported here.
The five buckets
First, check the server is actually running โ in a rented host’s panel, look at Current Activity & Stats rather than assuming a connect failure means something is broken. If it’s genuinely offline and you’re self-hosting, the most common cause is port forwarding โ see the port forwarding steps in our playing with friends guide. If forwarding is set up correctly and it still fails, your connection may be on CGNAT, which blocks inbound connections entirely regardless of router configuration โ a rented server sidesteps this since you’re not the one accepting the connection.
Two normal causes and two fixable ones. Auto-save pauses of 1โ2 seconds are completely normal and happen on every Vintage Story server โ but they get dramatically worse, sometimes 15+ seconds, when the disk is running low on space, so keep at least 20% free. Beyond that, too many loaded chunks (MaxChunkRadius set too high) and entity overload from too many mobs or dropped items in one area are the two genuinely fixable causes โ both covered with exact settings in our server settings guide.
A crash that started right after installing or updating a mod is a mod problem, not a server problem โ the fix is usually reinstalling the correct version or checking for a missing dependency, both covered in the mods guide linked above. Crashes with no obvious trigger are worth checking against your Java version โ the wiki recommends OpenJDK 17 or newer for modern builds, though the game typically bundles its own required version.
The single biggest preventable cause is disabling autosave, which we’d recommend against for exactly this reason โ see our settings guide for why it’s worth keeping on despite the small performance cost. The other common cause: removing a content mod from a save that used its blocks or items leaves dangling references behind, which can corrupt the world. If you need to remove a mod, back up the world first.
Two mods touching the same recipe, block or system is the classic conflict pattern. Disable mods one at a time to isolate which one is responsible rather than guessing โ our mods guide covers installing them a few at a time in the first place specifically to make this kind of isolation easier later.
How to actually find the cause
Guessing wastes time. These are the official tools for pinning down what’s actually happening.
Run this on the server (as the owner, or in single player) to log detailed tick timing. Let it run for a while during the lag, then check server-main.txt in %appdata%/VintagestoryData/Logs for what’s actually consuming time.
The client-side equivalent, for diagnosing FPS drops rather than server lag. Use 20 if you’re usually above 60fps, or 40 if you’re usually above 30fps. Check client-main.txt in the same Logs folder afterward.
Type this before taking a screenshot of the frame profiler (Ctrl+F10) for extra diagnostic output โ useful if you’re reporting a performance issue to a mod author or your host’s support team.
Symptom โ likely cause
| Symptom | Likely cause | Fix |
|---|---|---|
| Can’t connect at all | Port not forwarded, or CGNAT | Check port forwarding; consider a rented server if on CGNAT |
| Brief pause every few minutes | Normal autosave | Nothing โ this is expected behaviour |
| Save pauses lasting 15+ seconds | Disk almost full | Free up disk space, keep 20%+ free |
| General tick lag with several players | MaxChunkRadius too high | Lower to 8โ10 in serverconfig.json |
| Lag concentrated in one area | Entity overload (mobs/items) | Clear excess entities, lower entity tracking range |
| Crash right after a mod update | Version mismatch or missing dependency | Reinstall the correct mod version |
| World corrupted after a crash | Autosave was disabled | Re-enable autosave; restore from backup if available |