Menu
 

World Generation Corruption

Fix Hytale World Generation Corruption

A damaged world shows up as chunks that will not load, void areas, or a server that stops during start-up. This guide covers what the Hytale server itself offers for finding and repairing damaged chunks, from the server files of build 0.7.3, and how to keep good backups so a bad save never costs you the world.

Understanding World Corruption

Worlds are damaged by server crashes mid-save, a full disk, killing the process instead of stopping it, mod or plugin conflicts, and failing storage or memory. The world lives in universe/worlds/<name>/ in the server's working directory; each world has its own config.json next to its chunk storage.

Solution 1: Read the Log

The server writes to the logs/ folder. These are the lines that point at world damage:

  • Failed to load chunk! x, z and Failed to load chunk section!: a chunk could not be read and is skipped.
  • Failed to recover a chunk at ...: a recovery run could not fix one.
  • Skipping corrupted entity ... body failed to decode: the chunk loaded but one entity in it did not.
  • Failed to verify world NAME, n/m chunks corrupted: the result of a verify run, see below.

Players who fall through terrain or see void where a base stood are usually hitting the first kind: the chunk was skipped and, depending on the world's settings, regenerated.

Solution 2: Back Up Before You Touch Anything

  1. Stop the server with /stop so it saves and closes cleanly.
  2. Copy the whole universe folder somewhere else, with a date in the name.
  3. Only then try the steps below, on the server or on the copy.

The server can also make backups on a schedule. Start it with --backup, set the interval with --backup-frequency (minutes, default 30), the folder with --backup-dir, and how many to keep with --backup-max-count (default 5) and --backup-archive-max-count (default 5). The same settings live under Backup in config.json as Enabled, FrequencyMinutes, Directory, MaxCount and ArchiveMaxCount, and /backup runs one on demand. To restore, stop the server, replace the damaged world folder with the backup copy and start again.

Solution 3: Verify and Recover With the Server's Own Tools

The server can check a world and exit, without letting players in:

java -jar HytaleServer.jar --assets Assets.zip --verify-worlds

It loads every world, checks every chunk and logs the Failed to verify world ... chunks corrupted line for a damaged one, then shuts down with an error. Adding --recovery-mode turns the check into a repair. The option only works together with --verify-worlds, and takes one of two values:

  • FROM_BACKUP_OR_REGENERATE: each broken chunk is removed and loaded again from the newest backup zip that holds it, searching the backup folder and its archive subfolder. It logs Managed to recover a chunk at x, z on success and Failed to recover a chunk at x, z when no backup has it, and that chunk is then left for the world generator. It needs a backup folder: with none it stops with "No usable backups", and on a storage type that cannot restore single chunks it asks you to restore the whole backup instead.
  • REGENERATE: each broken chunk is removed and the world generator makes it again, so anything built in it is lost.

If the recovery itself fails, the server puts the world back the way it was. Run it on a copy first. Without --recovery-mode the run only counts corrupted chunks and stops.

Two more switches live in the world's own config.json. CrashRecovery sets what a world does when it crashes: Mode and Fallback take None, Reload or Shutdown, with MaxAttempts and RetryDelaySeconds controlling the retries. And /world settings chunkSaving turns chunk saving off or on for a world while you investigate.

One chunk at a time, in game

For a single bad spot, the /chunk command works on chunk positions (a chunk is 32 blocks wide, and relative coordinates are accepted):

  • /chunk info <x z> shows information about a chunk.
  • /chunk regenerate <x z> regenerates it from the world generator, which discards what was built in it.
  • /chunk load <x z> and /chunk unload <x z> load or unload one, /chunk marksave <x z> marks it to be saved and /chunk resend sends the chunks to a player again.
  • /chunk storagestats dumps statistics from the active chunk storage, which helps when saves are slow or failing.

There are no /world validate, /world scan, /world repair, /world regenerate, /world fix or /world info commands. The real /world sub-commands are list, add, remove, prune, load, setdefault, save, pause, config, settings, perf, tps and rocksdb.

Solution 4: Repair the Saved Chunks Themselves

If the damage is already in the saved world rather than in the generator settings, our free Hytale World Doctor reads the region files the way the server does, in your browser. It quarantines chunks the game itself cannot parse, so the server regenerates them instead of failing on load, and rebuilds the surface heightmap that makes a world render as if you are underground. Nothing is uploaded.

Check the hardware too: run a disk check (fsck or chkdsk), look at S.M.A.R.T. health, and test the RAM if corruption keeps coming back on a healthy server.

Solution 5: Prevention

  • Always stop the server with /stop; never kill the process.
  • Keep several backup generations and test a restore once.
  • Watch disk space: a save to a full disk is a common cause.
  • Remove a mod or plugin you suspect from mods/ before blaming the world.
  • Run --verify-worlds on a copy of the world after any crash.

Troubleshooting Table

Log lineMeaningWhat to do
Failed to load chunk!One chunk could not be readRestore from backup, or recover that chunk with --verify-worlds --recovery-mode
Failed to load chunk section!Part of a chunk is damagedSame as above
Skipping corrupted entityAn entity in a chunk failed to decodeThe entity is dropped; restore from backup if it mattered
Failed to verify world ...The verify run found corrupted chunksRecover on a copy, then replace the world

Protect your Hytale server worlds from corruption with regular backups, a clean shutdown habit, and a verify run after any crash.

Tired of fighting this issue every patch?

Run a managed Hytale server with us. We handle the patches, mod-version pinning, save backups, and DDoS protection. Set up in minutes, multiple datacenter regions, no contract.

See Hytale hosting plans →
Top