Inactive [MECH] ControllerBlock v1.18 - Toggle blocks on/off with redstone [740]

Discussion in 'Inactive/Unsupported Plugins' started by Hell_Fire, Jan 24, 2011.

  1. Offline

    Hell_Fire

    ControllerBlock - Toggle blocks on and off with redstone

    I've stopped work on this plugin due to other work, please see Zero9195s continuation of this plugin here: http://forums.bukkit.org/threads/34394/

    Pretty simple, there was a version of this for hmod, so the inspiration comes from that.

    Iron blocks can be turned into controller blocks. Drop the block down, drop a redstone wire or torch on top, switch to the type of block you want to toggle and smack the iron block with it. (Can remove redstone on top after it's been set as a ControllerBlock).

    Place those blocks down where you want them to be, you can work from multiple piles of it, where it is in the inventory doesn't matter, as long as you place the block of that type.

    Once you're done placing blocks, wack the iron block again and it'll save the block locations and ready to go. Power the block they'll appear, remove the power and they'll disappear again. Invert the control with a redstone torch on top of the block. To remove the binding, just remove the block.

    Source is included in the .jar file in case I disappear. Tested on my local server but other than that, not much else. Sure you guys will find me bugs :)

    A smallish howto of how to make blocks, and change between types.


    Features:
    • Redstone toggleable blocks
    Download ControllerBlock (recommend using the recommended build of craftbukkit here, previous version available below in the changelog, tested up to 733).

    NOTE: IN 1.07 CREATING CONTROLLERBLOCKS CHANGED, YOU NEED TO PUT A REDSTONE TORCH OR WIRE ON TOP OF THE BLOCK BEFORE YOU LEFT CLICK ON THE BLOCK TO CREATE. (Yes, enough people have missed this change to warrant the large bold text :p)

    Source now also available up on GitHub! https://github.com/Hell-Fire/ControllerBlock

    Some builds done with ControllerBlock:
    Treasure Quest 3 (dungeon game inside MineCraft) (by neoguy21)
    Xtreme HowTo controller blocks (by mrgreaper)
    :getout: frog animation (by Gorbachev, sup goons :V)
    gravity mob trap (by Arolathe)
    hidden staircase/entrance (by narrowtux)

    And a couple by me:
    Real simple on/off example/howto
    Item elevator
    Portcullis/castle gate build/howto (long >.<)

    Known Issues:
    - Placing a block in snow/flowing water/lava doesn't register.
    - Occasionally block hits/places/destroys don't register.
    - Liquids being directly controlled don't work properly.

    Changelog:
    Version 1.18
    - Updated for craftbukkit #733
    Version 1.17
    - Fixed config loading of BlockFlowProtectMode and BlockPhysicsProtectMode
    Version 1.16
    - Fixed for changes to bukkit/craftbukkit #602
    - Changed some messages, added some config options, haven't slept much, so forgotten a bit of what's changed, find bugs! :)
    Version 1.15
    - Fixed up multiworld, also loads the data file after all the other plugins have loaded.
    Version 1.14
    - Changed world to use name instead of the ID in data file, should fix multiworld stuff when ControllerBlock loads before other multiworld initializing plugins.
    - Not much else that I recall, will be another version soon
    Version 1.13
    - New config patcher, new options get added into the ControllerBlock.ini automatically.
    - Added a whole lot of currently disabled debug lines (They're spammy... really spammy).
    - Added option to disable the edit dupe check all together.
    - Added protection against water/lava flows (and dupe checks, that are disable-able with the above new option).
    - Added ability to disable the checks against Permissions (and clones) completely, if you want to just use my inbuilt controls only (not mandatory to set if you don't have Permissions, this is in addition to, if Permissions isn't installed, it won't use it anyway).
    - Fixed Grass/Dirt and Redstone Torch On/Off in the edit dupe checks. No other blocks are coming to mind that change automatically.
    - Added a bunch of error checking on the loading of the ControllerBlock.dat, hopefully will give me some clues as to what's going on there.
    Version 1.12
    - Removed plugin constructor for craftbukkit-419+ (wasn't needed anyway)
    - Fixed Permissions mod checking stuff (haven't tested it actually works with permissions, but doesn't seem to throw any errors on loading anymore)
    Version 1.11
    - Fixed a bug that mostly affected Windows users with .dat handling (wasn't closing the file on reading, so it couldn't overwrite it when saving).
    - Added some sanity checking to reading the .dat file (empty lines ignored rather than creating null controllerblocks that make the mod unable to save).
    - Destroying a block in edit mode that has more than one controllerblock controlling it will replace the block with the type from the enabled controllerblock.
    - Destroying a controllerblock now destroys all the controlled blocks and refunds them all at the controller block itself.
    Version 1.10
    - New antidupe code, a lot more reliable!
    - Fixed permissions check (uninitialized objects are a pain :p)
    Version 1.09
    - Fixed a rather critical bug that was saving the new data format with the old identifier.
    -- (YOU ONLY NEED TO DO THIS IF YOU USED THE BUGGED 1.08) --
    If affected by this (getting NumberFormatException on loading), edit ControllerBlock.dat with a text editor and change the first line from "# v2" to "# v3" (That's <hash><space>v3).
    -- (YOU ONLY NEED TO DO THIS IF YOU USED THE BUGGED 1.08) --
    Version 1.08 - critically bugged, don't use, use 1.09 instead
    - Added a builtin permissions support, also supports Nijikokuns Permissions on top of it
    - Removing the controller block with WorldEdits superpick, and possibly any of the "stick" plugins that cancel/set to air on hit will now remove the controller block.
    - Added configurable limits on number of blocks and block distance from controllerblock (is a "sphere" around the controllerblock, rather than a cube, might add another option to change it later).
    - Probably some more random little bugfixes/refactoring, but I can't remember >.<
    Version 1.07
    - Updated for API changes (bukkit-144/145 and craftbukkit-323, tested with 326)
    - Config file format change, old config files will convert automatically
    - ControllerBlocks need a redstone "thing" (wire/torch) on top to create a ControllerBlock
    - Added per-tick, per-controllerblock .isBlockPowered() check for more natural redstone integration (power feeds into the block rather than needing wire on top), more CPU hungry, toggleable with old quick REDSTONE_CHANGE event method in config (quickRedstoneCheck=true for fast version that needs wire on top of block)
    Version 1.06
    - Updated for API change (bukkit-128/craftbukkit-281, only tested with 289)
    - Added counts on block add/remove messages
    - Added notice if a block gets removed by the anti-dupe code while editing
    Version 1.05
    - Updated for API change (bukkit 122/craftbukkit-265)
    - If you're running a version prior to this, you can still find 1.04 at here. I won't be supporting it anymore though, so any bug fixes, etc, won't find there way backported there.
    Version 1.04
    - Moved config/data to plugins/ControllerBlock (or whatever getDataFolder() is). Should make it multi-server usable as long as each server has a different plugins dir.
    - Sorted out minecart track metadata storing, this should make dynamic minecart tracks actually stay how you put them out now.
    - Stacked fences should work again now.
    - Probably some other small bugfixes that I've lost track of.
    Version 1.03
    - More refactoring
    - Inverted blocks again, blocks on when redstone wire off, reads from torches now, blocks on when redstone torch on.
    - Added some error handling in the config file loading
    - Fixed a metadata handling bug when a block has more than one controller.
    - Listen to event cancellations, no longer processes canceled events.
    - Changed a bunch of the edit mode handling, still similar to how it was, just with some nice changes (no longer need to exit editing one block to edit another, will save/finish the previous block for you).
    - Can now edit/modify ControllerBlocks that were made with a different Material before a configuration change took place, Material only matters for creation of new blocks.
    Version 1.02
    - Whole lot of code refactoring
    - Blocks on when redstone on (can still use torches)
    - Block protection for controlled blocks (Physics events can't modify controlled blocks anymore, fixes duping issues, but allows some odd builds, might implement a "break" feature like the original had, where block changes cause the controllerblock to disable)
    - Added configuration file (creates on first load, in main folder, ControllerBlock.ini). First line is ControllerBlock material type, other lines are disallowed materials.
    - Saves block metadata, allows toggling of minecart tracks.
    - Probably some other stuff I'm forgetting.
    Version 1.01
    - Added controlled block checks, need to edit block before removing controlled blocks
    Version 1.0
    - Release
     
  2. Offline

    vasil7112

    The permisions?
    Or is it only for ops?
     
  3. Offline

    dvdbrander

    upload=down
    edit:
    joking.
    But when do you exept this plugin to work with the 1.6? (see the twitter for the current 1.6.4 version, http://twitter.com/#!/CraftBukkit)
     
  4. Offline

    h3ndy_

    I am sorry, but you don`t need Falsebook and Minecart Mania for this.
    I bet i can make one without these two, that works just as yours :D
     
  5. Offline

    TimWolla

    We did already such a door with two blocks, redstone repeaters, and a monostable circuit.
     
  6. Offline

    h3ndy_

    That would be my idea too :D
     
  7. Offline

    CoMcE

    uhm... where are the permission-nodes?
     
  8. Offline

    h3ndy_

    there are none, also this is outdated
     
  9. Offline

    Phil3004

    is permission supported?
    What are the nodes?
    Could OP's create infinit Blocks even if the Limit is set to 20?
    Would be great !
     
  10. Offline

    Enslev

    Please update this mod for 800+
     
  11. Offline

    vasil7112

    Plz permissions so only some players can make:)
     
  12. Offline

    dvdbrander

    Think the developer has a holiday or so... Not seen since the 20th
     
  13. Offline

    Wurstfabrik

    If you don't want to continue develpment please release the code... i will take it, my users are begging for it :D
     
  14. Offline

    Blake380

    He did say in the original post "Source is included in the .jar file in case I disappear." , so I'm sure that means he already did release the code.
     
  15. Offline

    Wurstfabrik

    Oh nice, i missed that. Maybe i will count him as disappeared ;)

    btw, seems work fine for me on 818.
     
  16. Offline

    Hell_Fire

    Hey guys :)

    Hadn't tested on 818 yet, only just updated last night and was mucking about setting up nether gates all over the place :p I'll take a look at it and make sure it's all working as it should :)
     
  17. Offline

    dvdbrander

  18. Offline

    Dawodo

    Code:
    2011-06-02 14:03:24 [SEVERE] Could not pass event REDSTONE_CHANGE to ControllerBlock
    java.lang.StackOverflowError
        at sun.util.calendar.ZoneInfo.getOffsets(ZoneInfo.java:225)
        at java.util.GregorianCalendar.computeFields(GregorianCalendar.java:2024)
        at java.util.GregorianCalendar.computeFields(GregorianCalendar.java:1996)
        at java.util.Calendar.setTimeInMillis(Calendar.java:1109)
        at java.util.Calendar.setTime(Calendar.java:1075)
        at java.text.SimpleDateFormat.format(SimpleDateFormat.java:876)
        at java.text.SimpleDateFormat.format(SimpleDateFormat.java:869)
        at java.text.DateFormat.format(DateFormat.java:278)
        at java.text.Format.format(Format.java:140)
        at org.bukkit.craftbukkit.util.ShortConsoleLogFormatter.format(ShortConsoleLogFormatter.java:45)
        at java.util.logging.StreamHandler.publish(StreamHandler.java:179)
        at java.util.logging.ConsoleHandler.publish(ConsoleHandler.java:88)
        at java.util.logging.Logger.log(Logger.java:481)
        at java.util.logging.Logger.doLog(Logger.java:503)
        at java.util.logging.Logger.log(Logger.java:592)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:330)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
        at net.minecraft.server.World.applyPhysics(World.java:372)
        at net.minecraft.server.World.update(World.java:345)
        at net.minecraft.server.World.setData(World.java:287)
        at org.bukkit.craftbukkit.block.CraftBlock.setData(CraftBlock.java:91)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.turnOn(CBlock.java:207)
        at net.servfire.hellfire.bukkit.ControllerBlock.CBlock.doRedstoneCheck(CBlock.java:177)
        at net.servfire.hellfire.bukkit.ControllerBlock.BlockListener.onBlockRedstoneChange(BlockListener.java:249)
        at org.bukkit.plugin.java.JavaPluginLoader$32.execute(JavaPluginLoader.java:461)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:114)
        at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:44)
        at net.minecraft.server.BlockRedstoneWire.doPhysics(BlockRedstoneWire.java:289)
        at net.minecraft.server.World.k(World.java:397)
    
    The Overflow just killed my Server - something must be wrong with the redstone Event in #818

    (The error was about twice as long but Bukkit Forum doesn't allow Posts with more than 3000 characters.)
     
  19. Offline

    Hell_Fire

    Turn off QuickRedstoneCheck in the ini, next version won't have it as an option, since it's not really "quick".
     
  20. Offline

    93Calcetines

    I can't wait for this to be updated! This is one of my favorite plugins! Keep it up! =)
     
  21. Offline

    IceReaper

    i got some other problems with latest bukkit: after destroying a cotrollerblock and then restarting the server, all the blocks are there again (but not the controller block).. and after every next restart too... the keep spawning, till i removed the plugin..
     
  22. Offline

    mario_fritz

    pls permissions
     
  23. Offline

    Hell_Fire

    It has Nijikokun compatible Permissions support, unless you mean some other permissions support? Check the ControllerBlock.ini file, you need to disable the anyone can create/modify/destroy defaults, then it'll fall back to Permissions and ops.txt file.

    Any errors in the server console? Did you destroy the Controllerblock with some other method (worldedit/other non-standard removal thing)?

    Sounds like you used something like a superpickaxe to set the block to AIR and the controllerblock is still actually there.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 7, 2016
  24. Offline

    Tealk

    its possible that you make that i can select the controlling block by a command and not in the config file?
     
  25. Offline

    Onza40

    We still have 3 people on my server reporting bugs about this plugin, placing n x n block areas and then having them only toggle in a checkerboard pattern, can we please have an 818 update, thanks.
     
  26. Offline

    ichingpow

    I miss the times when Hellfire updated this every few days :(
     
  27. Offline

    dvdbrander

    Any idea how long it's gonna take?
     
  28. Offline

    Hell_Fire

    What block types and what config options changed from defaults?
     
  29. Offline

    Onza40

    Config is here http://pastebin.com/dPQHdBpq
    And one player had it with wool, I had it with Lapis
     
  30. Offline

    Hell_Fire

    I think it's the BlockPhysicsProtectMode=remove option, set it to protect and it'll probably work fine.

    I've been trying to work out how to check blocks are set to the right type without going over every controlled block every tick, since BLOCK_PHYSICS seems to fire on the most random of events >.<
     
  31. Offline

    Onza40

    I shall try and change the setting and see if it fixes it, thanks!
     

Share This Page