Jump to content

Jack_Frost

Members
  • Posts

    5
  • Joined

  • Last visited

Jack_Frost's Achievements

Wolf Bait

Wolf Bait (1/9)

1

Reputation

  1. I am running a large server and ran into a problem of the server's save file being corrupted, so I figured I would document my diagnosis and fix. Symptoms New generated chunks being nothing but void /wgen regen generating empty chunks Able to place blocks in empty chunks Can move freely inside empty chunks No error logs in world gen or server main log Diagnosis steps: First step I did was check to see if it was chunk corruption or a failure to generate new chunks. I did so by seeing if blocks could be placed inside the chunks that were showing signs of errors I tested /wgen regen in several already generated older chunks to see if the problem was isolated to the world generation or just the regen command I started a fresh save file with the same exact mods, configs, and seed to see if the issue was the server backend or a save file issue After narrowing the issue down to the save file I read this wiki doc to see how the save file is contructed. https://wiki.vintagestory.at/Modding:VCDBS_format After seeing the different tables and what purpose they serve, I concluded that the MapRegion table was corrupted. The Fix Generate back up of server save using: Stop the server Rename Default.vcdbs to: oldsave.vcdbs Generate a new save file with the same mods, configs, and serverconfig. This can be done by starting the server again after changing the name of the save; afterwards stop the server. *It is important that if you are changing minor terrain gen that you change it before this step. Rename the new Default.vcdbs to newsave.vcdbs Download SQLite3 via terminal command: (I am on a Ubuntu server) Drag the old save file and the new save file into the same folder Run this SQL command: sqlite3 oldsave.vcdbs <<'SQL' ATTACH DATABASE 'newsave.vcdbs' AS newdb; DELETE FROM mapregion; INSERT INTO mapregion (position, data) SELECT position, data FROM newdb.mapregion; DETACH DATABASE newdb; SQL You can check if it worked by running: sqlite3 oldsave.vcdbs "SELECT COUNT(*) FROM mapregion;" It should have a really small number. mine was 16 Delete the new save file as it is no longer needed. It is named "newsave.vcdbs" Rename the old save file back to: "Default.vcdbs" Start the server Run over to the old empty chunks and stand inside them. Regenerate these chunks using the /wgen regen command The empty chunks should regenerate as they did before.
  2. Yes I did, but nothing was updating. I even exported the world and ran it single player to try the pruning
  3. My girlfriend and I are running on a world that we are 4 years into and have a massive base. This world is our very first and we went into the game together completely blind. This had the unfortunate side effect of running a server with default setting for terrain generation. We have added plenty of mods including better ruins and rivers. We were able to get these mods to generate using the /db prune command. Everything regenerated with the mods however the world generation config also changed. We wanted oceans so that the rivers go somewhere, and we can use the really cool sail boats. I cannot get the prune command to delete unused chunks and regenerate with the new world config. If I do /wgen Regen command it works for individual chunks, I want to do the whole world besides our base. Am I not understanding the proper function of the prune command? I really don't want to do /wgen because our world has grown so large. its a 7gb world now and we are 4 years in. Restarting the world is not an option for us. Are we just SOL on oceans? I see that the prune worked for the rivers and ruins but why not the rest of the world gen?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.