Planned Features: Circuits containing light blocks which can be separated into fixtures and buttons to toggle the circuit. Uses WorldEdit selections and thus also supports the WorldEdit client-side HUD for selection visualization. Nice! Circuits will have definable source blocks that need to be powered in order to make the lights go on. If not all source blocks are powered there is a chance that lights might temporarily flicker. The more unpowered source blocks the more likely the flickering gets. If no source blocks are powered the lights go off and stay off. Probably dropping this one for now because flickering means frequent world updates which can bog down the server severely. Each circuit can define a breaker switch. If tripped the circuit will go dark and stay dark. Togglable blocks: put a button on a block that is a supported lightblock and toggle it with each button press. No need to define any circuits. Circuits can exhibit different behaviors: "toggle": default and currently only implemented behavior: Light blocks can be toggled off and one with one of the circuit's switches. Fixtures switch in sequence. Ordering is derived from fixture name, natural order, ascending. "always_on": this circuit will be always on. Unless you cut the power/trip the breakers. "delayed_off": pressing a button will always turn on the circuit if it has power. After a configurable time it will go off again. Pressing the button again and again will reset the delayed_off timer. "scheduled": circuit being switched on and off at certain times of day (server time) "strobe": while activated will continously switch through all defined fixtures, lighting up each one individually. Maybe, just maybe power supplies. Those would be furnaces. Place a sign in front of a furnace with the first line "[Power Supply]". The sign will attach to the furnace (like in Lockette). Place a switch next to the furnace and it will attach also. This will activate or deactivate the furnace. Fill it with fuel (bukket of lava, coal, wood, whatever), switch it on and it will produce power. If it runs out of fuel, no more power. If I make this I'm most likely putting it into a separate plugin. Multi-world support Permissions 3 support Circuits have a list of owners. These are players who are allowed to modify the circuit. Integration with jascotty2's Help plugin. Circuit toggle spam may put excessive load on the server. Introduced a 500ms mandatory delay between handling button presses. Block replace operations are now synchronized through BukkitScheduler. No more crashing Server thread. Make lightblocks configurable in config.yml. Currently there is only one lightblock pair defined: mossycobble/lightstone. If the configuration file is missing, the plugin will use defaults and write a new configuration file. Speed item (default: redstone dust): Right-click a fixture entity (lightblock, breaker, switch) equals "/lightz select <circuitID>". Left-clicking something equals "/lightz add" of a single block selection (the clicked block) into a new fixture. Provide functionality to rename circuits (circuitID) and fixtures inside circuits. Provide functionality to identify circuit parts (lights, breakers, switches). Right-click circuit part with an info tool (TBD). This will flash the lights three times with a one second delay and also replace the blocks on which breakers and switches are placed with glowstone in one second intervals. Provide functionality to move individual circuit elements (switches, breakers, lights), preferably using an interaction tool (TBD). Circuit listing: /lightz list - show all circuits belonging to the player /lightz list range <n> - show all circuits belonging to the player within a range of n blocks (Manhattan metric) /lightz list all - show all circuits /lightz list all range <n> - show all circuits within a range of n blocks (Manhattan metric) /lightz list selected - shows all circuits in the world which are currently selected Also sort the result list in natural order Known Issues: When replacing torches with redstone torches make sure to keep the directional information! When coloured wool is replaced it is always white! Circuits are currently only stored in memory, thus they are lost after a reload or server restart. Currently working on storage... FIXED! Circuits are now stored in YAML files. Current circuit states and power states are not saved. This information is lost on reload/restart. Implement separate state file that is saved periodically (60 seconds). The anti-placement block listener which should only prevent redstone from being placed on top of light blocks also prevents anything else from being placed at or on light blocks (signs and other blocks) Once you have a few dozen circuits defined loading/saving them is really slow. Need 4 Speed here! Lights only work in parts of the map that are currently in memory. You can't toggle circuits at the other end of the world when nobody is there to keep the chunk loaded. It is possible to force loading of distant chunks, however this might be exploited to make the server crash (load too many chunks). Maybe there is a way to hook into chunk loading, determine if light blocks of a circuits are there and set them accordingly to the circuit state. Not sure if this is possible, requires more research. - Yes there is, currently working on it! - Solved! Known Limitations: Currently none! Green: This is already implemented and works. Blue: Currently working on this. Orange: Currently just an idea. Haven't even researched if this is possible. Requirements: CraftBukkit RB 860 WorldEdit 4.6 YouTube Video: Toggle Circuit Delayed-off Circuit: Scheduled Circuit: Togglable Light Blocks: Circuit Breaker: Strobe Circuit and Select/Add Tool: Any and all feedback is welcome.