WorldSaver
WorldSaver - Schedules Backups and Saves:
Version: v1.4 (1.1-R4)
This plugin will save all active worlds on a schedule and also back them up. This originally started as a small project for a server I play on, and I guess I went a little overkill and made a full-out plugin, so I went ahead and decided to release it here. My first plugin, I appreciate feedback! Making a Bukkit.dev page right now.
Features:
- Force a save of all worlds (does not affect scheduled saves)
- Force a backup of world (does not affect scheduled backups)
- Schedule saves of all worlds
- Schedule backups of world
- Get the current date/time of the server
- Save Plugins folder [without .jars to save space]
- Save Plugins folder [with .jars]
- Warning message before save/backup
Download the plugin HERE
- Source Code:
https://github.com/knoxcorner/WorldSaver
Released under
- GNU GENERAL PUBLIC LICENSE Version 3
- Commands:
/ws help [page#] (Shows help for worldsaver)
/ws forcesave (forces a world wide save)
/ws forcebackup (forces a backup of the server
/ws setsaveminute [#of min] (set the save interval (minutes))
/ws setbackuphour [#of hours] (set the backup interval (hours))
/ws saveroutine (toggles save routine on/off)
/ws backuproutine (toggles backup routine on/off)
/ws servertime (returns the current time of the server)
/ws forceoptionssave (Forces a save of WorldSaver's options)
/ws reloadoptions (Reload's WorldSaver's options)
/ws viewoptions (Shows current settings for WorldSaver)
/ws plugininfo (Shows plugin details)
/ws optionsdefault (Set options back to default)
/ws autosavemanage (Toggles whether to let worldsaver manage the /save-off /save-on of all worlds (When enabled and a saveroutine is on, it will turn /save-off otherwise if there are no saveroutines, it will /save-on automatically)
- Permissions:
None yet! Only ops can use it, hopefully I will have it next version.
- Source Code:
For next version...
- Max number of backups to keep
- Proper permissions (not just Ops)
- Stop server on next backup
- Implement the disable command in the config
- GIVE ME MORE IDEAS
- Change log:
Version 1.4
- Change log:
- Backups improved
- Editable messages
- Some other stuff I can't remember
Version 1.3
- Options now accessible from config.yml
- Ingame savepluginfolder(all) command rempved
- Changed togglesaveroutine and togglebackuproutine to saveroutine and backup routine
- Added options in config.yml for turning on/off broadcasts messages
- Exclude worlds options in config.yml
- Exclude plugins options in config.yml
- Fixed a stupid mistake where it would backup the plugins folder for as many times as active worlds you have (Should mean a big difference if you have multiple worlds)
Version 1.2
Delay between broadcast message and save/backup
Set options to default /ws optionsdefault
Now saves players PROPERLY
Send important warning to online Ops
Let WorldSaver manage /save-on and /save-off
Version 1.1
- More organized commands
- Now saves/backs up all active worlds
- Ability to save Plugins folder [with/without .jars]
- /ws viewoptions feature
- Better timestamps
- Broadcast message (possibly lol) fixed
- Checks for outdated options Version 1.0
- Release
@ghostyboy5
hi ok just doing that now.
Its from nearly 24 hours ago tho.
I have backup interval set to 6 hours and the save to 20 mins.
Are there some kind of incremental backups ? are they what "saves" are?
Downloaded plug-in, when using the backup command it only backup's one of my worlds When in Version 1.2 it is said to save all active worlds and plug-ins folder??
@ManBeastPigDev If by restore, you mean restore a backup. You would need to manually replace your current files with the backed-up files.
Not sure if this is a stupid question, but there doesn't seem to be any restore commands.
How do you restore?
I have a realy nice idea for you, make it possible to backup more worlds! i need that realy hard thank you :)
Is it possible to get some permissions for this? Like not only ops can use it but my group (PermissionsEx) can use the commands as well? I'm trying to get rid of the /op and /deop-thing so I can manage multiple kinds of administrators/moderators/whatever.
So many little bugs stopping proper functioning, please update this, it's one of the best savers I'd found in the past but now it has issues.
there are enoug fixes to do so you could read throug the whole comments to see what to do XD
Sorry all, I have kind of abandoned this project for some time now, but good news, I'm picking it back up again. Expect to see this with lots of improvements soon
This plugin does not backup all worlds, can you fix that? Can you add permissions? Does it save all worlds or just the world named world?
Can you add .7z compression? It works REALLY well for Minecraft saves (From personal experience, just squeezed the 181MB server map into 10.1MB, 5% compression rate holy shit). There is also a Java SDK so shouldn't be too hard.
where can i config auto messages? i wana translate them
Great plugin, and I've used it ever sense I could get my hands on it. Still works with the latest build of bukkit, but I'd like to ask if you plan on optimizing it for the latest build?
also might want to cool the time it saves it saves like every 10 minutes and i have it set to world save every 12 hours and i am using this on 1.2.4
Nice plugin!! would be nice if you could have it set to not save or backup when players are offline!!
Max backups to keep, please add this soon. Its in ur todo so good. Any est of time. Also HUGE suggestion, just make the command /backup, /backup reload. doing /ws is counter intuitive. ALSO im pretty sure if you compress em, you can make it World edit compatable for snapshots.
IDEAs
-change commands as stated above
-Make world edit compatible as stated above
-save before backup
-stop backup when no one is on
-Better configurable backup cylce <--you have it set for 6 hours, what if i want 25 minutes?
pleaze update 1.2
Backups aren't working, everytime it tries I get this error:
2012-03-11 05:48:23 [SEVERE] null java.io.IOException: The process cannot access the file because another process has locked a portion of the file at java.io.FileInputStream.readBytes(Native Method) at java.io.FileInputStream.read(Unknown Source) at servm.knoxcorner.worldsaver.saveScheduler.copyFolder(saveScheduler.java:150) at servm.knoxcorner.worldsaver.saveScheduler.copyFolder(saveScheduler.java:136) at servm.knoxcorner.worldsaver.saveScheduler.run(saveScheduler.java:78) at com.bergerkiller.bukkit.nolagg.logging.TimedWrapper.run(TimedWrapper.java:17) at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:137) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:509) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:441) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
Anything you can do to help?
@Mr_Spock
I am using it on the beta build of bukkit. Working Fine.
So does this work in the latest version of Minecraft (1.2.3)? Looks useful. Thx, Mr. Spock