From BergerHealer Wiki
Revision as of 03:32, 31 December 2023 by Bergerkiller (talk | contribs) (Marked this version for translation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Other languages:
Deutsch • ‎English • ‎Español • ‎Nederlands • ‎中文 • ‎中文(简体)‎ • ‎日本語 • ‎한국어
TrainCarts train 1.gif
Minecarts redefined
Spigot: TrainCarts
GitHub: TrainCarts

« Go back

TrainCarts is a plugin developed by Bergerkiller and features everything related to Trains of minecarts. It was initially developed to link multiple carts together, creating a moving train. Over time the plugin grew to host many more features, such as action signs, commands, properties, attachments and a broad API other plugins can implement to add their own features.


The first thing you will notice is that you can now connect carts together to form infinitely long trains. Every cart in this train is called a member, all members combined are called a group. Every member communicates with the group, so when the front cart hits a block, it stops the entire group. When someone pushes a cart, this pushing force is shared among all members. Therefore, long trains are less responsive than short trains.

By default all minecarts placed by players become TrainCarts managed Minecarts. If you want to spawn Vanilla Minecarts that behave with original Minecraft Physics, you can do so through permissions or by spawning with a dispenser. See this page for more information.

Mobs no longer get into Traincarts Minecarts by default. If you want to change this, see this page for more information or spawn vanilla minecarts instead.


Trains and individual carts of trains have properties. These can be set using commands (/train and /cart) or using the property sign.

New physics

Trains can travel on top of pressure plates and alongside ladders, and also upside-down below vanilla rails placed on a ceiling.

» Physical


Loads of different signs are available to automate stations, eject trains, put players in trains or update train configuration.

» Signs


The plugin has lots of commands you can use to alter the behavior of trains and minecarts.

» Commands

Command Selectors

You can use command selectors like @train and @ptrain in all other commands (including non-traincarts commands) to perform actions on trains or player passengers of trains based on selector criteria. For tighter integration with other plugins like economies and status effects, this is the ideal mechanism.

» Command Selectors

Train Spawn Chest

A special item allows for trains to be picked up and spawned.

» Train Spawn Chest

Path finding

Trains can have a destination set, after which switcher signs will automatically switch the track to lead the train towards it with the shortest route possible. This can be used to automate a large train network, sending trains to different stations fully automatically. It is also possible to configure a list of destinations the train should visit and have the train automatically go from one destination to the next.

» Traincarts Path Finding


Train ticket items can be used to restrict who can enter trains. They can also be used to assign properties to trains when used, such as assigning a destination to go to.

» Traincarts Tickets


TrainCarts can be configured in the config.yml file. All setting nodes have a header to help you understand what that particular node adjusts. Other than that, you can set the default train properties (properties applied to new trains) in the DefaultTrainProperties.yml file. The nodes should speak for themselves. Try not to touch the other files, as it can cause corrupted save data, or the plugin getting out of sync. Deleting the files should re-set TrainCarts completely, may one of the files get corrupted. The plugin automatically generates all configuration needed.

» Train Properties


The attachment editor is used to configure the appearance of your train. The interactive menu enables players to configure customized trains using item models, entities, seats, sounds and more. All of these can be animated to bring the train alive.

» Attachments


Like in all plugins that use BKCommonLib as a base, all permissions can be found in PermissionDefaults.yml in the plugin folder. There they are all listed together with a description and permission default, which you can alter as well.

» Overview of all permissions


Some features by this plugin may result in server or client lag. There are ways to prevent them.

» Lag

API and Add-ons

TrainCarts has a flexible API which allows other plugins to implement custom track, signs, attachments and more.

Useful Links

Traincarts Spigot Jenkins GitHub

BKCommonLib Spigot Jenkins GitHub

TC Coasters Spigot Jenkins GitHub

Depreciated Addons

(No longer supported in current versions of Traincarts)

ActionBlocks, added block-based systems to the game. They were dumbed-down versions of the sign systems mentioned above.

TrainCartsBlocks GitHub Download Page