Code Monkey home page Code Monkey logo

timedrestore's Introduction

TimedRestore

TimedRestore is a plugin for the Minecraft wrapper Bukkit that allows adminstrators to configure the automatic restoration of WorldGuard regions to a previous WorldEdit snapshot. This is useful to reset guest or other public areas back to a known good state.

Features

  • Simple and easy to configure.
  • Utilises cron4j for flexible scheduling of restore tasks.
  • Restore a number of regions in one task.
  • Use any snapshot that WorldEdit supports.
  • Automatically teleports players out of regions which are being restored.

License

TimedRestore is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

TimedRestore is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Documentation

Many of the features specific to TimedRestore are documented on the website. If you are looking to change the messages used in TimedRestore or localise the plugin into your own language you will want to look at this page instead.

Installation

Before installing, you need to make sure you are running at least the latest recommended build for Bukkit. Support is only given for problems when using a recommended build. This does not mean that the plugin will not work on other versions of Bukkit, the likelihood is it will, but it is not supported.

Getting the latest version

The best way to install TimedRestore is to get it direct from my website.

Alternatively you can download the latest version from BukkitDev.

Getting older versions

Older versions are available as well, however they are not supported. If you are forced to use an older version for whatever reason, please let me know why by opening a issue on GitHub.

Building from source

You can also build TimedRestore from the source if you would prefer to do so. This is useful for those who wish to modify TimedRestore before using it. Note it is no longer necessary to do this to alter messages in the plugin. Instead you should read the documentation on how to localise the plugin instead. This assumes that you have Maven and git installed on your computer.

git clone git://github.com/grandwazir/TimedRestore.git
cd TimedRestore
mvn install

Reporting issues

If you are a server administrator and you are requesting support in installing or using the plugin you should make a post in the forum on BukkitDev. If you want to make a bug report or feature request please do so using the issue tracking on GitHub.

timedrestore's People

Contributors

grandwazir avatar

Watchers

 avatar

Forkers

eliadil

timedrestore's Issues

TimedRestore fails to initialize on Spigot 1.8

... and throws the following exception.

[20:04:30] [Server thread/ERROR]: Could not load 'plugins/timed-restore-1.0.1.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.ExceptionInInitializerError
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:135) ~[spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:329) ~[spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) [spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.loadPlugins(CraftServer.java:290) [spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at net.minecraft.server.v1_8_R1.DedicatedServer.init(DedicatedServer.java:152) [spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:494) [spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_75]
Caused by: java.lang.ExceptionInInitializerError
    at java.lang.Class.forName0(Native Method) ~[?:1.7.0_75]
    at java.lang.Class.forName(Class.java:274) ~[?:1.7.0_75]
    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:64) ~[spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    ... 6 more
Caused by: java.util.MissingResourceException: Can't find localisation.timedrestore.TimedRestorePlugin bundle
    at java.util.logging.Logger.setupResourceInfo(Logger.java:1537) [?:1.7.0_75]
    at java.util.logging.Logger.<init>(Logger.java:267) [?:1.7.0_75]
    at java.util.logging.Logger.<init>(Logger.java:261) [?:1.7.0_75]
    at name.richardson.james.bukkit.timedrestore.utilities.logging.LocalisedLogger.<init>(LocalisedLogger.java:61) ~[?:?]
    at name.richardson.james.bukkit.timedrestore.utilities.logging.LocalisedLogger.getLogger(LocalisedLogger.java:38) ~[?:?]
    at name.richardson.james.bukkit.timedrestore.TimedRestorePlugin.<clinit>(TimedRestorePlugin.java:55) ~[?:?]
    at java.lang.Class.forName0(Native Method) ~[?:1.7.0_75]
    at java.lang.Class.forName(Class.java:274) ~[?:1.7.0_75]
    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:64) ~[spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot-1.8-R0.1-SNAPSHOT.jar:git-Spigot-a3168ab-e1070b9]
    ... 6 more

I need TimedRestores' functionality for a museum exhibition in which we want to reenact a devastating explosion that happened in 1654 in Delft, The Netherlands. On 12 October a gunpowder depot in the Northwest part of town exploded thereby destroying the nearby neighborhood. The idea is to rebuild the depot and its surroundings in Minecraft and let visitors walk around town during the time of the explosion. Once the building explodes I'd like to be able to automatically reset the world so that other visitors can experience the devastating event.
I'm looking for the most elegant way to achieve this. TimedRestore seems to be it.

Are you planning to make the plugin compatible with the latest Spigot releases? I'd love to aid you but I'm not a Java/Minecraft dev. :)

Suggestion to make the plugin better

This plugin is perfect, however, would it be possible to add a feature where you can force load a snapshot without waiting a period of time?

For example, there are 2 modes. Command load and scheduled load, and with the command load, you could do a command like /forceload [region] [snapshot] or /reset [region] [snapshot]. This could have permissions like timedrestore.forceload (or .reset).[region].[snapshot], or timedrestore.forceload.[region].* to have access to all snapshots for that region, or timedrestore.forceload.. to have permission to load all snapshots for all regions. This would be perfect for my server, otherwise, good work on the plugin, it's great for what I need it for - but this enhancement would make it even better!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.