RegenBlock
Part of the Minds of Chimera Project (dev)
CodeBlocks | MOCPlaytimeTracker | MOCDBLib | RegenBlock | MOCGoodEats | MOC3DImporter | ImageImport | MOCKiosk | MOCRater | MOCFizziks | GravitySheep | MOCChemistry | MOCRegistry
RegenBlock allows a creation of regions within Minecraft worlds that have a certain re-spawn timer assigned to them. Once a block in the region is destroyed by a player or a new block is placed it will regenerate to the old state after the timer is up.
Example uses
Regeneration of natural resources in certain areas, resetting of region to an earlier state - in a tutorial area on my server, there is a broken bridge that has to be repaired by the player, but after the player does so the bridge would normally remain fixed for the next player that does the tutorial, with RegenBlock I am able to "regenerate" old broken bridge. Can be possibly used as anti-griefing to some degree, but it will only check events associated with played placing or destroying blocks, not tnt, lava fire etc.
Permissions
regenblock.self - all or nothing permission for the use of any commands
Commands
(all at op level)
- Selection
- /rb select (ex,ey,ez) - Starts/stops player's selection mode. ex/ey/ez will expand selection in that direction. Y is vertical.
- /rb listselection - Lists player's current selection points.
- Editor
- /rb edit - Puts you into editor mode that allows you to change blocks in a region without triggering the re-spawn.
- Info
- /rb info - Print out information about the region in front of the character
- /rb list - lists all regions
- Global Blacklist
- /rb blacklist add/remove (id id id ...) - adds/removes supplied block IDs. Blacklisted blocks will be ignored by the plugin and not regenerated.
- Reload
- /rb reload - Reloads the configuration file. Use this if you updated regions through config.yml and have to reload it.
- Region management
- /rb create (name) [re-spawn time] - Creates a region based on your selection from /rb select
- /rb remove (name) - removes region from the list
- /rb type [typeId] - sets region type, 0 for normal, 1 for mine. Mine will regenerate only upwards and with random blocks that you specify with /rb spawnblock
- /rb sync [0/1/2/3] - sets region to regenerate all at once or not, 0 - normal operation, 1 - all blocks re-spawn at once based on first block broken, 2 - same as 1, but based on last block broken, 3 - blocks re-spawn in normal order, but shifted in time based on last block broken.
- /rb modify (name) [re-spawn time] - modify existing region
- /rb modify time (name) (re-spawn time) - modify existing region's re-spawn time
- /rb alarm time/message/radius (name) (value)- changes the region's alarm settings. Alarm will go off before blocks are due for re-pop to warn players.
- /rb rblacklist (name) add/remove (id id id ...) - adds/removes supplied block IDs for region. Blacklist blocks for a specific region.
- /rb feedback (name) (type) - sets feedback type for the region. 0 - none, 1 - on place, 2 - on place/remove
- /rb feedback set (string) - sets string sent to player during region feedback. Use TIME to show re-spawn time.
- /rb spawnblock (name) - lists region's spawn blocks.
- /rb spawnblock add (name) [id chance id chance...] - adds new blocks with spawn chance. Chances do not need to add up to 100.
- /rb spawnblock remove (name) [id id id...] - removes blocks.
- /rb repop (name) - Re-spawns all blocks in a given region
API
Method available directly from RegenBlock class.
public void regenBlock(Location location, Material material, byte data, Player player, Boolean isBreakEvent) location - block's location material - what material block should be set to once restored data - data value for the restored block player - player that broke/placed the block isBreakEvent - test if this is a BlockBreak of BlockPlace event.
@Raidendex/cwingrav em i would like this plugin , but it didn't work, can you please tell me why? it don't show up when i do /plugins
Plugin doesn't work with WorldGuard.
I created a region with Woodlogs. Build and use are allowed. But if people chop the logs it doesn't regenerate. It will be replaced with air.
Please post Source Code!
This plugin crashes 1.6.2 at random intervals to a complete stop, having to restart my server every 6 hours or so.
Is there a better lightweight version thats updated?
So I've been looking for a plugin exactly like this for a Dragon Block C server I'm working on. I want players to be able to destroy cities without the fear of them not regenerating. Sadly, for some reason, this plugin does not seem to register the destruction from a skill/power as player destruction. I know that I'm mixing and matching mods and there will be issues, but does anyone know of a way to fix this/get around this?
Could you please update this plugin to 1.5.2 and fix it so that if the server gets turned off before a region regenerates that it continues to regenerate it to its original state instead of the state that the region is in during the restart becoming the new "original" state.
plugin works good, but.... i was making a minigame with some trapped chests and when the trapped chests are inside of a /rb region they no longer function with a redstone current.
@qaman6
also interrested in this. i created a large minigame thinking i could selected a large region that would regen.
Getting weird errors where regenblock won't repop areas visually. After I repop, nothing happens. If I place a block where it was supposed to be regenerated, the original block shows up and not what I placed. Logging out and back in doesn't seem to fix the visual part. Will do more tests.
http://pastebin.com/a8FyNbhB
edit:
I have found that this is caused by an incompatibility with Spigot (http://www.spigotmc.org/). On CraftBukkit the plugin works just fine.
Is there a way that you can use worldedit to select a large amount of blocks instead of right clicking them individual?
I could see this plugin as great for refilling sand traps.
Except that you said the plugin only supports BlockBreakEvents. Would it be possible to support BlockFromToEvents for sand, gravel, anvils, and such?
If i have a worldguard protection and a tree wich is on the protection area who are made to a regenblock so people who arent in this region can destroy the tree ? I think this is good thing if they can.
@Raidendex
Thanks a lot :D Hopeful i can make something cool with it and learn from it :)
@Dinastya
Posted this a while back. http://minecraft.dmg2.net/RegenBlock/RegenBlock.zip
Could you please make this open source? I'm kinda noobish with java and i wanna make a private plugin similar to this but then make the blocks regen 1 by 1 every second 1 until the queue get's overloaded then it will go faster. I tried to decompile it but it got way to much errors in it. Or maybe you could add it as a feature to regenblock?
Also getting this error: https://pastebin.com/1FAe2EMJ
It doesn't work for 1.5.2 :(
Update it please... i really need it for 1.5.2
@ShadowKillerx
Not a problem with RegenBlock directly - it's because the RegenBlockAPI changed. It's something I'll have to address in OtherDrops. I should be able to add a try {} catch {} block to support both old and new RegenBlock versions.
Your plugin dont work with OtherDrops, can you do something with that?
Error: http://pastebin.com/PF7W1CuG
Is there a way to easily select the whole global world? For survival servers etc???