TrainCarts 1.15.2-v1

Minecarts redefined

  1. TeamBergerhealer
    Tested Minecraft Versions:
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    • 1.15
    Source Code:
    bergerkiller, Friwi, mg_1999, KamikazePlatypus, lenis0012, timstans

    Please use GitHub to file an issue report

    This plugin requires BKCommonLib

    Since April 16, 2017 release version names will be in a MCVersion-pluginversion format. Older versions of Minecraft are also supported.

    Plugin: TrainCarts - Linked Minecarts, sign-redstone systems, easy to use and realistic

    TrainCarts/BKCommonLib for MC 1.7.10 can be found here (outdated)

    Join our discord server for plugin help.

    Incompatible with: RailCraft, ProtocolSupport (use ViaVersion instead)

    This plugin looks for suitable Minecarts and links them together if possible. When two Minecarts are being "linked", the Minecarts will act as one single moving train.

    Once carts are successfully linked, an effect is played and their velocity is shared in combination with an individual factor for each Minecart, which is used to remain a steady gap between carts. This gap is adjustable, the force at which this happens as well.

    End result: a train! You can move it, make a roller-coaster out of it, split it in half, watch trains collide, whatever you want to do with trains. :)

    As for 1.21, it is also possible to safely exit your train by setting an exit offset with a (sideways) push factor for the train. This feature is disabled by default. (only affects dropped items). If you want to display arrival times on signs (see redstone circuit part) you need SignLink, see the downloads on the bottom of the page.

    As for 1.35 you can set train properties to make 'special' trains, or to 'finalize' a train

    Resource Pack

    For testing out the new attachment system introduced in 1.12.2-v2, there is a free to download test resource pack available here:
    The models are bound to durability values of the golden pickaxe.


    The locomotive and carriages were made by Nullblox, a very talented voxel modeler. Maxi made the different color rollercoaster carts. If you want your own train models commissioned, you should definitely contact these and other very talented people on this website! :)

    Here's some links if you are interested in making or setting up your own models:

    Saved Trains

    Besides a resource pack, you can also download some default saved trains that can be put inside the 'plugins/Train_Carts/savedTrainModules' sub-folder:
    The following train names can be spawned:
    • loco - Spawns locomotive without animations
    • carr / carg / carb - Spawns red/green/blue carriages without animations
    • loco_anim - Spawns locomotive with animation 'wheel' to bring it to life
    • carr_anim / carg_anim / carb_anim - Spawns red/green/blue carriages with animation 'wheel' to bring it to life
    • ferris - Animated ferris wheel, use animation 'spin' to control it (WARNING: VERY LAGGY)
    • spinner - Animated spinning ride with 3 controllable animations ('spin', 'turn' and 'arm')
    • rolr / rolg / rolb - Rollercoaster carts with 4 seats
    Importing and exporting trains

    As of 1.15.2-v1, you can now use commands to import and export trains:
    • /savedtrain [name] export - Exports the train by name [name] and uploads it to our Hastebin server (default, is configurable). You can then share it with others, or import it on another server, or edit the contents!
    • /savedtrain [name] import - Imports train yaml from a Hastebin compatible server, like
    • /savedtrain list - List all saved trains
    • /savedtrain [name] module [module] - Stores a train in it's own yaml file on the server, named [module].yml
    Special Addons for TrainCarts
    • TCHangRail - Trains floating below iron fences and also below/above other kinds of blocks (by TeamBergerhealer)
    • TCCoasters - Rails in the air without requiring actual rails blocks (by TeamBergerhealer)
    • TCTicketShop - Use sign interaction to buy train tickets (by DefinitlyEvil)
    • LightAPI-Fork - Enables and powers the builtin Light attachment
    • Link minecarts using collision: no commands needed to make a train
    • Move trains as easily as you would with single Minecarts
    • Stores trains to file for persistence during reloads and server restarts
    • Use sign-redstone circuits for subway systems, complete railroads and much more
    • Station to gracefully stop and launch trains
    • Launcher
    • Spawn
    • Teleport
    • Player enter/ejector
    • Property setters
    • Tag systems to switch certain tracks based on tags on the train
    • Destination systems to make your train travel to far-away lands all on it's own
    • Transferring items between trains and storage blocks (chest, furnace, etc.)
    • Infinite minecart speeds are possible, higher speed than vanilla!
    • Change the blocks displayed in trains
    • Cancel collisions with players, mobs, other trains using a variety of collision modes
    • Loads of fixes for vanilla minecart physics, fixing network synchronization bugs (off the rails)
    • Detector regions, to detect trains on stretches of track
    • Vertical rails using ladders
    • X-crossing rails using pressure plates
    • API for custom rails and custom sign actions
    • Teleport trains /w passengers (MyWorlds needed)
    • Show arrival times on signs (SignLink needed)
    • Push-away: Push mobs, players and items away from your trains to keep them running
    • Change the gravity, slowdown and other physics behaviors of minecarts and trains
    • Create custom 3D trains, using your own resource packs and creativity
    • Fun!

    Known Issues
    • When non-operator players ride a train, the train glitches out and the player's cart gets stuck in position
      NoCheatPlus thinks the player is cheating, because the cart is moving in unintended ways. The cart is teleported back to a valid state causing these strange glitches. To fix this, set the following to false in the NoCheatPlus configuration:
      Code (Text):
              enforcelocation: false

    • When players are near, trains reach their destinations. With no one near, they don't. What do I do?
      By default trains do not keep chunks loaded, and they will unload once they move into unloaded chunks. To make trains keep the chunk area (and themselves) around them loaded, set the 'keepchunksloaded' property to True. This can be done using the /train keepchunksloaded true command, using a property sign or by changing it to true in the DefaultTrainProperties.yml file. For more information about train properties, see here.​
    • When I exit a train, the train disappears. What gives?
      If you have CraftBook installed on the server, this plugin can actually do exactly that. Turn it off in the configuration.
    • I have a iMac and signs don't work. What do I do?
      Add 'parseOldSigns: true' to the config and type signs like 'train' instead of '[train]'.
    If you have another plugin that performs similar Minecart replacement techniques, it is likely that TrainCarts will not function or function poorly. For the 'chunk persistence' part of this plugin, other plugins that unload chunks without firing events result in this feature failing. Minebackup is known for having this problem.

    If you really like my work and want to give something in return, feel free to donate something small to me using the link down below. Thank you! :)

