WorldReset
WorldReset v2.0
Presenting the world's first standalone map reset plugin! When you restart your server, if resetting is enabled in the plugin's config.yml, WorldReset automatically deletes your world folders and imports backups of them stored in '.../plugins/WorldReset/backups'. WR can reset multiple worlds or regenerate them with random seeds, perfect for minigames and mining worlds.
NOTE: In order for this plugin to work, you have to /stop then start the server. A simple /reload will not work, and will likely cause the server to crash.
Setup/Usage
A world reset couldn't be more simple! Just follow these steps:
- Copy the world folder you want to revert to when you reset the map
- Find the 'WorldReset' folder in your server's 'plugins' directory. If the folder doesn't exist, run the server once and it will be created.
- Paste the world folder you copied into the 'backups' folder in the WorldReset directory.
- Repeat steps 1-3 for your Nether and End folders if you want to reset them as well.
- List the names of any worlds you want to delete and regenerate with random seeds under the "random-seed.worlds" config node
- If you want to schedule a restart, either run the server and type /wr reset or open the config.yml (found in the WorldReset directory) and set the "reset-worlds-on-next-restart" node to true.
- Start up your server! Your world folder will be reset to the one in '.../plugins/WorldReset/backups'!
Benefits
- Resets player location and inventories to their state stored in the world backup (you can always delete player data in the backup for standard spawning)
- Much less lag than conventional reset methods - instead of rolling back an area block by block, WorldReset simply imports the entire world folder, meaning that resets take less than a second!
- Because WorldReset doesn't have to deal with individual chunks, there's no danger of chunk corruption as long as your backup world is clean
- Random seed world regeneration is perfect for mining worlds that require diamonds and other valuables to be relocated every time the map resets
Commands
Configuration nodes
Configuration nodes
- reset-worlds-on-next-restart: true/false - whether to reset worlds (or regenerate them with new seeds, if enabled) the next time the server starts up
- random-seed.enabled: true/false - whether to delete and regenerate the worlds listed below with random seeds
- random-seed.worlds: - a list of the names of worlds to be regenerated
- reset-server-when-empty: true/false - whether to reset the server after the below player count has been achieved and all players log off
- player-count-to-activate-reset: 10 - the number of players online at the same time that must be achieved in order to schedule a reset to occur when the last player logs off (this setting only matters if the above node is set to 'true')
- always-reset: true/false - whether to reset/regenerate worlds every time the server starts up
Permissions nodes
- worldreset.reload: permission to run '/wr reload' to reload the configuration
- worldreset.reset: permission to schedule or cancel a world reset, including '/wr reset now'
- worldreset.settings.view: permission to view the configuration settings ingame with '/wr settings'
- worldreset.settings.edit: permission to edit the configuration settings ingame with '/wr settings edit \<setting ID> \<setting value>'
@TheMinekings
Multi-world support is right alongside the /resetworld command in my ToDo list, but I'm currently backed up with a large plugin I'm finishing. Nonetheless, it should only be a matter of days before I'm able to release a WorldReset update with the aforementioned features.
Further down the line, by the way, is a feature that automatically resets the world at a configurable time of day. It will be quite some time before that will be implemented, however.
Can you make it multi world support i have the woosh games map and i whant it to reset evry night at 12pm so it chut be amazing of it workt!
@j6ny
There technically is a command that resets the world - /stop!
Stopping the server will always be necessary, as Bukkit doesn't reload the world folders entirely on /reload - only the plugins are reloaded. A /reload will usually cause this plugin to break (fixing that), but it works just fine with /stop.
I know what you're saying, though. I'm planning on altering the plugin so that the world only resets on next startup if you type /resetworld (as opposed to just /stop) while the server is running. I'll also have /resetworld stop the server.
Could you make a command that resets the world? like /resetworld or something? that would awesome :D