Inactive [ADMN] AutoSave v2.0.1 - Automatic World Saves [935]

Discussion in 'Inactive/Unsupported Plugins' started by cereal, Feb 14, 2011.

Thread Status:
Not open for further replies.
     
  1. Offline

    cereal

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    AutoSave is now on Bukkit Dev! Plenty of information and it is overall much better documented there than it has been here. Wiki pages really help organize all the information that is needed.


    Discuss AutoSave on Bukkit Dev and get information, files, and more from there!




    AutoSave - Automatic World Saves:
    Version: 2.0.1

    AutoSave is meant to provide a simple method to automatically save your world at a defined interval! This plugin ONLY saves to the proper world directories within the Minecraft server. It is not a backup plugin, it is meant to increase persistence and reduce the affects of a server crash.

    Features:
    • Performs a world saves (same as save-all on console)
    • Repeats the above at user defined interval!
    • Warning messages
    • Multi-World Support
    • Configurable messages
    • Option to disable broadcast message
    Download The Plugin
    Source Code

    Changelog:
    Version 2.0.1
    • Small library changes
    Version 2.0.0
    • Color Messages support!
    • Support for Multiple Permissions Plugins (natively)
    • No more version nagging
    • ASync Tasks instead of Sync Tasks (possible performance increase)
    Version 1.3.0
    • Perform save after last player leaves (quits/kicked).
    Full Changelog

    Future Release To-do List:
    • Calculate and create variable for time elapsed during save
    • Make bacon
    • Get more feature suggestions
    Configuration:

    You can configure the plugin via an XML file located at "plugins/AutoSave/config.properties".
    • message.broadcastpre: Message broadcast to all players prior to save
    • message.broadcastprost: Message broadcast to all players after save completed
    • message.insufficentpermissions: Customizable generic insufficient permissions message
    • message.saveplayers: Customizable players save message
    • message.saveworlds: Customizable worlds save message
    • message.warning: Customizable warning message
    • value.off: Customizable value of "off"
    • value.on: Customizable value of "on"
    • var.broadcast: True or False value specifying if broadcasts should be used
    • var.debug: True or False value specifying for additional console output
    • var.interval: Number of seconds between saves
    • var.permissions: Bypass permissions entirely
    • var.report: Toggles reporting thread
    • var.uuid: Anonymous identification
    • var.warntime: n time before the save happens when a warning is broadcast to players, multiple values can be passed by separating by commas
    • var.worlds: Comma seperated list of loaded worlds to be saved. * indicates ALL worlds will be saved.
    Colors:
    If you want to user colors, its simple. Just use one of the following in the appropriate location (config file):
    • Aqua: %AQUA%
    • Black: %BLACK%
    • Dark Aqua: %DARK_AQUA%
    • Dark Blue: %DARK_BLUE%
    • Dark Gray: %DARK_GRAY%
    • Dark Green: %DARK_GREEN%
    • Dark Purple: %DARK_PURPLE%
    • Dark Red: %DARK_RED%
    • Gold: %GOLD%
    • Gray: %GRAY%
    • Green: %GREEN%
    • Light Purple: %LIGHT_PURPLE%
    • Red: %RED%
    • White: %WHITE%
    • Yellow: %YELLOW%
    License:
    Copyright 2011 MilkBowl (https://github.com/MilkBowl)

    This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.


    Commands:

    Note: ALL of the below commands can start with autosave instead of save if another plugin is using the save command such as WorldEdit. This will always allow access to the in game configuration of the plugin.

    /save
    Saves the world outside of the interval.
    Requires Permission: autosave.save
    /save help
    Displays help dialogue
    /save toggle
    Toggles the automatic saves (turns off or on depending on current setting)
    Requires Permission: autosave.toggle
    /save status
    Prints status message about the current state of automatic saves
    Requires Permission: autosave.status
    /save interval {seconds}
    Sets or gets the interval setting in seconds
    Requires Permission: autosave.interval
    /save addworld [value]
    Adds world to the World Save List
    Requires Permission: autosave.world.add
    /save remworld [value]
    Removes world from the World Save List
    Requires Permission: autosave.world.rem
    /save world
    Displays the World Save List
    Requires Permission: autosave.world
    /save broadcast {on|off}
    Sets or gets the broadcast setting
    Requires Permission: autosave.broadcast
    /save debug {on|off}
    Sets or gets the debug setting
    Requires Permission: autosave.debug
    /save warn {seconds[,seconds]...}
    Sets or gets the warning time setting in seconds (warns users of an upcoming save n seconds before it happens)
    Requires Permission: autosave.warn
    /save version
    Prints AutoSave version
    Requires Permission: autosave.version

    Reporting:

    AutoSave reports minimal anonymous data to provide general usage tracking. No personal or server information is ever transmitted. The following data is provided:
    • Plugin Name (this will always be AutoSave)
    • Plugin Version
    • Bukkit Version (the full Bukkit version string)
    • Operating System
      • Name
      • Version
      • Architecture
    • Java Version
    This data helps me understand the environments in which AutoSave is used within, however you are more than welcome to disable it, either via "var.report" in the configuration file, or "save report [off|on]" from console.

    Known Issues:
    • During upgrade messages no longer are colored
      • Solution: Delete config file or add colors manually
    Permissions:

    Permissions can be disabled by manually editing the config file and setting "permissions" to false. That will completely disable Permissions. Running AutoSave without Permissions with the value to true (default) will cause the plugin to unload itself.

    Here are the permission settings, either do 'autosave.*' or use the granular permissions below:
    autosave.save: Allows the ability to save at any time
    autosave.toggle: Allows the ability to stop and start AutoSave
    autosave.status: Allows the ability to see status of AutoSave
    autosave.interval: Allows the ability to see and change interval setting
    autosave.broadcast: Allows the ability to see and change broadcast setting
    autosave.version: Allows the ability to see the version of AutoSave
    autosave.debug: Allows the ability to change the debug setting
    autosave.warn: Allows the ability to see and change the warning time setting
    autosave.world: Allows the ability to view the world save list
    autosave.world.add: Allows the ability to add to the world save list
    autosave.world.rem: Allows the ability to remove from the world save list

    This post has been edited 1 time. It was last edited by cereal Aug 26, 2011.
    bobacadodl, iKeirNez, Joe12o and 12 others like this.
  2.  
  3. Offline

    Cha0sPudd1ng

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hey Cereal,

    I get this Error on Bukkit 1538

    Code:
    22:01:58 [INFO] [AutoSave] ?aAuto-Save komplett
     >
     22:01:58 [INFO] Auto-Save komplett
     >
     22:01:58 [SEVERE] at java.lang.Thread.run(Thread.java:662)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSaveThread$1.run(AutoSaveThread.java:86)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.performSave(AutoSave.java:710)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.saveWorlds(AutoSave.java:688)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.CraftWorld.save(CraftWorld.java:546)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.save(World.java:267)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunks(ChunkProviderServer.java:201)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunk(ChunkProviderServer.java:152)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(SourceFile:84)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkLoader.a(SourceFile:140)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.a(World.java:2334)
     >
     22:01:58 [SEVERE] at java.util.HashMap$KeyIterator.next(HashMap.java:883)
     >
     22:01:58 [SEVERE] at java.util.HashMap$HashIterator.nextEntry(HashMap.java:848)
     >
     22:01:58 [SEVERE] java.util.ConcurrentModificationException
     >
     22:01:58 [SEVERE] at java.lang.Thread.run(Thread.java:662)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSaveThread$1.run(AutoSaveThread.java:86)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.performSave(AutoSave.java:710)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.saveWorlds(AutoSave.java:688)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.CraftWorld.save(CraftWorld.java:546)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.save(World.java:267)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunks(ChunkProviderServer.java:201)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunk(ChunkProviderServer.java:152)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(SourceFile:84)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkLoader.a(SourceFile:140)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.a(World.java:2334)
     >
     22:01:58 [SEVERE] at java.util.HashMap$KeyIterator.next(HashMap.java:883)
     >
     22:01:58 [SEVERE] at java.util.HashMap$HashIterator.nextEntry(HashMap.java:848)
     >
     22:01:58 [SEVERE] java.util.ConcurrentModificationException
     >
     22:01:58 [SEVERE] at java.lang.Thread.run(Thread.java:662)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSaveThread$1.run(AutoSaveThread.java:86)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.performSave(AutoSave.java:710)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.saveWorlds(AutoSave.java:688)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.CraftWorld.save(CraftWorld.java:546)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.save(World.java:267)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunks(ChunkProviderServer.java:201)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunk(ChunkProviderServer.java:152)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(SourceFile:84)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkLoader.a(SourceFile:140)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.a(World.java:2334)
     >
     22:01:58 [SEVERE] at java.util.HashMap$KeyIterator.next(HashMap.java:883)
     >
     22:01:58 [SEVERE] at java.util.HashMap$HashIterator.nextEntry(HashMap.java:848)
     >
     22:01:58 [SEVERE] java.util.ConcurrentModificationException
     >
     22:01:58 [SEVERE] at java.lang.Thread.run(Thread.java:662)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSaveThread$1.run(AutoSaveThread.java:86)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.performSave(AutoSave.java:710)
     >
     22:01:58 [SEVERE] at net.milkbowl.autosave.AutoSave.saveWorlds(AutoSave.java:688)
     >
     22:01:58 [SEVERE] at org.bukkit.craftbukkit.CraftWorld.save(CraftWorld.java:546)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.save(World.java:267)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunks(ChunkProviderServer.java:201)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkProviderServer.saveChunk(ChunkProviderServer.java:152)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(SourceFile:84)
     >
     22:01:58 [SEVERE] at net.minecraft.server.ChunkLoader.a(SourceFile:140)
     >
     22:01:58 [SEVERE] at net.minecraft.server.World.a(World.java:2334)
     >
     22:01:58 [SEVERE] at java.util.HashMap$KeyIterator.next(HashMap.java:883)
     >
     22:01:58 [SEVERE] at java.util.HashMap$HashIterator.nextEntry(HashMap.java:848)
     >
     22:01:58 [SEVERE] java.util.ConcurrentModificationException
     >
     22:01:58 [INFO] [AutoSave] ?9
    Can you fix it and update?
  4. Offline

    knutarn

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  5. Offline

    bonani

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Question; I have turned off broadcast but the message "AutoSaving" and "AutoSaving complete". I have also made the text for save BLANK, but it keeps broadcasting; why!?
  6. Offline

    IkBenThomas

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Where does it save the world?:D
  7. Offline

    kukelekuuk00

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Im curious if this plugin is updated to the new events system as the old one was removed starting CB 1944.
    Just a headsup before the coming RB which will cause quite the mess :p
  8. Offline

    cereal

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I won't be performing any updates to AutoSave. Sorry guys, but I've moved on from Minecraft. Anyone is capable of forking and continuing this plugin as it is all open sourced! Could a moderator lock and move this thread to the inactive forum?
Thread Status:
Not open for further replies.

Share This Page