Best way to reset the end on 1.9+ (1.10.2)

Discussion in 'Server & Community Management' started by takatalvi, Jul 20, 2016.

  1. Hi, I'm running a 1.10.2 server and we regularly reset the end (we keep it small and reset it about every 2 months). So far we've done 2 resets and run into various issues every time. First it was the problem with Dragon respawning using a /summon command, we know to avoid that now. Then, after another reset, we spawned the dragon using the crystals, but found out there are no gateway portals being created to take players to the outskirts. I believe this is due to some settings in the end's level.dat, but not sure which.
    So I'd like to reset the end in a few days and I'm thinking how to do it - here are my requirements:
    • I want it to behave as if it were a completely new, untouched, unvisited world (remove all traces of players' interactions, dragon fights etc),
    • I want the portals to work as on vanilla singleplayer (the central portal to take you to the credits, and after every dragon fight, a gateway portal should be created),
    • I would like to change the seed, as I suspect some of my players have screenshots of the current end (dynmap) and would simply visit the previously visited cities for looting,
    • Delete all homes and logout locations saved in end (editing Essentials userdata, done it before).
    So, I suppose this should be the process:
    1. I stop the server and edit the Essentials userdata of players who have a saved home or a logout location in end.
    2. I delete the entire world_the_end folder, this will also delete level.dat and everything else.
    3. I start the server and visit end, make sure everything is fresh and new.
    4. I set the world border to the desired size.
    5. I stop the server again, delete DIM1 in world_the_end to get rid of the generated chunks.
    6. I edit level.dat to change the end's seed and also delete end's dynmap renders.
    7. I start the server, and now everything should be as intended. (?)
    Do you think this process is correct? Did I miss/misunderstand something? If someone has reliable experience with this, please review the steps and advise. I would like the end reset to take as little time as possible, and not need any further corrections (first time right).

    #1 takatalvi, Jul 20, 2016
    Last edited: Jul 20, 2016
  2. I assume you have a Plugin to manage Multiple worlds. (I use Multiverse)

    Even though my "End" works a bit Differently my Solution for the FarmWorld would fit your needs.

    I run a Script that recreates the Farmworld every week. The Script utilizes the Multiverse Commands via Console.

    First it uses: "mv delete world_xxx" to DELETE the world, and then it creates the world anew with multiverse. I add a random seed there.

    Thatway I dont need to shut down the Server to reset the Farmworld.
    To resolve the Home Issues I block /sethome with WorldGuard on the entire farmworld.

    For the Dynmap, I would just disable the END dynmap.

    Edit: The Logout locations, I would suggest your players not to Log out in the END for longer periods of time. :p
  3. First, thanks for your reply, I appreciate it.
    Unfortunately I don't use multiple worlds, I only have the standard basic setup - overworld, the nether and the end. My server is a semi-vanilla survival with emphasis on buliding and the community. So, we keep the overworld as the main stage where everyone lives and works on their projects. The nether and the end are used for mining and looting, and we don't recommend people to settle there or build large projects. The rules are a bit different there, and we also take these worlds differently - we keep them smaller and we reset them after time, mostly due to some of our megalomaniac players who are able to loot 100km2 of the end in a few hours. This leaves no end cities to explore for the normal-paced or new players.
    That was just to explain why we do it.
    To finally address your reply (sorry I made the introduction so long), I believe that in essence it answers my initial question, regarding what should be deleted and how. I will delete the whole world_the_end folder and follow the steps I wrote out (maybe I'll make it a bit simpler). And since I do this just a few times a year, I think I will do it manually after all.
    Regarding the homes and logout locations: I already did this once, I search all the Essentials userdata files for the string "world_the_end", and it will give me all those that either have a home there, or logged out from there. There is usually not more than 10 of these, so it's a matter of a few minutes. I simply delete the homes, and replace the logout locations with the spawn location. I know, editing .yml files can be tricky, but so is editing configs and we still do it :)
  4. Well, if you just Reset the map a few times a year than there shouldn´t be a Problem doing it Manually.

    But I dont really think you would need your Step 5 and 6.
  5. I was just thinking like this - when I delete the whole end, the server will create the end's files (along with level.dat) only after server start. Plus it will also generate a few chunks around the center coordinates. I want to change the seed of the end (step 6), and for that I need level.dat, so starting the server to get the file is unavoidable, I think. Unless I have it prepared beforehand. And when I change the seed, I would delete the small number of generated chunks, just to make sure the land is smooth and whole according to the new seed :)
    So far, I think the process I described is maybe a bit too careful or thorough, but in the end it will give me the desired results. After all, I just wanted someone to review my steps, to see if I missed something. Thanks for your input, LanToaster, it gave me a better overview :)
  6. I would think when you just delete the world, it "Should" use a new random seed. But anyhow.

    That way you can also skip some steps.
    If you "Backup" your Empty world_end that you make in Step 6. You can just Delete the Old one, and copy over the Backup with a changed seed.