SaveIt
Description
Hey everyone. I would like to introduce you guys, my first plugin.
Save It (SaveIt) or "Saving It" is an Advanced Lightweight Automatically Saving Plugin. Basically
does Save-All(Like that), but with much more that you could imagine :) !
SaveIt is the first AutoSave plugin, that cares about the performance, and has an own way to do it.
Features:
- World Saving
- AutoSave in minutes
- Multi-World Support
- Supports All Permission Plugin
- You can Disable the Default Bukkit Auto Save
- Saves all Players
- Per World Save Configuration
- Enable/Disable Saving Messages
- Custom Messages
- Anti-Config Error
- In-Game Help
- Supports Colors in the Config
- Save On Disable
- Save All Worlds Option
- In-Game Config Editor
- Works on Every Bukkit Build
- Forge Support!
- Now with Backup Support!
- Special Features:
- Saves On X Quit
- Saves On X Login
- Saves On X Block Place (Any kind of Block)
- Saves On X Block Break (Any kind of Block)
- Save Your Own Data With a Command
- Debug
- Power Save Mode
- Tweaked Performance Source is available again on Github
Newest Build:
Version 1.1.7
Download Here
Changelog:
Welcome to the Next Generation of SaveIt!
New Features of SaveIt are:
- Code Tunes
- Completely reworked backup system, much faster, no more path bugs.
- If you need a fresh config, or just to view it, visit: https://www.dropbox.com/s/lt0g6gvoe2ci12g/SaveItConfig.yml
- Please Read the Documentation: https://www.dropbox.com/s/scjz1qr4ez5ygox/Saving%20It%20Documentation.pdf
Future Release To-do List:
- Request Please
Configuration:
Permissions:
saveit.save - For /saveit save command
saveit.reload - For /saveit reload command
saveit.selfsave - For /saveit selfsave command
saveit.manage - For /saveit [add/remove/list] commands
saveit.backup - For /saveit backup command
Commands:
/saveit - Nice Command Lister
/saveit save - Saves the Configured Worlds
/saveit reload - Reloads Config
/saveit selfsave - Saves Your Data
/saveit add WORLDNAME - Adds a world to Config
/saveit remove WORLDNAME - Removes a world From Config
/saveit list - Lists all Current Worlds in Config
/saveit backup - Creates a Zip of all your Server Folders
/saveit update - Download the Latest Update Automatically
Special Thanks To
- rfsantos1996 - Reporting me about SaveIt's Performance bug :D Thank you mate!
- Chrispm84 - Helping me to test SaveIt out :) | Check his Nice Server out please :)Click here
- DerPavlov - Suggesting, and helping a lot :D | Check his Cannons plugin out!
- Sniperific (Tencao) - Reporting me about SaveIt's Forge Compatibility. Thank you very much! :D
- BukkitSE - For the tutorial! :D
- DoctorCooper - Reporting the problem with the lck files on backup. Check his Server out! Click Here Thank you very much! :D
- TheOnlyRealTGS - Helped me to test the performance on his server. Check his Server out! Click Here Thank you!
- For all to those who helped me to improve SaveIt by requests, or bug reports!, or just uses my plugin! :)
Performance
Thanks to BukkitSE!
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
With the problem that DoctorCooper was having you addressed it in 1.1.6 for MC 1.7. Will this version also work in MC 1.6.4? Stupidish question I know but wondering.
@kphoenix137
SaveIt automatically sets autosave to 0 in bukkit.yml if you turn DisableDefaultWorldSave: true. You can know when it's turned on: If saveit saves, then a console message appears in the log which bukkit sends, that another plugin saves too. Weird, but i don't get that message when i do DisableDefaultWorldSave: true.
Bukkit's auto save feature keeps running every 10 minutes even though I set autosave: false in bukkit.yml and DisableDefaultWorldSave: true.
Also tried autosave: 0 and autosave: -1 in bukkit but the damn thing still keeps default auto saving every 10 minutes.
@DoctorCooper
A process has locked a given file. Sent a message to you
Problem solved. Changelog at 1.1.6
This happens every time I try to save/backup. How do I fix this?
saveit backup
[22:30:49 INFO]: [SaveIt] StandBy, backup starts in 5 seconds... [22:30:54 INFO]: Starting world save... [22:30:54 INFO]: World save completed! [22:30:54 INFO]: Warning! Backup has been executed! [22:30:54 INFO]: CONSOLE: Disabled level saving.. [22:30:58 WARN]: java.io.IOException: The process cannot access the file because another process has locked a portion of the file [22:30:58 WARN]: at java.io.FileInputStream.readBytes(Native Method) [22:30:58 WARN]: at java.io.FileInputStream.read(Unknown Source) [22:30:58 WARN]: at java.io.BufferedInputStream.fill(Unknown Source) [22:30:58 WARN]: at java.io.BufferedInputStream.read1(Unknown Source) [22:30:58 WARN]: at java.io.BufferedInputStream.read(Unknown Source) [22:30:58 WARN]: at java.io.FilterInputStream.read(Unknown Source) [22:30:58 WARN]: at me.dretax.SaveIt.BackUp.addFolderToZip(BackUp.java:15 0) [22:30:58 WARN]: at me.dretax.SaveIt.BackUp.addFolderToZip(BackUp.java:13 8) [22:30:58 WARN]: at me.dretax.SaveIt.BackUp.addFolderToZip(BackUp.java:13 8) [22:30:58 WARN]: at me.dretax.SaveIt.BackUp.backup(BackUp.java:121) [22:30:58 WARN]: at me.dretax.SaveIt.BackUp.backupdir(BackUp.java:100) [22:30:58 WARN]: at me.dretax.SaveIt.Main$5.run(Main.java:245) [22:30:58 WARN]: at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.ru n(CraftTask.java:53) [22:30:58 WARN]: at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftSchedul er.mainThreadHeartbeat(CraftScheduler.java:345) [22:30:58 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.u(Minecr aftServer.java:577) [22:30:58 WARN]: at net.minecraft.server.v1_7_R1.DedicatedServer.u(Dedica tedServer.java:250) [22:30:58 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.t(Minecr aftServer.java:535) [22:30:58 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.run(Mine craftServer.java:447) [22:30:58 WARN]: at net.minecraft.server.v1_7_R1.ThreadServerApplication. run(SourceFile:617) [22:30:58 INFO]: Backup Finished! [22:30:58 INFO]: CONSOLE: Enabled level saving.. [22:30:58 WARN]: Can't keep up! Did the system time change, or is the server ove rloaded? Running 3386ms behind, skipping 67 tick(s)
save-on
[22:31:05 INFO]: CONSOLE: Enabled level saving..
saveit backup
[22:31:07 INFO]: [SaveIt] StandBy, backup starts in 5 seconds... [22:31:12 INFO]: Starting world save... [22:31:12 INFO]: World save completed! [22:31:12 INFO]: Warning! Backup has been executed! [22:31:12 INFO]: CONSOLE: Disabled level saving.. [22:31:15 WARN]: java.io.IOException: The process cannot access the file because another process has locked a portion of the file [22:31:15 WARN]: at java.io.FileInputStream.readBytes(Native Method) [22:31:15 WARN]: at java.io.FileInputStream.read(Unknown Source) [22:31:15 WARN]: at java.io.BufferedInputStream.fill(Unknown Source) [22:31:15 WARN]: at java.io.BufferedInputStream.read1(Unknown Source) [22:31:15 WARN]: at java.io.BufferedInputStream.read(Unknown Source) [22:31:15 WARN]: at java.io.FilterInputStream.read(Unknown Source) [22:31:15 WARN]: at me.dretax.SaveIt.BackUp.addFolderToZip(BackUp.java:15 0) [22:31:15 WARN]: at me.dretax.SaveIt.BackUp.addFolderToZip(BackUp.java:13 8) [22:31:15 WARN]: at me.dretax.SaveIt.BackUp.addFolderToZip(BackUp.java:13 8) [22:31:15 WARN]: at me.dretax.SaveIt.BackUp.backup(BackUp.java:121) [22:31:15 WARN]: at me.dretax.SaveIt.BackUp.backupdir(BackUp.java:100) [22:31:15 WARN]: at me.dretax.SaveIt.Main$5.run(Main.java:245) [22:31:15 WARN]: at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.ru n(CraftTask.java:53) [22:31:15 WARN]: at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftSchedul er.mainThreadHeartbeat(CraftScheduler.java:345) [22:31:15 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.u(Minecr aftServer.java:577) [22:31:15 WARN]: at net.minecraft.server.v1_7_R1.DedicatedServer.u(Dedica tedServer.java:250) [22:31:15 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.t(Minecr aftServer.java:535) [22:31:15 WARN]: at net.minecraft.server.v1_7_R1.MinecraftServer.run(Mine craftServer.java:447) [22:31:15 WARN]: at net.minecraft.server.v1_7_R1.ThreadServerApplication. run(SourceFile:617) [22:31:15 INFO]: Backup Finished! [22:31:15 INFO]: CONSOLE: Enabled level saving..
Seems like not saveit cause the problem. One of my plugin had some issues and crashed the server. Saveit worked properly and did all was made for.
@jacob_vejvoda
Nope, its multiple, but you can set it to delete files older than x days. It zips everything and you can add exceptions to it. Zipped..You should read the doc next time.
When saving dose it over-right the old saves? Or are there multiple? Also dose it save your plugins? Are saves zipped up?
@dretax
Thank you :)
@Akmon Few sec.... One of the admins deleted it accidentaly... @mranimalux If you can tell me when does it happen (save, backup, etc, config.yml post) i can help. Also, so there are no errors huh?
Hi, could it be that the 1.1.5 is not online anymore? I need it to fix the "say hello" bug, so please upload it :)
Hello, I am runing the lastest version of 1.6 bukkit. For some reason, sometimes my server crashes due your plugin. Where Can I find some error logs or anything that could help you?
@MrSamCraft
@NewMilenium
Thanks for both of you! :)
Nice reaction, dretax. You're really fast! Thanks for your work.
@dretax
Wheres the link :) It's not showing in the side.
EDIT: Found it, sorry! Keep up the good work!
Holy f*ck. How didn't I even notice that? I do weird stuffs when I'm drunk lol. Pushing newest version. I'm really Sorry who had trouble with this. Thanks for the report.
You can download it now if you want.
@NewMilenium
Forced to say Hello? O_o Okay, thats weird, my plugin shouldnt do that. Are you sure that is coming from my plugin? My friend told me that he had the same problems. Well im gonna just look through the source if i was an idiot or drunk and i did add that. But still....WEIRD
Hello, I wanted to thank you about this plugin, but in fact, your forced "say Hello or you can't chat" in Minecraft multiplayer chat has wasted so much of my time it's very irritating. It's sad because everything else in your plugin is perfect.
Can you consider at least putting an OPTION in your config so we can CHOOSE..???
I guess you were mad at people not saying "Hello" in your servers...
@TheOnlyRealTGS
World save complete only gets sent when saveit executed the savings for all the worlds and players, while tweaking performance. I don't know how many players do you have in your world folder or how big your map is.
Even after it have said "World save complete" sometimes it takes longer to save