[INACTIVE][MECH] Minecart Mania Spawner 0.8 - Infinite Minecart Spawner and Destroyer [420+]

Discussion in 'Inactive/Unsupported Plugins' started by BloodInside, Feb 10, 2011.

  1. Offline


    Minecart Mania Spawner - Infinite Minecart Spawner and Destroyer
    Version: 0.8
    Requirements: Minecart Mania Core 0.96+ and Bukkit 420+

    This plugin allows you spawn and destroy minecarts.

    You can spawn minecarts by placing a diamond block with tracks running on top of it. When you apply a redstone charge to the diamond block one minecart will get spawn and launched. It is possible to change the direction in which the minecart launches by placing a sign next to it, containing one of the four directions (west, east, north, south). You can also spawn storage and powered minecart by placing a sign adjacent to the spawn block containing the text 'powered' or 'storage'. By default normal passenger minecarts are spawned.

    When minecarts passes a diamond ore block they will get destroyed. You can disable this functionality by applying redstone power to the block.

    It is possible to change the block types which spawn and destroy minecarts. The configuration will be created after you start the server once with the plugin running. Inside the plugins folder you will find the MinecartMania folder which will contain the MinecartManiaSpawnerSettings.txt. The configuration uses the same layout as other Minecart Mania plugins and speaks for itself.

    • Spawn minecarts using redstone
    • Destroy minecarts
    Download Minecart Mania Spawner 0.8
    Source Code

    Version 0.8
    • Updated for Minecraft 1.3, Bukkit 420+ and Minecart Mania Core 0.96+.
    • Should work with buttons now, because of Bukkit bug fix.
    Version 0.7
    • Added a spawn timeout.
    Version 0.6
    • Support for Minecart Mania Core 0.90, older versions not supported.
    • Support for spawning powered and storage minecarts.
    Version 0.5

    • Support for Minecart Mania Core 0.80 and Bukkit 288+
    Version 0.4

    • Support for Minecart Mania Core 0.79 and Bukkit 274+
    Version 0.3

    • Support for Minecart Mania Core 0.78 and Bukkit 256+
    Version 0.2

    • Added configuration options.
    Version 0.1

    • First release.
    tehseano likes this.
  2. Offline


    The last plugin I needed to get my server upgraded! Thanks.
  3. Offline


    Wow! Sounds great! Too bad it seems like It needs updating every time Mania is updated.
  4. Offline


    While updating my production server I ran into a problem where Github seems to cache a very old version (0.2), instead of providing me with the new version. I will solve this as quick as possible.

    UPDATE: I've uploaded it to dropbox (see OP).
    --- merged: Feb 10, 2011 4:29 PM ---
    Most of my updates were because Bukkit broke something. Only the 0.80 release of Mania Core broke my plugin, because Afforess moved the classes into another package.
  5. Offline


    Thanks for this BloodInside! This plugin is a great addition to MMC.
  6. Offline


    The goal is to get Minecart Mania Core to a point where it only needs updates when Bukkit breaks something.
  7. Offline


    Using Version 0.5, destroyer blocks seem to work just fine, but for some reason I can't get the spawner to spawn anything. Is there a special technique?

    First I tried running redstone from a button to the side of the track with the diamond block under it.. Nothing. Then I dug a hole next to the top, stuck in a redstone torch and rigged it up to be off until the button was pressed. Nothing. Put a button on the side of the diamond block, nothing! I even extended the track so that it didn't terminate on top of the diamond block but instead extended over it with several inert rail segments on either side of the diamond block with rail on top, nothing! What am I doing wrong? :(
  8. Offline


    Which build are you using? You should at least have build 288. I was having similar problems on my server, because I forgot to update to 288+.

    Also Minecart Mania Core 0.80 is mandatory.
  9. Offline


    That was it! I was running 267! Thanks to your help I now know how to find out the version number of craftbukkit I'm using. Thank you so much!

    For future people who may have this problem, while the server is starting up it posts this line;

    This server is running Craftbukkit version git-Bukkit-0.0.0-387-g065aac0-b300 (MC: 1.2_01)

    the '-b300' part indicates that I'm now using build 300, so if something says 288+, make sure your build number is higher than the required build number.
  10. Offline


    Nice plugin, it would be also very useful, if it could spawn chest minecarts.
  11. Offline


    Thank you for the idea. I've implemented it, but a Craftbukkit bug is preventing it from working. When the bug is fixed I will release this functionality.

    It will work by placing a sign next to the Spawner block containing the text powered for powered minecarts and the text storage for storage minecarts. In all other cases a normal cart will be spawned.
  12. Offline


    That bug is actually just a symptom of the one I reported a day ago...


    Oh, and I think MMC v0.81 works fine with MMS 0.5, for once. ;)
  13. Offline


    Yup.. no issues so far..
  14. Offline


    First, I have to say, I love this. It's far better than the MCM chest system and allows for much smaller stations in terms of track space. One thing I've found that works well for integrating it with the rest of the Minecart Mania system is changing it so the spawner block is also the destroyer block. That way it works almost exactly like the chests system. I do have one MAJOR complaint, though: these things trigger if redstone wire is anywhere even CLOSE to them. It can be 1 block down and one block to the side, and it'll trigger. This isn't anything close to a connection. It's essentially 2 blocks removed. This goes beyond even Minecraft's block dispensers. Please, please change this. It makes wiring a nightmare having to route far around it for other things.
  15. Offline


    I copied this behaviour from Minecart Mania Core which uses a 1 block radius (X,Y,Z axis) around the spawner block.

    I could limit it to a 1 block radius on the same height. That would be something like this (with the red blocks being the ones to trigger the diamond block (blue)).


    Or would you rather have behaviour like:

  16. Offline


    Don't forget you need to include 1 block below too. That way redstone torches can work underneath (they work like that in vanilla)
  17. Offline


    thanks will give this puppy a try tomorrow when we go 1.2 :)
  18. Offline


    Love this plugin!

    Might be good to default to something like iron ore as the destroyer block. I'm not sure diamond ore can be gotten without admin spawning.

    I kinda like this setup, with the 1 block bellow it.

    I find the 1 block radius can get in the way.
  19. Offline


    Everything is configurable.

    Could you please add a limit timer to spawn. I find a nice pulsar makes fun crashing servers :)
  20. Offline


    Suggestion: You should make it so you can put a sign up next to it saying "Storage" or "Powered" so you can also launch those kinds of minecarts. That would be great and just what we need for my server.

    EDIT: Nevermind, I see you are already working on this, Great! :)
  21. Offline


    I prefer the second one, and very much so. It keeps redstone short circuits to a minimum. I think a good rule of thumb is to keep it like the default Minecraft dispensers. If you copy their redstone functionality, it will work very well. What happened in my case was I had 1 full block of horizontal separation and 1 block of vertical separation. It was diagonally down from the diamond block. The redstone wire was on top this block that was 1 down and 1 to the side. This triggered the spawner even though it was nowhere near it, and I had to majorly reroute things in an already very messy underfloor area.

    You NEED to keep the fact that adjacent powered blocks will power the spawner / destroyer blocks, however. This allows you to place a destroyer directly in front of a launcher (obsidian block) to catch and destroy minecarts coming from the opposite direction, while allowing the powered launcher to shoot the minecart over it without it being destroyed. Essentially this means you only need 1 track per line at the station; this track can both send and receive. Otherwise you need a switch so that incoming minecarts get routed to a side track and destroyed (or caught by a chest, as in the old MCM system).

    The GOOD news is that your system saved me so much grief that I was able to rip out most of the aforementioned mess and rewire it top to bottom in a much simpler fashion. If you saw the underfloor of one of my stations before I put in your plugin, you'd be amazed that I actually got all those wires to fit.
  22. Offline


    I don't have that much time on my hands this week, but I'll try to put out a new version this weekend with a time-based spawn limiter and also changes with redstone triggering. I will provide a configuration option for people relying on the old redstone behaviour.

    Perhaps the Bukkit bug regarding spawning powered and storage minecarts will also be resolved by that time, so I can release that functionality as well.
  23. Offline

    Tahg Retired Staff

    There is functionality somewhere (perhaps not exposed but I can look into it) to tell you if a block is powered by redstone. This should avoid any manual checking if that's what you are currently doing. (Of course, this would only apply if you want it to behave like normal redstone powered items)
  24. Offline


    Or you could you the public API function in MinecartManiaWorld.spawnMinecart(...) that now works for storage and powered minecarts. I wrote those for myself, it works fine now.

    Also, the MM 0.90 update probably trashes your addon, I reorganized the utils files.

    I just posted that - no need to double post it.

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


    Yes, Core 0.90 and this plugin don't work together anymore. A Java error is thrown, when the Spawner gets powered:

    SEVERE: Could not pass event REDSTONE_CHANGE to Minecart Mania Spawner
    java.lang.NoClassDefFoundError: com/afforess/minecartmaniacore/MinecartUtils
            at com.compilednl.minecartmaniaspawner.MinecartManiaSpawnerBlockListener.onBlockRedstoneChange(MinecartManiaSpawnerBlockListener.jav
            at org.bukkit.plugin.java.JavaPluginLoader$28.execute(JavaPluginLoader.java:261)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:60)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:214)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:107)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:162)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.a(BlockRedstoneWire.java:152)
            at net.minecraft.server.BlockRedstoneWire.g(BlockRedstoneWire.java:37)
            at net.minecraft.server.BlockRedstoneWire.b(BlockRedstoneWire.java:281)
            at net.minecraft.server.World.l(World.java:462)
            at net.minecraft.server.World.h(World.java:440)
            at net.minecraft.server.BlockPressurePlate.g(BlockPressurePlate.java:129)
            at net.minecraft.server.BlockPressurePlate.a(BlockPressurePlate.java:65)
            at net.minecraft.server.World.a(World.java:1560)
            at net.minecraft.server.World.f(World.java:1459)
            at net.minecraft.server.WorldServer.f(WorldServer.java:46)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:307)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:232)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:512)
  26. Offline


    I'll probably have a bit of time on my hands this evening when I get home from work. I will update the plugin to work with 0.90 and also use Afforesses fix for spawning storage and powered minecarts.

    The other enhancements will come later this week (probably during the weekend).
  27. Offline


    Thanks looking forward to an update.
  28. Offline


    hey i recently installed this pluggin on my server im running bukkit with a b326 and all the newest versions of core and mania. my problem is the spawners i set both to diamond ore but spawning doesnt work only destroy. i tryed switchijng the spawner block but it still doesnt work any ideas?
  29. Offline


    It has been mentioned that it is broke right now, annnnnnnnnnd also mentioned that he is working on an update.
  30. Offline


    ah thank you, cant wait for that update would make this plugin sooooooooooooo awesome

Share This Page