[MECH] RedstoneChips 0.97 - Integrated circuits plugin [1.5.1-R0.2]

Discussion in 'Archived: Plugin Releases' started by eisental, Jan 19, 2011.

  1. Offline

    eisental

    RedstoneChips 0.97 / BasicCircuits 0.97 / SensorLibrary 0.34
    (Last update on April 30th, 2013, cb 1.5.1-R0.2)


    [​IMG]

    Features:
    • Build chips with any number of input and output pins, from compact 2 block chips up to whatever you can imagine.
    • Choose from over 50 different chip types and several 3rd party chip libraries.
    • Most chip types can work with a wide or infinte range of i/o configurations. Sign arguments allow you to customize chip behavior.
    • Chips can communicate through redstone, or directly by touching each other. Some chip types can also communicate over wireless channels.
    • Chips can be built in almost any imaginable structure allowing very compact circuits.
    • Debug and maintain large projects using various tools and commands.
    [​IMG]

    [cake] Help me spend more time working on RedstoneChips. Please donate

    Circuit libraries made by other people:
    Changelog (open)

    RedstoneChips 0.97 (Apr 30th, 2013)
    • Fixed the saving bug on cb 1.5.1.
    • Added an option to disable update checking.
    BasicCircuits 0.96 (Apr 30th, 2013)
    • pixel: Added a maximum distance value preference to prevent lags and server crashes. The max can be changed using/rcprefs pixel.maxDistance x and defaults to 7.
    • sram: Fixed a problem with anonymous memory.
    SensorLibrary 0.34 (Dec 1st, 2012)
    • daytime: Fixed daytime offset bug.



    Full changelogs and source code @ github.com:
    RedstoneChips [gunpowder] BasicCircuits [gunpowder] SensorLibrary
     
    DoomLord, Shamebot, Vecht and 6 others like this.
  2. Offline

    QQCucumber

    Circuits do not seem to be saving if you use the reload command in the CraftBukkit console. Can you please fix this or give me a command to manually do so?
     
  3. Offline

    eisental

    Are you referring to Essentials' /reload command? Indeed, the file is currently only saving when the world does.
    --- merged: Mar 6, 2011 11:37 AM ---
    You've got to be kidding! :)
    I thought bukkit is responsible for loading worlds before the plugins while the different plugins deal with creating and teleporting. I guess I was wrong. These load order problems are really getting on my nerves. I'm not sure how I can wait for every multiworld plugin before initializing circuits, but I'll try...
    Anyways, thanks for finding the problem. I somehow managed to miss that line in your log. I hope to have a fix soon.
     
  4. Offline

    mr.m

    I found out that there is also a very similar bug in the flipflop circuit like in the srnor circuit. I don't know if you already noticed that.
    After a server restart the output is on but I can't use the reset pin to get it off. First I have to put a 1 on the set pin, then I can reset it.
     
  5. Offline

    eisental

    Yes, a flipflop has a state [​IMG]. Thanks again :), i'll fix it later.
    Any other circuits having this issue?
     
  6. Offline

    mr.m

    i did some testing and also experienced this issue with the pisoregister and shiftregister circuits.
    The counter seems to work just fine even after a restart (which confused me), but there is another bug. After i build a counter it counts up even if the direction pin is off. I have to switch the direction pin on, and then off again to make it work.
    Also there is a typo on http://eisental.github.com/RedstoneChips/circuitdocs/Counter.html
    You wrote it should have 2 input pins and then you list 3 ;)

    I hope this helps you destroying the bug^^
     
  7. Offline

    Dashkal

    Re Multiworld. Yeah, that's annoying. Bukkit is indeed responsible for loading worlds, but not for keeping track of them. So until a multiverse type plugin loads and tells bukkit about the other worlds, they don't exist. I had this problem with ControllerBlock as well. His solution was to delay loading the block data until after all plugins loaded.
     
  8. Offline

    eisental

    Yes, that's what I'm going to do as well. I'll try to make an update soon for all the latest issues.
    --- merged: Mar 7, 2011 1:21 AM ---
    Do you have wall signs that are actually chests on your server? Weird...
    I'll make sure the error doesn't get thrown, but I think it's either another plugin or a craftbukkit bug.
     
  9. Offline

    QQCucumber

    Uhh, not that I know of..
     
  10. Offline

    eisental

    Updated to RC0.83, BC0.83 and SL0.22. They should work well with the new recommended build and a few above.
    See the main post for full changelogs. I think all the issues were solved [​IMG]. Thanks everybody for the feedback.

    It's going to be a lot easier now to fix the plugin for new craftbukkit builds since I can finally release new RedstoneChips versions without updating the circuit libraries.

    As always, let me know of any problems, ideas and suggestions.
     
  11. Offline

    Dashkal

    I have a request. Could you add a "world" argument to the daytime circuit? That would allow creation of a day/night indicator to a portal to warn people before they cross from a creative world to a SMP one. I actually went and coded it for my own use. You have a github pull request now.
     
  12. Offline

    eisental

    Thanks a lot, it looks good. It will take a few days to push it though. I'll merge it with the next version.
     
  13. Offline

    matter123

    we are running craftbukkit 497 rc 0.83, bc 0.83 sl 0.22 and when loading server i get
    Code:
    011-03-08 23:38:55 [SEVERE] Could not load plugins\BasicCircuits-0.83.jar in plugins: null
    org.bukkit.plugin.InvalidPluginException
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:80)
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:130)
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:95)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:59)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:204)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:191)
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:131)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:246)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:76)
        ... 8 more
    Caused by: java.lang.NoClassDefFoundError: org/tal/redstonechips/circuit/CircuitLibrary
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$000(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:30)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at org.tal.basiccircuits.BasicCircuits.<init>(BasicCircuits.java:15)
        ... 13 more
    Caused by: java.lang.ClassNotFoundException: org.tal.redstonechips.circuit.CircuitLibrary
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:30)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        ... 26 more
    2011-03-08 23:38:55 [SEVERE] Could not load plugins\SensorLibrary-0.22.jar in plugins: null
    org.bukkit.plugin.InvalidPluginException
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:80)
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:130)
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:95)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:59)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:204)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:191)
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:131)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:246)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:76)
        ... 8 more
    Caused by: java.lang.NoClassDefFoundError: org/tal/redstonechips/circuit/CircuitLibrary
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$000(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:30)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at org.tal.sensorlibrary.SensorLibrary.<init>(SensorLibrary.java:21)
        ... 13 more
    Caused by: java.lang.ClassNotFoundException: org.tal.redstonechips.circuit.CircuitLibrary
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:30)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        ... 26 more
    and no circuts are loading
     
  14. Offline

    eisental

    Could you post the complete server log? It appears the circuit libraries can't find RedstoneChips.
     
  15. Offline

    Lolf

    playe update! :(
     
  16. I'm just curious. What in 500+ does RC not work with?
     
  17. Offline

    eisental

    I think I used the old build number by mistake because I compile it on my own. I'm not sure which build number broke it but I'll release the updated version for the new recommended build (#522) soon.
    A change in the way plugins are loaded broke it but it was reverted in #522 i believe so it might work. As long as you make a backup of your redstonechips.circuits file you don't need to worry.
     
  18. Fortunately I had no circuits when I upgraded.

    I do have a question though. Is this multiworld safe? I noticed that there's only one circuits file.
     
  19. Offline

    eisental

    Should be. RC supported multiworld for the 1st version. The fix was about waiting for multiverse to load the worlds before activating the circuits. If you look inside the circuits file you can see every chip has a world name.
    Of course nothing is really safe yet :) Let me know if you find any problems.
     
  20. Offline

    mordar

    hellos
    To explain how to make a circuit iptransmitter
     
  21. Offline

    eisental

    I guess it depends on what exactly you want to do with it. Please give more details. Did you read the docs?
     
  22. Offline

    mordar

    actually I vourdait sending power (Redstone) has a block of iron has a special block of gold
     
  23. Offline

    matter123

  24. Offline

    markness

    Eisental, you are my new favorite person. Thank you for making the baddest ass IC plugin ever.
     
  25. Offline

    eisental

    Updated everything. Most changes deal with library loading and such. Only gameplay change is the new world argument in daytime. Should work with 03/03/11 recommended build.

    @matter123 I hope this solves your problem. If not please post an updated log running the new version.
    @markness Wow, thanks :)

    EDIT: And note that you can now mess around with the filenames of all the plugins. Crossing my fingers I don't wake up tomorrow with a bunch of new load errors ;-)
     
  26. Offline

    matter123

    ok new rc new log
     
  27. Offline

    eisental

    I don't think you've updated your craftbukkit to #522+

    2011-03-09 20:56:42 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-497-gea319d1-b499jnks (MC: 1.3)
     
  28. Offline

    matter123

    thank you btw it works on 512
     
  29. Offline

    Raquarious

    can someone give me and example on how to wire a ascii terminal to a print i/c? I've tinkered around a bit but I can't seem to get one working. I tried modeling a circut off of this video: http://www.youtube.com/watch?v=V9Jprc21rHg&tracker=False but the text won't print (the print i/c detects change but doesn't print anything) any help would be appreciated.
     
  30. Offline

    eisental

    print needs to have 9 inputs (1 clock input and 8 data pins). terminal needs to have 9 outputs (1 clock output and 8 data outputs). terminal output 0 goes to print input 0 and so on. Make sure the pin numbering is correct (with /rc-pin). You can also try doing /rc-type on the print circuit directly (point at the activation sign). That should work the same way.
    In the video i'm pointing at a sign connected to the lapis block of the terminal but in the current version you don't need the sign, just point at the lapis block. I guess you already know that, though, if you get any output from the terminal...
    The clock pin of the print must be triggered after the data pins are set for each letter (that should be handled by terminal).
     
  31. Offline

    davr

    Suggestion: Allow a setting on the pirsensor, so I can have it detect only mobs, or only players, instead of any living entity. Maybe I want it to close doors if it detects enemy mobs are near.
     

Share This Page