Recent Reviews

  1. ElaBosak
    Version: 1.15.2-v1
    A very unexpected plugin, I believe that it must be very useful to put into the spigot server !
  2. PartyMC
    Version: 1.14.4-v1
    I've been using this plugin for a really long time. It's absolutely great, and it is constantly getting new features. A great support team, great features and much more. Definetely recommend this plugin!
  3. NomadMC
    Version: 1.14.4-v1
    A fantastic plugin all around with an equally fantastic development team. If you have a server that needs trains, then this plugin is most definitely a must.

    Beyond just the ability to make properly functioning trains, though, this plugin can make virtually anything possible when it comes to vehicles in general (or just about anything else on your server that you want to move!).

    The devs of this plugin will help with essentially anything if you ask about it on Discord, too, and they keep their stuff properly maintained.

    Overall, there's nothing I can think of as far as complaints go. The only thing that this plugin needs is more of what it already has - and there's not a whole lot more you can do than this.
  4. 7kasper
    Version: 1.14.4-v1
    This is one of the oldest and best plugins I have used. Since I think 8 years ago this 'thing' has blown my mind away what plugins can do on your server. Sometimes we had a few buggy and bumpy rights, but the stuff you can do with this plugin for the infrastructure on your server is endless.
  5. Epicpuppy613
    Version: 1.14.4-v1
    [09:39:32] [Server thread/ERROR]: [Train_Carts] Failed to synchronize a network controller:
    [09:39:32] [Server thread/ERROR]: [BKCommonLib] java.lang.NullPointerException
    Keep getting this error over and over again
    1. TeamBergerhealer
      Author's Response
      can you use or other to post the full error you are getting? Always better to post an issue ticket on github or join the discord to get help there
  6. Eisenbahner218
    Version: 1.14.4-v1
    Der Server (Spigot 1.14.2) stürzt öfters ab

    [Train_Carts] Error while initializing sign power states in chunk CharlestonCity [-5/-2]
    java.util.ConcurrentModificationException: null
    at java.util.HashMap$HashIterator.nextNode(Unknown Source) ~[?:1.8.0_211]
    at java.util.HashMap$ Source) ~[?:1.8.0_211]
    at java.lang.Iterable.forEach(Unknown Source) ~[?:1.8.0_211]
    at net.minecraft.server.v1_14_R1.ChunkMapDistance.a(SourceFile:132) ~[spigot-1.14.2.jar:git-Spigot-093165d-ba575a5]
    at net.minecraft.server.v1_14_R1.ChunkProviderServer.tickDistanceManager( ~[spigot-1.14.2.jar:git-Spigot-093165d-ba575a5]
    at net.minecraft.server.v1_14_R1.ChunkProviderServer.getChunkFutureMainThread( ~[spigot-1.14.2.jar:git-Spigot-093165d-ba575a5]
    at net.minecraft.server.v1_14_R1.ChunkProviderServer.getChunkAt( ~[spigot-1.14.2.jar:git-Spigot-093165d-ba575a5]
    at net.minecraft.server.v1_14_R1.World.getChunkAt( ~[spigot-1.14.2.jar:git-Spigot-093165d-ba575a5]
    1. TeamBergerhealer
      Author's Response
      This appears to be a problem on 1.14.3 and older, and older builds of 1.14.4 of the server. Try updating the server first to the latest 1.14.4 build to see if problems go away.
  7. Mr_Kiwixe
    Version: 1.14.4-v1
    super plugin! nothing to say, just thank you for the 1.14!
    I hope you continue to maintain traincart up to date
  8. Corebb
    Version: 1.14.4-v1
    I have been using the 1.14 dev build version since two months ago. There are many problems in this process. Now the stable version is finally available.Thanks for your efforts, I really like this plugin.
  9. TMCThomas00
    Version: 1.13.2-v1
    probably the best plugin for minecraft out there! The possibilities are endless! for 1.14 check the dev builds people!
  10. PatrickBronke
    Version: 1.13.2-v1
    I need an Update for 1.14.3

    The Plugins is really good. But I need an Update vor my Server.