Redstone Mania
Version: 1.05
Bukkit: 1.5.2/1.6.2/1.6.4
Description
Redstone Mania features wireless, customizable and instant redstone in the form of 'circuits'. How does that distinct from other plugins like Craftbook you might ask, well, instead of supplying circuitry that are built-in, you can create and save them yourself! Instead of having hundreds of XOR-circuits lined up to make that awesome door lock, you can now save this XOR-circuit and make it instant, small, and persistent.
What it basically allows you to do, is select ports in a (real-world) redstone circuit, configure some of the torches and repeaters to tweak delays, and perform the 'create' command to make a virtual version of that circuit. You can then use port signs to make instances of this circuit in the world. It doesn't stop there, as you can further use these circuits to include in other circuits. You can basically extend the redstone logic to the point you have a working microcontroller. Something that used to be the size of a house, can now be done in just a few blocks.
Additional to all this, the ports of a circuit are wireless. You can place infinite amounts of the same ports all over the server (yes, it works between worlds too!). This allows for wireless control of redstone throughout the server.
Finally, other than just toggling levers, ports can toggle (trap)doors and note blocks.
Summary
- Set the ports of your circuit and save it as a circuit, simple as that
- Circuit can be optimized: instant, no block changes, no server lag
- You can make multiple of the same circuit (instances)
- Wireless: Connect circuits cross-world or across the world
- Very simple lever-system simulates redstone wire up to 100%
- Possible to set ports by toggling levers manually: wireless levers
- Nearby note blocks, doors and trapdoors are toggled as well: double-door becomes small
- Completely freeze-protected: it is impossible for circuits to end up in an infinite loop
- Possible to use circuits in another circuit: CircuitCeption :)
- Control redstone circuit ports using the toggle command
- Will never break between CraftBukkit builds unless Bukkit changes something.
Media
How to make a circuit that adds two 1-bit values
How to make a circuit that adds two 2-bit values
Usage
Port
A port is used to make your circuit communicate with the outside world. An XOR-gate, for example, has two 'in' ports and one 'out' port. A memory field (SNNOR-latch/Flip-flop) has only two ports, 'a' and 'b'.
To make a port, place a sign on a block with:
[port] circuitname instancename portname
If the instancename is not yet taken, it is made. Otherwise this port is added to the circuit instance set. If a circuit instance is out of ports it is automatically cleaned up. For example, an XOR-gate would look like this:
[port] XOR xor1 in1 [port] XOR xor1 in2 [port] XOR xor1 out
Commands
You can use /redstone , /circuit and /rm to use Redstone Mania.
- /redstone list to list all circuits, /redstone list [circuitname] to list the ports
- /redstone port [name] to set a real-world port for your circuit (first select a block)
- /redstone setdelay [delay] to set the delay for the element during creation (select block)
- /redstone clickdelay [delay/disable] to set a delay that is set when clicking blocks
- /redstone clearports to clear the selected ports
- /redstone cleardelays to clear set delays
- /redstone clear to clear both ports and delays
- /redstone save [name] to save your circuit using the ports set
- /redstone delete [name] to delete a circuit and all it's instances
- /redstone reload to re-load all circuits (in case you changed a dependency circuit)
- /redstone toggle [circuit] [instance] [port] ([state]) to toggle the powered state of a given circuit. State to set to is optional, toggles otherwise.
Permission for all these commands is:
redstonemania.use
Sharing
Circuits are stored in the circuits sub-folder as files with a .circuit extension. These files can be safely transferred as you like. This is unique, as it allows you to share the same circuits among multiple servers
FAQ
I tried to make the xor circuit in the example, but it couldn't find it?
That is right, you have to make one out of redstone first. The video on this page shows how to do just that. (at the very end) I didn't include those so people could get used to the circuit creation mechanisms.
The server is complaining about missing circuits. What do I do?
Remove remaining instance files of this circuit in the instances sub-folder. It could be an user deleted a circuit but the instances didn't get deleted...for whatever reason.
I tried to make my circuit instant, but it doesn't do anything
Check if there are no infinite loops going on in your circuit. If such a loop is happening, the plugin will step in at some point and stop it. If you want a loop in your circuit, give it the minimal clock rate of one tick.
@Me4502
rename it then to redstonemania lol worked for my server
@pnndzwdz
Bukkit doesn't support plugins with spaces in the name anymore.
Hello, http://pastebin.com/vV2fC2F9
@atomfitz
Yes it does, I have been using it on my test server and find it to be a very useful tool
Does this work with 1.7.2?
Is there a way to get this mod to activate the blocks the circuit is connected to, Also is there a reason say a Fader pulse extender wouldn't work with this mod?
Uploaded a new version that fixes the broken compatibility with BKCommonLib.
It seems I am having the same problem as Helmi_74. I get "An internal error occurred while executing this command" when I try to save a circuit. Using bukkit 1.5.2 and the latest version of RM: 1.04 Also have BKCommonLib version 1.52
Any solutions?
It would appear that this plugin is broken with the newer 1.5.2 compatible bkcommonlib versions.
error: http://pastebin.com/XBQ7BvzD
cant get it to recognize a wire to set a port on 1.5.1. i read the last comment and expected it to work =P
Updated to v1.04. I don't really expect it to break any more from this point onwards, as all things that could break are already managed by Bukkit and by BKCommonLib.
If it breaks, send a PM to me (if I still visit here) or lenis0012.
Update this please
Impressive server mod.
Hello there ... Love your mod however im having an issue with setting up an xor wireless circuit.. Ive followed your video block for block done it the exact same way as youve done.. saved it put up the three signs and i get absolutly nothing.. ive tried id say 20 times now to get this working, even renaming and the what nots.. any idea what the deal is? Im running a bukkit 1.4.5 R0.2 server with your newest RM and with bkcommonlib 1.38... other mods shouldnt interfere should they? i dont know what my issue is but its driving me ape.... ive done the "Wire" and "LongDelay" with no problems what so ever.. any help would be appreciated
EDIT/ Ok so i did manage to get it working finally lol after about 6 hours of messing around.... However im not sure how i fixed it but for reference heres what i just went through that managed to get it working.. i Stopped my server went to the redstone mania folder deleted the instances that were in the instances folder, then went to the circuits folder deleted the xor.circuit that i had there.. then i Took out a plugin i had installed called RedstoneChips (still not even sure how this one works but w/e) and all of its components, i then proceeded to restart my server, joined then i /rm clearports, then assigned out in1 and in2 then saved xor (basically your whole tutorial again without having to rebuild it), put up the signs and low and behold it worked, i then reinstalled the redstoneChips plugin to see if that was the cause.. and it seems to still be working just fine with the plugin back in there so im not sure what the issue really was lol.. just wanted to put this info out there incase its sumthing you needed to know?
@bergerkiller
oh ok in this case i think i misunderstood stuff. I thought powering the sign with redstone is the basic fact it needs and not the lever itself. What i basicallly want from this task is to have a delay circuit that allows me to connect detector rails to switch on a machine for a few seconds and i thought redstone mania is something i could use for that.
@Helmi_74 Hmmm I don't think it can read input from buttons directly, it only checks for nearby levers to read power sources. That could be something I could fix up perhaps, though it does require a lot of lever-related checking (they are both input and output) so I'm not sure if I can make that work.
I recommend putting the button on a separate block + redstone wire near the input sign with lever. It might seem a bit overkill, but for now I have no other solution.
well now basically it seems to work. At least saving a circuit works again. Unfortunately i couldn't get to the result i want and i don't know if i'm getting things wrong or there's still a bug.
Here's what i did:
- created a circuit using a button, a redstone lamp and several repeaters. What the circuit does is when you press the button it lights the lamp and holds the power up for around 5 seconds.
- after i got it working i removed the button and the lamp and added ports to this open ends using "/redstone port in" instead of the button and "/redstone port out" where the lamp was before.
- i saved the circuit using "/redstone save hold5sec"
- i then added two signs elsewhere with "[port] / hold5sec / 1 / in" and a button attached and "[port] / hold5sec / 1 / out" with the lamp attached.
If i know press the button nothing happens - i don't get power to the out port and can't see that anything else works. Is this at least intended to work? Am i missing something or is it really a bug?
Thanks for helping.
Frank
@bergerkiller
so great, thanks.
Redstone Mania could use a forum thread as this comments here don't even have notifications on new posts or am i just blind?
@Helmi_74 New version is up:
http:dev.bukkit.org/server-mods/redstone-mania/files/3-v1-02/
It worked completely fine on 1.4.5 and latest BKCommonLib on my server, so if there was a problem, it is now fixed for sure.
great, thanks. can you leave the link to the file so we can download it before it gets approved? Thanks :)