Inactive [MECH] TrainCarts v1.71.2 - Link minecarts of different types together to form trains [2222]

Discussion in 'Inactive/Unsupported Plugins' started by bergerkiller, Aug 3, 2011.

  1. Offline



    After a request from Marius A. Winsjansen I started to work on linked Minecarts. On the first day I already managed to make multiple carts move with the same speed, but a long list of bugs was to be expected. After fixing lots of bugs, adding lots of (complicated) Minecart handling functions and after hours of testing on my local server, this plugin is finally ready for a stable release! :D

    Also, special thanks go to @Shamebot for helping me out several times. :)

    For a lot of information about TrainCarts see the WIKI page!

    Configuration and permissions

    All configuration nodes can be found in config.yml and contains a description with it. Permissions can be found in PermissionDefaults.yml, combined with a description.


    Early development video (Photobucket)

    Video displaying version 0.6 of this plugin (YouTube)

    Video displaying version 1.0 of this plugin (YouTube)

    Video displaying version 1.1 of this plugin (YouTube)

    Video displaying version 1.2 of this plugin (holy...)

    A tutorial video in German explaining various sign-circuitry of TrainCarts

    PhotoBucket Sign system tutorial videos (also linked in the WIKI pages)
    Train spawner / Stations / Stations2 / Arrival signs / Train teleportation / Track switcher based on tags / Destinations / Blocker
    Video of how the switcher, station and destination signs work together

    Side information:

    It works best on straight lines with not too much elevation changes followed up by sharp corners. As long the cart gap can be adjusted, everything goes fine. It had some collision issues in the past, but I fixed all of that by manipulating the actual Minecraft server native code. I added links in the source where this was appropriate. Sharp 'U'-turns cause individual carts to lose perceptive of their direction. Keep at least one piece of track in between corner sections! Trains are stored on-disk when reloading and stopping the server, so expect trains to be there when you return.

    Important when updating: do one reload to save all trains, then replace traincarts.jar, and then do another reload. This next reload will probably cause a noClassDefFound exception (since the old jar got replaced), this is why a pre-reload is required. Replacing the jar without reloading is a very bad idea: it will cause a lot of runtime exceptions. Best is of course to stop the server and start again, but this is not always possible.

    This plugin is made compatible with Minecart Mania. If you notice a certain feature of Minecart Mania is not compatible with TrainCarts, notify me and I'll fix it. :)

    Known bugs:
    - None.

    - Train-sign message handling using SignLink (low priority)
    - Minecart use permissions (for individual carts?) such as Storage Minecarts


    If you encountered a bug, post exactly what you had done and in what order. Even a slight wobble can help fixing bugs. When posting (long) errors I recommend you to post everything, don't cut it off. I work with native methods, so in my case these lines are important. For comments on the media content see YouTube, it also contains a description with the music name when music is used.

    Bug reporting (extend)

    1. Post the Craftbukkit version you are using (the first info message in the console)
    2. Post the log from where the first plugin gets enabled to the 'done'.
    3. Post possible errors in this log too (don't cut them short)
    4. No error? Still post the log. Also explain how I can reproduce it, you can use screenshots
    5. Before reporting, remove ALL plugins other than TrainCarts and try again. If it works then, find out what plugin is interfering and post that here. I can add support.
    6. ALWAYS use the latest recommended Craftbukkit build with this, or my methods may just fail because of renamed functions.

    Important links:

    Request thread
    TrainCarts on BukkitDev for download and more
    TrainCarts source and more on GitHub
    TrainCartsBlocks add-on source and more on GitHub
    SignLink Bukkit page (required to use Arrival signs)
    MyWorlds Bukkit page (required to use Portal train teleportation)

    notice: try to keep SignLink/MyWorlds up-to-date to prevent compatibility issues.

    Installation for those that don't know how

    1. Download and install the latest craftbukkit version
    2. Download the latest TrainCarts version
    3. ^ Save the archive (zip file) to your computer
    4. ^ Open the archive you just downloaded
    5. In the folder your server sits in, create the plugins folder if it doesn't exist
    6. Open the plugins folder
    7. Move the TrainCarts.jar file found in the archive into the plugins folder
    8. Run your craftbukkit server and look in the console/log for possible errors, and/or if the plugin is enabled.


    Show your appreciation for my plugins by donating
  2. Offline


    @Aqua77 nope, but you can control it using redstone. If there is some sort of plugin that reads held items and outputs power when the item matches, you can use that. (I am not going to add all possible checkups, that will take ages to script. Then I'd get requests for items in inventory, in chest, train movement, train type, train name evaluations, all connected to all possible executing signs...just no)
  3. Offline


    @bergerkiller ok, thanks for your detailed answer. And even without this ejection condition its a very nice plugin
  4. Offline


    I got a question, why does my train slow down when i use station. It doesn't go faster when it rides over a booster.
  5. Offline


    It appears as if in 1.48, powered minecarts are no longer being started when departing a station. When arriving, it seems as if they are being shut off properly... but that's hard to gauge.

    Any clue why this would happen?

  6. Thank you for your effeorts, but since 1.48 boosters don't work anymore. They were ok on 1.47 though
  7. Offline


    1.48 and 1337 for the builds, and the format on the sign is -3/1/0 and i and up on the train. Not sure what is up with the powered carts, i remade the spawn sign and it is working now, but i did notice the order of the carts is the "right" way now, so I am correcting the rest of the spawners.

    also any thoughts on makeing it so a single cart that is place is not a train till it has 2 manually placed? It is only effecting me cause i have the permissions for it and such.
  8. Offline


    @Sneaky420 you can disable 'setOwnerOnPlacement' and set 'linking' to false in the defaultflags.yml file. Then you can use the 'canBeOwner' permission to set those that can claim a train.
  9. Offline


    When ever I try to use this plugin me server does not start properly. I am on craftbukkit build 1337 and when ever I try to join I get end of stream. Could you help? It was fine yesterday but broke when I tried to start it up today
  10. Offline


    What's the error message on server startup? What about when the connection is lost?
  11. Offline


    No error, its just that the train carts load last and it was never happening before. Also, I will add that when I put the train carts plugin on my server everything loads fine but then it crashes and I keep getting the connection reset in the consul.
    All the plugins I am currently running:

    AppleTree, ControllerBlock, Elevators, Essentials, EssentialsChat, GroupManager, EssentialsProtect, EssentialsSpawn, IntelliDoors, LazyRoad, LWCKeys, MineBackup, MinecartRemover, MineMaze, MobDisguise, NoCheat, OpenInv, Ptweaks, RawcriticsOreObfuscationPlugin, Residence, ResidenceSigns, SignColours, Spout, TelePearls, WorldEdit, WorldGuard, Permissions, mcMMO, Citizens, DuckShop, LWC, MobBounty, NarrowtuxLib, Showcase, Register
  12. Offline


    K will try that, and was the format for the ejector signs correct? ex. -3/1/0?
  13. Offline


    How can I make empty minecarts stop?
  14. Offline


    @xcanner you can't atm, well, you can manually by using a station brake, but haven't added a sign to check it.
  15. Offline


    We are only using the desination/tag, on our server to create a railnetwork. But when players accidentally pushes a empty minecart, they cant catch it, which is a bit of a problem :(
  16. Offline


    How do you let powered rails work?
  17. Offline


    @bularax Um, power them using a redstone torch? Powered rails are only disabled when the train is entering or leaving a station. (else it interferes)
  18. Offline


    i realy like the destionation system!
    this plugin is realy awsome.
    thank you so much!
  19. Offline


    @randeri221 Don't forget to say thanks to @Thulinma , since he started and wrote most of the destinations system for TrainCarts :)
  20. Tag signs work like normal when no destination is set. You can do what you want by making a direction "straight" in front of all stations, which ends in a piece of track that reverses the train, sending it back onto the switch. That way, the train comes back to the user if they did not set a destination. It's how I do it, anyway :)
  21. Offline


    So I was thinking, seeing as all my train destroy themselves after one use, if there could be something where there is a config with "static" trains that are named with 15 letters or less, and then on the spawn sign, you can spawn a train with all the settings preset for that named train.

    for the format, seeing as they are already named "train###" then if the sign sees a S, M, or P then it acts as it has been, but if the first letter is a T then it pulls that preconfiged train.

    The reason is so that i could utilize the "enter msg" when people get in a train at a station
  22. Offline


    Some of the destinations are over 4000 blocks away!
  23. I don't think you quite understand. What I mean, is this:

  24. Offline


    Still, the server is quite big, and this is a solution in some scenarios, but consider there are 6000 blocks between the 2 "other stationĀ“s". If you set something in the config file like "stopEmptyCarts=true", it really would be the best solution, and give the users the option to use it or not.
  25. That makes sense, yeah.
    Something bergerkiller would have to add, though. (I doubt he wants me meddling in much of the core plugin stuff, hehe... :) )
  26. Offline


    thank you so much Thulinma and everyone who made this plugin!
    btw its my birthday today :p
  27. Offline


    @randeri221 congratz :)

    Only wondering whether to use a separate 'detector sign' to check if trains are empty, or to add separate sign systems for empty carts...
  28. @bergerkiller Why not use the defaults system and apply a default to occupied / empty carts? Then people could set everything up themselves by adding tags to those defaults, for example... :)
  29. Offline


    @Thulinma But then you basically remake the Default property sign...sigh. xd

    Really...why not let users do this tempselves by placing property default signs around stations, for example. Else we have to set multiple type of 'station defaults' too, making it a bit complicated IMO.

    I can force denying all pushing/collisions by entities other than minecarts that can link.
  30. Offline


  31. Offline


    @xcanner No problem, although it would probably be simpler to have:
    Then you won't have trouble with escaping carts either.

Share This Page