TrainCarts icon

TrainCarts -----

Minecarts redefined




  • [+] Added support for the new resource pack format for the model listing dialog
  • [+] Added support for the experimental new minecart changes datapack feature
  • [+] Added support for [+portal] with myworlds portal signs to teleport trains
  • [+] Added per-cart configurable coupler length (cart spacing) to physical menu
  • [ ! ] Fixed issue with broken fishing line particles on spigot 1.20
  • [ ! ] Fixed an issue on spigot of trains not seeing signs
  • [ ! ] Fixed middle-click placed signs with back text not being properly detected
  • [ ! ] Fixed ticket edit command not accepting ticket names with spaces
----------, Apr 27, 2025

  • Improvements to Spawning trains:
    • [+] Added new random selection pattern: 4[50%m 50%s]
    • [+] Added new /savedtrain [name] spawn [pattern] to create saved and reusable spawn patterns
    • [ ˄ ] Improved the train spawning chest to automatically connect with and extend existing nearby trains
  • [ ˄ ] Improved path finding to take fixed enter-direction based routes into account
  • [ ! ] Fixed a path finding bug that caused it to take longer than normal routes with tc-coasters track
  • [+] Added support for skip signs skipping signs in the same vertical stack below a rail
  • [+] Added an optional seat name argument for the train and cart enter commands
  • [ ! ] Fixed a problem with the acceleration property sign also setting a wait delay
  • [ ! ] Fixed an issue with the switcher not always toggling left and right due to disconnected track
  • [ ! ] Fixed attachment editor collapsed state no longer persisting
  • [+] Added option for the model search dialog to not compact folders automatically
  • [ ! ] Fixed import commands not accepting urls without quotes
  • [ ! ] Fixed certain train names not working as clickable items in train list command
  • [+] Added option to turn off the glowing effect for the debug mutex command
  • [ ! ] Fixed an error in the elytra seat mode
----------, Sep 21, 2024

  • [+] Added support for Minecraft 1.20.5 and 1.20.6 (BKCL must be updated too)
  • [ ∗  ] Changed train name property so it works as a default too
  • [ ∗  ] Changed to cloud v2, supporting quoted arguments in more places
  • [ ! ] Fixed pathing mutex sign not toggling the lever when trains are using it
  • [+] Added a debug destination teleport command
----------, Jun 13, 2024

  • [ ˄ ] Improved persistence of trains, now also preserving current (launch) actions, activated signs, mutex states and more
  • [ ˄ ] Improved seats so entities are actually positioned where the seats are server-sided, useful for @e effects
  • [+] Added radius and simulation state to the keep chunks loaded feature, which can help performance tweaking
  • [ ! ] Fixed sign post not activated when put on top of block assigned rail with tc-coasters, causing confusion
  • [ ! ] Fixed a sound bug with the sequencer attachment and just-spawned carts
  • [+] Added a max-destinations option for the debug stick to limit chat spam
  • [+] Added support for more properties in the (sound) effect sequencer functions
  • [+] Added color selection for the shulker box entity
  • [+] Added support for use of * in the train name n@ statement
  • [+] Added reload globalconfig command for the model store and tickets
  • [ ! ] Fixed claims not set when creating a new model store configuration sometimes
  • [ ! ] Fixed a bug that can occur with model attachments having an un-expandable root node
  • [ ! ] Fixed an issue since 1.20 that players get teleported to the cart before entering a seat
----------, Apr 24, 2024

  • [+] Added new Sequencer attachment for automatically playing sounds and sound loops
  • [+] Added debugging mode for debugging when trains split apart
  • [+] Added new pathing mutex to replace the waiter sign
  • [+] Added optional spawn limit per saved train name
  • [+] Added max train/cart limits and spawn sign cooldown in configuration
  • [ ˄ ] Improved chest item to deplete items when finite
  • [ ˄ ] Improved auto-routing station to also do path prediction, like switchers do
  • [ ˄ ] Improved mutex sign debugging to use display entities, no longer lagging out players
  • [ ! ] Fixed an issue of recursive chunk loading in the sign tracker some people had issues with
  • [ ! ] Fixed server hang due to recursive physics connecting redstone wire to signs
  • [ ! ] Fixed trains being saved with the wrong position on server shutdown, causing issues
  • [ ! ] Fixed name-less ticket cloning assigning all default properties
  • [ ∗  ] Changed destination sign building logic to deny if destination already exists
----------, Dec 17, 2023

  • [+] Added support for the new TAB plugin versions
  • [ ˄ ] Improved permission handling of properties so they are checked when spawning or importing trains
  • [+] Added a permission check to limit the use of @train selector
  • [+] Added a visual connection between redstone and traincarts action signs
  • [+] Added capability of naming attachments
  • [+] Added capability of ejecting a specific named seat using commands (--seat flag)
  • [+] Added a new Sound attachment, more will be added later
  • [+] Added a new train effect command (to trigger sounds or other effects)
  • [+] Added a configurable offset for the SCHEMATIC attachment (fixes lighting problems)
  • [ ∗  ] Changed effect sign so it will now activate attachment effects (see wiki page!)
  • [ ! ] Fixed carts flipping randomly when spawning-and-saving a train
  • [ ! ] Fixed 'spazzing' of players that use smooth coasters mod
  • [ ! ] Fixed seat exit position or offset spuriously not working
  • [ ! ] Fixed model property being set/generated for vanilla minecarts
  • [ ! ] Fixed an error that occurred when closing the model search dialog
  • [ ! ] Fixed vehicle movement event sometimes not fired (caused a glitch with WorldGuard regions)
  • [+] Added title action sign
----------, Oct 8, 2023

  • [ ! ] Fixed model browser empty when resource pack has only one model in it
  • [ ! ] Fixed regression that the signactionevent didnt fire for 'unrecognized' signs
  • [ ! ] Fixed issue on Minecraft 1.8 where third-person mode caused glitches and client d/c
  • [+] Added a new align-up P anchor that is resistant to flipping when going upside-down (pitch)
  • [ ! ] Fixed train teleports not working properly, especially for passengers of trains
----------, Aug 7, 2023

  • [+] Added support for Minecraft 1.20 and 1.20.1
  • [+] Added support for both sides of signs, and hanging signs
  • [ ∗  ] Changed default item transform mode to be 'hybrid'
  • [ ! ] Fixed seat not dynamically reloading when no position was set yet
  • [ ∗  ] Changed detector sign to use true distance for the configured maximum distance check
----------, Jun 21, 2023

  • [+] Added fully functional 'model store' system with the MODEL attachment (named attachment configurations)
  • [+] Added function to copy-paste attachments between different trains/carts
  • [+] Added brightness configuration for item/block attachments on 1.19.4+
  • [ ! ] Fixed players getting ejects when a Minecart goes upside-down
  • [ ! ] Fixed physics glitch when configuring a constant cart-gap distance in the configuration
  • [ ˄ ] Improved player-click seat changing behavior to be more consistent
  • [ ! ] Fixed standing seat mode not working when player is in gamemode adventure
  • [ ∗  ] Changed the hitbox attachment to use the interaction entity on 1.19.4+
  • [ ! ] Fixed train spawn chest spawning trains in reverse sometimes when setting an initial speed
  • [ ˄ ] Improved path-finding algorithm to cache found paths to reduce impact on TPS
  • [ ! ] Fixed smoothcoasters bug on 1.19.4+ due to Bundle packet problem client-side
----------, Jun 7, 2023

  • [+] Added support for 1.19.4 display item and block entities as attachments
  • [+] Added ITEM attachment hybrid transform mode (display entities on 1.19.4+, armorstands on <= 1.19.3)
  • [+] Added BLOCK attachment (1.19.4+ only)
  • [+] Added SCHEMATIC attachment (1.19.4+ only, turn WorldEdit schematics into attachments)
  • [+] Added item model listing menu integration to the item selection menu
  • [ ∗  ] Changed how attachment configurations work, they now automatically synchronize using yaml change listeners
  • [ ! ] Fixed elevator signs not working below y=0
  • [ ˄ ] Improved train network synchronization so they use Bundle packets for 1.19.4+ clients automatically
  • [ ˄ ] Improved arg-less speedlimit command so it shows current train speed as well as the limit
  • [ ˄ ] Improved bounding box display for 1.19.4+ clients using display entities
----------, Apr 7, 2023

  • [+] Added a new TC demo resource pack release fixing problems on 1.19.3
  • [+] Added demo train properties to the TC Demo resource pack v4
  • [+] Added loading of saved train properties from resource packs
  • [ ! ] Fixed a bug with sign posts rotated 45 degrees with a relative direction on the first line
  • [ ! ] Fixed seat display items not updating pose every tick, causing jittery movement
  • [ ! ] Fixed seat display items not despawning sometimes
  • [ ! ] Fixed a scoreboard-related bug that caused client disconnection on bungee/velocity
  • [ ! ] Fixed a random error when destroying the cart the player is in
----------, Mar 14, 2023

  • [+] Added support for paper's new plugin loader (preloader bug)
  • [+] Added /train model search command to view and index resource pack model items
  • [+] Added a new hitbox attachment (clickable invisible box to enter/destroy the cart)
  • [ ! ] Fixed rail switching and distant redstone changes causing signs to re-activate
  • [ ! ] Fixed an issue from previous update that caused trains to hop between TCC tracks
  • [ ! ] Fixed banking roll never quite reaching 0, causing weird orientations
  • [ ! ] Fixed teleport sign spawning carts with the wrong orientation sometimes
  • [ ! ] Fixed an error when plugin disables and glow color is reset too late
  • [ ! ] Fixed a lag issue inside an event handler when a lot of entities exist on a world
  • [ ! ] Fixed teleport or warp commands teleporting players back to the cart when ejecting
  • [ ! ] Fixed fishing line bounding box not spawning right on Minecraft 1.10 and earlier
  • [ ˄ ] Improved the handling of detecting sign changes and sign breaking by players
  • [ ∗  ] Changed blocker signs so they also slow down trains that are being launched
----------, Feb 22, 2023

  • [+] Added support for breaking changes in BKCommonLib 1.19.3 (for mc 1.19.3 support)
  • [+] Added standing seat mode
  • [ ! ] Fixed an issue of signs breaking on older MC versions when no player is nearby
  • [ ! ] Fixed a few cases where forced-loaded chunks weren't timely closed
  • [ ! ] Fixed an error related to RailPiece force verification
  • [ ! ] Fixed strange zero-wheel-distance cart rotations on some kinds of paths
  • [ ˄ ] Improved handling of stacked ticket map items
  • [ ˄ ] Improved messages when using the chest item to spawn trains (clicking air)
----------, Dec 26, 2022

  • Sign activation related fixes:
    • [ ! ] Fixed signs not activating when at chunk borders
    • [ ! ] Fixed signs not activating when placed while a train is on the rails above
    • [ ! ] Fixed plugin or command-created signs not being recognized
    • [ ! ] Fixed signs placed using ctrl-middle-click not being recognized
    • [ ! ] Fixed signs attached to the back of vertical rails not working
    • [ ! ] Fixed detector sign staying activated when a train on it splits in two
  • Mutex related fixes:
    • [ ! ] Fixed mutex sign not at all co-operating with TC-Coasters
    • [ ! ] Fixed smart mutex not being very smart sometimes
    • [ ˄ ] Improved mutex train enter priority logic
    • [+] Added detailed information to the /train status command
  • [+] Added animation node copy-paste functionality to animation menu
  • [+] Added animation movement control - can simulate wheels now
  • [+] Added hover tooltips and clickable items in train list
  • [+] Added unloaded train selector condition
  • [+] Added train flip command
  • [+] Added lock orientation feature in /train save - so trains don't flip anymore when saving again
  • [ ! ] Fixed shutdown sequence so third-party rails don't end up used after plugin is disabled
  • [ ! ] Fixed furnace cart not accepting charcoal (vanilla parity)
  • [ ! ] Fixed a glitch with the seat attachment when going upside-down
  • [ ! ] Fixed some issues of trains sticking around in the member lookup cache
  • [ ! ] Fixed trains not properly restoring on startup inside spawn chunks / older mc versions
  • [ ˄ ] Improved direction triggers to also support TC-Coasters junction names, e.g. [+train:1]
  • [ ˄ ] Improved flexibility of using (colored) train names, restrict use of dot
  • [ ˄ ] Improved performance of rail tracking to also keep the chunks ahead loaded
  • [ ˄ ] Improved performance attachment network synchronization (packet thread per player)
  • [ ∗  ] Changed physics logic to no longer do stuff in Entity onTick() - caused clock jitter issues
----------, Oct 30, 2022

Changes
  • [Added] Combined 'playerenterexit' property to set both at the same time
  • [Added] Can now set true/false properties using a statement (redstone, check for tag, etc.)
  • [Fixed] Bugs related to the 1.19 sign changes / redstone events
  • [Added] 'Fake' tracked sign API for invisible signs (used by new TC-Coasters node signs)
  • [Fixed] Counter switcher signs were broken / erratic
  • [Fixed] Concurrent modification error when a switcher sign update destroyed a train
  • [Improved] Skip sign can now use more than 2 conditions with extra signs below the skip sign
  • [Improved] Train chest item can now set an initial speed to spawn the train with
----------, Jul 24, 2022

Some issues showed up early after the v1 release which have been fixed
  • Client d/c when adding an attachment in the attachment editor on 1.19
  • NPE when pathfinding runs on a world without any trains
  • Redstone-activating a powered rail didn't cause a train to start moving (similar with activator rails)
----------, Jun 22, 2022

Changes
  • [Improved] Performance improvements all around: RedstoneTracker, MutexZone logic
  • [Improved] SmoothCoasters API support updated to support the newest mod release (requires mod update!)
  • [Fixed] Train sign falling/rising trigger ([/train] and [\train]) still got triggered by train enter/leave
  • [Improved] Sign block-neighbour cache to support 1.19 where sign block physics events no longer occur
  • [Added] Relaxed train name lookup that supports color-coded train names and mixed-case train names (--train, selectors, edit command)
  • [Added] Train --nearest flag to more easily run commands on the nearest train, without having to specify x/y/z/distance
  • [Fixed] Platform attachment had an issue that right-clicking to enter sometimes resulted in the client destroying the train with left-click
----------, Jun 19, 2022

Changes
  • [Added] Smart mutex functionality
  • [Improved] Performance improvements
    • Rail Lookup now per world, reducing expense of block hashcodes
    • Mutex zone lookup much more efficient
    • Detector regions are now mapped in the rail lookup as well, eliminating a map lookup
  • [Added] Train status command to view what action the train is doing
  • [Added] Added Seat Change events (API)
  • [Added] Viewdistance property (change passenger view distance, paper only)
  • [Added] Ticket text added to Localization.yml
  • [Fixed] Trains with keep chunks loaded on restore properly when worlds are loaded at runtime
  • [Fixed] DestroyOnShutdown works more reliably now (async)
  • [Added] Savedtrain copy command
  • [Changed] Trains waiting at stations keep chunks loaded when keepChunksLoadedOnlyWhenMoving is enabled
  • [Fixed] Seat rotation locking didn't work unless a seat position was configured
  • [Fixed] Minecarts slowly slid down unpowered powered rails, rather than stopping completely
  • [Fixed] Trains splitting up at some vertical-to-slope rail sections
----------, Jun 7, 2022

Nothing too special. Some performance changes from a test branch have been merged in, reducing the impact to TPS traincarts has. (train physics)
  • RailLookup cache replaces three other caches, eliminating a lot of unneeded hashmap lookups for business logic
  • Fix 'excessive velocity' warnings from paper during collision mode push
  • Fix players falling through the platform attachment (when going down) since MC 1.17 due to client-side bug (workaround)
  • Fix weird issue of unloaded trains sticking around where they shouldn't, causing error in /train list. Is now cleaned up with some extra guards.
----------, Mar 5, 2022

I've worked these past months on getting spectator mode for seats to work. What this means is that you can now lock the first-person camera view while inside the seat, and even have the camera go upside-down!

Changes
  • [Improved] Seat Attachment greatly improved
    • New spectator first-person locked view mode
    • New icons and menu layout
    • Shows ingame where the seat is at with a dummy player model
    • Better support for SmoothCoasters
    • Bugfixes and many more combinations of modes supported
  • [Fixed] Passengers getting stuck when warping out of a train with nobody nearby
  • [Fixed] Switcher sign was not executing path finding rules by default anymore (if no statements match)
  • [Added] Reroute status command, made millis-per-tick configurable, performance / OOM fixes
  • [Added] The /train collision mobs command was absent
  • [Added] New /train menu add and subtract commands for configuring editor values
  • [Fixed] Station sign acceleration value syntax did not work
  • [Fixed] Changing a spawn sign with commands did not refresh its behavior
  • [Improved] Train ticket assigning commands have auto-completions now
  • [Added] Attachment anchor 'cart' (position at root)
  • [Improved] Performance improvements in the rail lookup cache and rail path maths
  • [Added] Keepchunksloaded command train selector
  • [Fixed] The destroyall command did not always remove unloaded trains since MC 1.17, and can now be set to ignore vanilla carts
  • [Added] Made the behavior of push/destroy/damage collision modes being ignored when from behind, configurable
----------, Feb 24, 2022

You must update BKCommonLib as well! Please read the changelog carefully, some things may be important!

There is a change for the train chest permissions, instead of train.command.chest it is now:
  • train.command.chest.use - for using the item
  • train.command.chest.create - for modifying/creating/giving the item
Changes:
  • [Fixed] Carts were disconnecting from each other sometimes due to floating point math bug
  • [Fixed] Train animations reset weirdly when switching from looped to non-looped during the loop-to-front phase
  • [Added] Trains with keep chunks loaded on will now automatically unload when derailed and moving a distance away from the origin of derailment
  • [Added] When trains derail, /train info now shows where this happened exactly
  • [Improved] The train chest command now has separate use/create perms, and a 'finite' mode, making it suitable for Survival use
  • [Improved] Now uses lore tags rather than the display name for the train chest item states, such as empty
  • [Added] Train selector condition 'derailed'
  • [Fixed] Eject at sign was not respecting yaw/pitch angles
  • [Added] A /train reroute --stop command - to stop rerouting if it impacts TPS too badly. Use with caution
  • [Changed] Sneak-right-clicking with the debug destination stick will now only reroute direct neighbours of the switcher/destination sign first reached from where was clicked
----------, Dec 25, 2021

Adds support for 1.18 through the BKCommonLib update. Now depends on the cloud included by BKCommonLib, shrinking the jar substantially.

Bugfixes & changes
  • Cancelling item drops did not work (killnodrops, chest item)
  • The playerpassengers selector now supports player names as well
  • Limit distance from which /train edit works (configurable)
  • Preloader update, fixes problem with AsyncWorldEdit
  • Fixes NPE when trying to use trigger/arrival sign system
----------, Dec 12, 2021

Animation menu didn't render properly due to a bug, which this version fixes. No, it does not yet support 1.18.
----------, Dec 1, 2021

Of note are changes to the station sign, animations in the attachment editor and minor fixes/additions in various commands.

Changes:
  • [Added] Added support for the new LightAPI release
  • [Added] Scene marker system in attachment animations to play sections of a longer animation
  • [Improved] Can now play the animation when using A/D in the animation frame list
  • [Added] New 'route' mode for the station sign (launch towards destination)
  • [Improved] Perform cascading reroute when a changed/new path is detected for a node (less use of reroute command needed)
  • [Improved] Improved performance handling BlockPhysicsEvent / redstone physics
  • [Added] Added support for @p in the ticket give command
  • [Added] New selectors: sort, limit, passengers and playerpassengers
  • [Fixed] Wall signs below sign posts did not always trigger
  • [Added] A startuplog command for debugging uses
  • [Added] Relative speed limit support in the speedlimit/maxspeed command
  • [Improved] Rewrote how persistent sign metadata is stored, mutex signs work more reliably now
  • [Fixed] Glitch of carts shooting apart on long tc-coasters track sections when reversing
  • [Fixed] DefaultTrainProperties were not applied to summoned carts that turn into traincarts
  • [Added] Trains that fly up or out of the world (border) are now killed
  • [Added] Start of ingame command completions for the @ train and @ptrain selectors
  • [Added] MissingPathConnectionEvent event for use by third-party plugins (notifies when pathfinding fails)
  • [Fixed] The train keepchunksloaded and teleport commands now properly restore trains in unloaded chunks
----------, Nov 28, 2021

  • [Added] Support for 1.17, requires the new BKCommonLib!
  • [Added] New commands
    • Train eject command
    • Train enter command now works from another world
    • Ticket remove command
    • Cart export and save commands, to only export the selected cart as a train
  • [Added] New @Train and @ptrain selector arguments
    • Can now select trains by tags, speed, destination, and more
    • Can now select them in a cuboid region or distance from a point, similar to how @e works
  • [Fixed] Upside-down seat caused some tab view glitches, should be gone now
  • [Fixed] Do not mount player in vehicle when in elytra seat view mode
  • [Fixed] Trains were not always reversing due to gravity on minor slopes
  • [Changed] Relative exit offset is now relative to movement and cart root rather than the seats
  • [Added] Eject offset property can now also be set to absolute world coordinates
  • [Added] Friction property
  • [Added] New debug tool for calculating distance between two points
  • [Improved] Registries initialize in onLoad so that add-on registers rails and attachments are loaded properly when Traincarts enables
  • [Added] Preloader that will inform when dependencies are missing
  • [Added] Savedtrain list permission, so that saved trains can be hidden if desired
  • [Added] Path finding API for non-sign based routing add-ons
----------, Aug 21, 2021

Not 1.17 compatible! Release update for 1.16 stability. Re-upload of an earlier version fixing an Adventure library version bug.

Changes:
  • [Fixed] Infinite loop server crash when SignLink variables were used recursively in message shortcuts
  • [Fixed] NPE thrown when setting/getting mob collision rules
  • [Fixed] Client d/c on older mc versions when the Physical menu was opened
  • [Improved] Fixes to pathfinding, addition of rerouteOnStartup option
  • [Fixed] Junction switching bug that sometimes resulted in trains being split up
  • [Fixed] Saved train zip files were read as yaml, resulting in errors. Now skips zip files.
  • [Added] Switcher sign now supports %-based counter switching (split trains in half with 50%, for example)
  • [Fixed] Jittery movement of trains on tc-coasters track particularly
  • [Fixed] Physical bounding box better updating, with improved wheel position calculations
  • [Fixed] Seat exit position was sometimes wrong because of client-side prediction
  • [Improved] Train name is now persistent after saving and respawning, format saved to yaml separately
  • [Fixed] Sign placement cancelling didn't work right for the 'new' wood type signs
  • [Changed] New /train locate command
  • [Fixed] [Cloud] Better handling of brigadier initialization failures
  • [Added] Experimental 'realtime physics' property
  • [Improved] The launch command syntax made slightly easier to use
  • [Improved] Launcher sign has new syntax for changing to a new maximum speed, allowing for easier boosting
  • [Improved] The break.any perm is now set to FALSE rather than OP to avoid unexpected behavior
  • [Fixed] Vehicle enter and exit can now be debugged, to figure out what plugin(s) are cancelling the events
  • [Fixed] Command selector support for MC 1.8
  • [Fixed] Cart skip sign not evaluating statements
  • [Fixed] Fixes to the train/cart inventory statements
  • [Fixed] The playerenter and playerexit statement did not work due to name clash
  • [Fixed] Fix issues due to asynchronous access during attachment parallel updates
  • [Added] enabledWorlds configuration option (alternative to disabledWorlds, as a whitelist)
  • [Fixed] Carts with player collision disabled could be moved with knockback (swords)
----------, Jun 11, 2021

Not 1.17 compatible! Release update for 1.16 stability.

Changes:
  • [Fixed] Infinite loop server crash when SignLink variables were used recursively in message shortcuts
  • [Fixed] NPE thrown when setting/getting mob collision rules
  • [Fixed] Client d/c on older mc versions when the Physical menu was opened
  • [Improved] Fixes to pathfinding, addition of rerouteOnStartup option
  • [Fixed] Junction switching bug that sometimes resulted in trains being split up
  • [Fixed] Saved train zip files were read as yaml, resulting in errors. Now skips zip files.
  • [Added] Switcher sign now supports %-based counter switching (split trains in half with 50%, for example)
  • [Fixed] Jittery movement of trains on tc-coasters track particularly
  • [Fixed] Physical bounding box better updating, with improved wheel position calculations
  • [Fixed] Seat exit position was sometimes wrong because of client-side prediction
  • [Improved] Train name is now persistent after saving and respawning, format saved to yaml separately
  • [Fixed] Sign placement cancelling didn't work right for the 'new' wood type signs
  • [Changed] New /train locate command
  • [Fixed] [Cloud] Better handling of brigadier initialization failures
  • [Added] Experimental 'realtime physics' property
  • [Improved] The launch command syntax made slightly easier to use
  • [Improved] Launcher sign has new syntax for changing to a new maximum speed, allowing for easier boosting
  • [Improved] The break.any perm is now set to FALSE rather than OP to avoid unexpected behavior
  • [Fixed] Vehicle enter and exit can now be debugged, to figure out what plugin(s) are cancelling the events
  • [Fixed] Command selector support for MC 1.8
  • [Fixed] Cart skip sign not evaluating statements
  • [Fixed] Fixes to the train/cart inventory statements
  • [Fixed] The playerenter and playerexit statement did not work due to name clash
  • [Fixed] Fix issues due to asynchronous access during attachment parallel updates
  • [Added] enabledWorlds configuration option (alternative to disabledWorlds, as a whitelist)
  • [Fixed] Carts with player collision disabled could be moved with knockback (swords)
----------, Jun 11, 2021

  • [Improved] All commands rewritten using the Cloud Command Framework
    • Command suggestions, auto-completions, help menu
    • Commands can now work in command blocks, with --train and --near flags
    • Some commands have changed syntax, such as launch and animate commands
    • New @ptrain and @Train selectors that work with all commands
    • All train and cart properties now use a new IProperty API that plugins can extend
  • [Fixed] Many train movement physics fixes, train reversal, gravity, junctions
  • [Added] Bounding box and wheel positions displayed ingame while editing physical in attachment editor
  • [Added] Launch velocity can now be specified on the last line of the station sign
  • [Improved] Property sign will now inform when syntax on the sign is incorrect
  • [Added] New import and export commands for trains and train storing chest
  • [Fixed] Accept negative numbers for launch/spawn sign and command
  • [Fixed] Trains were stopping for other trains when wait distance was set to 0
  • [Fixed] Launching instantly into a given direction did not work
  • [Fixed] Center-spawned trains used incorrect positioning
  • [Fixed] Wait distance was not saved persistently
  • [Fixed] Light attachment was not controlled using the animation active state
  • [Fixed] Changes to attachment editor in some menus were not saved persistently
  • [Added] WIKI link added to the /train usage command
----------, Jan 31, 2021

Changes:
  • Attachment animation menu now supports multi-selection and re-ordering functionalities
  • Fixes animation not being saved when making changes such as renaming
  • Fixes hopper minecarts not transferring items from above every tick
  • Fixes drive sound and enter message properties
  • The spawnitemdrops property now also prevents chest/hopper minecart contents from dropping
  • New wait distance delay, acceleration and deceleration properties to have trains slow for trains up ahead more naturally
  • Update links to new traincarts wiki
  • New km/h(/s) / mph(/s) / ft/s / G / others syntax support for launcher signs, speed limit property and where acceleration is used
  • Now constant acceleration can be specified on launcher signs
  • New option for sound sign to only play for passengers
----------, Nov 4, 2020

Changes
  • Fixes an issue of players glitching in seats when players enter and exit at different positions
  • Fixes a physics glitch that caused carts to move further apart / closer together when accelerating/decelerating due to gravity.
  • Makes the /train debug destination tool more powerful, allowing for infinite length track traversal (spread over many ticks if needed). Messages made less confusing.
  • The /train issue command now has a new format with nice markup
----------, Sep 20, 2020

Highlights
  • For BKCommonLib 1.16.1-v1 (Adds support for Minecraft 1.16)
  • Many new quality of life additions for the seat and entity attachments
  • Important bugfixes
  • Please note that players can exit even when playerexit is false on 1.16. This is a client bug. See this ticket.
New additions and changes
  • [Added] Enter sign 'misc' mode, to put non-mobs/players as passengers of a train
  • [Added] Trigger sign time date format can be configured in config.yml
  • [Added] Ticket map item background image can be configured per ticket
  • [Added] Waiter sign now toggled down a lever while train is waiting
  • [Added] Ticket sign is back, hooking into Essentials economy to have players in trains pay for the ride
  • [Added] Minecraft WIKI url added to the messages displayed when building Traincarts signs
  • [Added] Route manager to have trains follow a per-train configured list of destinations
  • [Added] The playback of hiss sounds, such as at the station, can be disabled in config.yml
  • [Added] Seat_parent attachment position anchor to mount attachments in the parent attachment
  • [Added] Mutex signs can be named to combine multiple cuboids together as one mutex region
  • [Added] Mutex signs can have condition statements configured that trains must match to be blocked
  • [Changed] Default train properties no longer override properties of saved trains when spawning
  • [Changed] Account for speed when playing animations with delay, so delay is in seconds as expected
  • [Improved] Trains can now be pushed vertically more easily
  • [Improved] Preserve part of original train name when splitting so split trains can be identified
Seat Attachment changes
  • [Added] First-person view mode can now be configured
  • [Added] New ELYTRA_SIT display mode
  • [Added] Support for SmoothCoasters plugin/mod API
  • [Added] Permission can be configured per seat that players must have to enter
  • [Fixed] Fixes some issues of ghost players staying behind
  • [Improved] Mount health bar no longer visible
  • [Improved] Players can now click on seats and enter them, switch between seats of same cart
  • [Added] Added 'eyes' position anchor to position the seat where the player camera is
  • [Fixed] Seat position was not refreshing when changing in the attachment editor
Entity Attachment changes
  • [Added] Nametag can now be configured to support custom optifine models
  • [Added] Sitting mode for entities can be configured, can be used to sync movement
  • [Added] Boat entity attachments can have their wood type configured
Performance Improvements
  • [Changed] Do not look for blocks to activate unless the rails can be activated
  • [Improved] Refresh attachment positions in a loop instead of recursively
  • [Improved] Do not execute seat attachment logic when unoccupied
  • [Improved] Speed up RailAABB performance, which is used by vanilla tracks
  • [Improved] Prevent unneeded copying of material data in places
Fixes
  • [Fixed] Train owners, tags, and sign skip state was being reset when splitting/using tickets
  • [Fixed] Path finding broke when placing additional signs below a destination sign
  • [Fixed] The /train debug command was replacing existing items in the inventory
  • [Fixed] Train splitting caused trains to unload when keep chunks loaded should prevent it
  • [Fixed] Error in the action tracker that occurred randomly
  • [Fixed] Changed order of ForcedChunk closing on shutdown to prevent premature chunk unloading
  • [Fixed] Bug on Paperspigot that caused trains to unload right after auto-spawning them
  • [Fixed] Ghost minecarts staying behind in rail member cache, causing spawn signs to malfunction
  • [Fixed] Incorrect trigger direction calculation for switcher and blocker signs
  • [Fixed] Keep attachment in last animation state during the delay period of an animation
  • [Fixed] Reset hopper minecart timer when changing block so it sucks items at the same rate as vanilla
  • [Fixed] Trains were slowly sliding down unpowered powered rails
  • [Fixed] A 1.15 entity sync glitch that caused a server-client position desync to occur
  • [Fixed] Entities were clipping inside solid blocks when pushed, is not entirely fixed
  • [Fixed] Train direction flipped randomly when spawning and saving a train that isn't moving
  • [Fixed] Upside-down rails were not functioning when the air below is cave air
  • [Fixed] An error occurred when a train unloads that is recording a trigger sign arrival time
----------, Jul 26, 2020

Highlights
  • For BKCommonLib 1.15.2-v1 (Adds support for Minecraft 1.15, 1.15.1, 1.15.2)
  • New platform and light attachments
  • Many quality of life improvements for the attachment editor
  • Train community sharing commands
  • Fixes for passengers not entering trains / getting ejected / trains disappearing (BKCommonLib)
Additions
  • Enabled Platform attachment, which is a partially invisible shulker entity
  • New light attachment, available when LightAPI(Fork) is installed
  • New item name configure button in the item appearance menu [TrainCarts Issue #293]
  • New gravity property and command to alter how quickly trains slow down/speed up on slopes
  • Switcher sign now supports from-to track switching, rather than only from the direction of a train, with new syntax
  • New mobmanualmove property to have mobs control trains, manualmove now only lets players control trains
  • New attachment editor icon for empty attachments
  • New animationsUseTickTime config option to have animations play at the same speed as server tps
  • New savedtrain commands:
    • Format: /savedtrain <trainname> command args...
    • Module command: Moving trains between modules (separately saved yaml files)
    • Import command: Download saved train yaml from Hastebin servers (supports nolimits2 format)
    • Export command: Upload a saved train's yaml to Hastebin servers for sharing with others (supports nolimits2 format)
    • Claim commands: Change ownership permissions, other players cannot modify your train
    • Delete/Rename commands: Managing saved trains (that you own)
    • Info command: Quick overview of the number of carts, seats and total length
    • Reverse command: Reverse the order and orientation of the carts so it spawns the other way around
  • New debug stick functions:
    • Format: /train debug <category> args...
    • Rails command: visualize with particles what the positions on the track are
    • Destination command: perform path finding towards a destination and show the route taken
    • Mutex command: show the area of effect of nearby mutex signs
    • Railtracker command: show the positions of the rail blocks and the rail paths inbetween
    • Wheeltracker command: show the positions of the wheels of all trains
Attachment Editor
  • [Improved] Attachment editor item now has an identifiable display name color
  • [Added] Attachments can now be collapsed and expanded in the attachment editor
  • [Improved] Selected attachments in the attachment editor now blink ingame to identify them
  • [Improved] Set selected attachment editor attachments on fire to make them visible in the dark
  • [Improved] Attachment editing more efficient with less glitching for large models, now only reloads the changed attachment
  • [Fixed] Disable several entity types in the ENTITY attachment type that caused protocol violations and client disconnects when spawning
  • [Fixed] Releasing sneak with attachment editor map open did not always restore edit mode
  • [Fixed] Train attachment changes were not saved when duplicating an attachment
  • [Fixed] Attachment type selector was losing focus when selecting the item type for the first time
  • [Added] Anchor mode in position menu to have attachment pitch not controlled by the train (Ski lift)
Other fixes and improvements
  • [Fixed] Player name color codes were being displayed in the ticket map
  • [Fixed] Train teleportation failed and had errors on Minecraft 1.14 and later
  • [Improved] Train and cart property name matching is now case-insensitive
  • [Improved] Drive sound property now supports the Sound enum constants, and can play particle effects too
  • [Fixed] NullPointerException sometimes occurring in Switcher logic
  • [Fixed] Yaw computation for ITEM attachment types was incorrect, causing twitching or incorrect rotations when pitched 90 degrees [TrainCarts Issue #309]
  • [Improved] The auto save interval is now configurable, and thanks to changes in BKCommonLib, now happens asynchronously
  • [Fixed] Announce sign was not broadcasting to all passengers when used in train mode
  • [Fixed] Setdefault property sign was not properly updating train owners
  • [Fixed] Elevator sign was not working on newer versions of Minecraft due to Bukkit Material API bug
  • [Fixed] Having a destination and switcher sign for the same rail did not work
  • [Fixed] Path finding destinations are now stored and routed per world, fixing name conflicts that occurred in the past
  • [Fixed] Trains were stalling when going down-slope, rather than accelerating due to gravity
  • [Fixed] Carts were disappearing on server shutdown when a player was inside
  • [Fixed] Mobcollision property was not working on property signs, it only worked using commands
  • [Fixed] Trains were not teleporting instantly with teleport/elevator signs, causing players to be blinded momentarily
  • [Fixed] NoSuchMethodError when players clicked on entities on Minecraft 1.8.8 and earlier
  • [Fixed] Incorrect cart length used when spawning vanilla minecarts, causing them to slowly realign after spawning
  • [Fixed] Replaced passenger controller with the vehicle mount controller BKCommonLib API, fixing many bugs where players were ejected
----------, Feb 17, 2020

Adds support for Minecraft 1.14 - 1.14.4, with a lot of other changes, fixes and enhancements.

Highlights
  • Adds support for the new BKCommonLib 1.14.4-v1 release
  • Item unbreakable and 1.14+ custom model data can now be configured ingame
  • Attachments have smoother movement and turning physics
  • Performance improvements, also inside BKCommonLib itself

Changes

General
  • [Added] Add support for BKCommonLib 1.14.4-v1, adding support for Minecraft 1.14 - 1.14.4
  • [Improved] Performance improvements for the attachment model maths
  • [Improved] Performance improvements for the sign redstone tracker so it does not cause recursive chunk loading
  • [Changed] Exit offset is now applied relative to the seat, instead of relative to the cart's position
  • [Changed] Some previously broken configuration option names have changed, includes automatic migration
  • [Fixed] Movement network synchronization was not sending movement packets often enough, rotating is now smoother
  • [Fixed] Gravity and friction was incorrectly applied at high (>0.4b/t) speeds, causing too fast slowdown/speedup/descent
  • [Fixed] Random front or back wheel misalignment occurred causing jerky movement of large carts
  • [Fixed] Armorstand pose wasn't refreshed often enough, causing sluggish rotation
  • [Fixed] Rail physics and unwanted block collision issues existed for slope-vertical-slope track layout
  • [Fixed] All players were ejected from a cart when a player disconnected from the server while inside the train
  • [Fixed] Player interaction with very large model carts was not working
  • [Fixed] Trains were incorrectly slowing down over time when maxspeed was set to 0
  • [Fixed] An exploit existed that allowed players to bypass the vehicle exit property by spam-clicking
  • [Fixed] Ticket player bound property was ignored because owner information was improperly read
  • [Fixed] A few random non-fatal runtime errors were fixed
  • [Removed] The allowVerticalPitch configuration option is no longer supported and has been removed

Attachments and Attachment Editor
  • [Added] The exit offset position of seat attachments can now be configured
  • [Added] New /train menu set [value] command to change sliders and option menus in the attachment editor
  • [Added] New breakable/unbreakable and 1.14+ custom model data configuration in the item attachment selection menu
  • [Added] New text attachment to display a floating text nametag
  • [Added] Pressing spacebar on the animation selection box now has rename functionality
  • [Fixed] Old animation was being deleted when adding a second animation
  • [Fixed] Animations could not be played using the /train animate command

Sign Systems
  • [Station] [Added] New station sign option to change the relative position the train is stopped at above the sign
  • [Station] [Added] New station sign option to change the speed at which the train departs from the station (last line)
  • [Station] [Fixed] Station sign not properly centering trains consisting of varying lengths carts
  • [Switcher] [Added] Switcher sign can now explicitly ignore/override path finding when enabled in config.yml (onlyPoweredEmptySwitchersDoPathfinding)
  • [Switcher] [Changed] Switcher sign now treats empty statement lines as a 'default' statement
  • [Switcher] [Changed] Switcher sign will now toggle a lever when no statements are put on the sign, to act as a train detector
  • [Switcher] [Fixed] Counter-based cart switcher sign was not counting properly
  • [Spawner] [Fixed] Trains that spawn with keep-chunks-loaded on true unloaded unexpectedly right after spawning
  • [Spawner] [Fixed] Automatic always-powered spawn signs were not consistently spawning trains when players were far away
  • [Animate] [Added] New queue option for the animate sign, to play animations after the previous animation finishes in sequence
  • [Enter] [Added] New configurable maximum radius for enter signs, default maximum radius is set to 50
  • [Mutex] [Added] Mutex signs now toggle a lever down while a train is moving inside the mutex zone
  • [Mutex] [Fixed] Mutex signs were not working after a server restart when positioned inside the world spawn area
  • [Announcer] [Fixed] Announce sign was not sending messages to all passengers of all minecarts
----------, Aug 4, 2019

Includes a couple of bugfixes and animations!

Highlights
  • Adds attachment animations
  • Fixes a bug that caused minecarts to reset and lose their properties
Changes
  • [Added] Attachment animations, animation sign and command. Rotating wheels, spinning carts or other interesting things are now possible to make
  • [Added] Tooltips for the attachment editor icon buttons
  • [Added] Entity types in attachment editor selection menu now sorted alphabetically
  • [Fixed] Minecarts not performing a post-tick sometimes, causing them to be saved in the wrong chunk and go missing
  • [Fixed] Chunks that load and unload in the same tick caused minecarts to lose attachment
  • [Fixed] Ticket items were not working on 1.13 and later
  • [Fixed] Ticket realm property was not preserved after a restart
  • [Fixed] Display warning in server log when fire-physics-event-for-redstone is false, as it causes the plugin to break
  • [Fixed] Teleporting away when inside a Minecart did not work
  • [Fixed] Default seat for horse and boat entities were broken
  • [Fixed] Repeater powering signs when it should not be (facing check)
  • [Fixed] Very sharp turns in flexible rails (tc-coasters) could not be traversed by trains
  • [Fixed] Very rarely network controllers stayed behind because of an error, leaving indestructible ghost trains
  • [Fixed] Incorrect orientation logic for minecarts that are derailed
  • [Fixed] Certain blocks like hoppers were not recognized as a valid base, causing tracks to switch to upside-down mode when it should not
  • [Fixed] Orientation not always preserved when teleporting trains using portals or elevators
  • [Fixed] Legacy speed limiting not working in curves
  • [Fixed] Slow horizontal rotation of item models looked twitchy because of yaw overshoot being corrected by armorstand pose
  • [Fixed] Error when invoking /train attachments from console
  • [Fixed] Performance improvements:
    • Reduce cache map lookup overhead for rail types and signs
    • Perform one less block type lookup per regular rail traversed
    • Avoid creation of redundant Vector objects
    • Speed up AABB face logic for common directions (e.g. dx=0 dy=0 dz=1)
    • Faster, lower-accuracy atan2 for banking angle, since high accuracy is not needed
    • Simplify 'isOrientationInverted' logic to check whether moving in reverse or not
----------, Dec 24, 2018

Requires new BKCommonLib 1.13.1-v1. Addons will have to be updated also! (1.13+ support updates)

Adds support for Spigot 1.13 and 1.13.1. Past versions of Minecraft are (of course) still supported.

Highlights
  • Adds support for Spigot 1.13 and 1.13.1
  • Fix single-cart trains spawned in reverse by spawn signs
  • Fix wait distance signs and property, to interact better with custom rails such as TC Coasters
  • Bugfixes & performance improvements
Changes
  • [Added] Support for Spigot 1.13 and 1.13.1
  • [Fixed] Single minecarts were spawning in reverse when spawned by spawner signs. Most visible with custom models.
  • [Fixed] Wait distance did not work properly with TC Coasters rails. Now it does!
  • [Fixed] Signs sometimes not triggering when two rails are next to each other, but not connecting.
  • [Fixed] Launching and stopping trains slightly inaccurate when a speed limit higher than 0.4 was used. Stations not centering trains properly, then.
  • [Fixed] Vanilla Minecarts don't support roll, so some roll caused really glitchy behavior. This problem has been reduced.
  • [Fixed] Waiter sign automatic distance calculation
  • [Added] Drive effect sign format, to play a sound when the minecart starts moving
  • [Fixed] Improved performance, reducing TPS lost due to refreshing rail information by doing this less often.
  • [Fixed] Improved performance by caching the Sign State information together with the Sign Block, avoiding unneeded extra lookups
  • [Fixed] Without the train.command.editor permission, players can not use the attachment editor map. Before creative players could hack-give themselves the map.
----------, Sep 2, 2018

This version of Traincarts builds upon previous release in January, fixing a lot of bugs that were reported over that time period.

Included is a new and improved rail physics API that breathes life into TC Coasters, a new add-on for Traincarts. Please check out the new Spigot page for more details!

New features are implemented for the attachment editor to make it even more powerful. You can now duplicate nodes, change the order of nodes, have bogie tracked models and baby scale item models.

No longer will players move trains that have a custom length set when walking besides it. These unwanted collisions due to Minecraft's poor collision code are filtered out now.

Performance wise a lot of stuff happened. Most notably, you can now disable block collisions for trains entirely. This is not only useful to stop trains from being stopped by blocks, it also helps performance tremendously. Using BKCommonLib 1.12.2-v5 is strongly recommended.

Important note when updating: after updating your train models will look weird or distorted. This is because the pivot point, basically around what point the node rotates, was changed to better match Minecraft behavior. You can correct these distortions using /train upgradesavedtrains.

Changes

General
  • [Improved] Rail logic rewrite to enable functionality that will be provided by TC Coasters
  • [Added] Block collision property
  • [Added] Display a message when path finding fails to find a destination
  • [Added] Suffocation property, to turn on/off damage to players when inside a solid block
  • [Added] Resource pack configuration option
  • [Added] Destroy on shutdown config.yml setting, to purge all trains during restarts
  • [Added] Save and restore minecart entity properties, such as items and the set command, when spawning (SavedTrainProperties)
  • [Added] Small (baby armor stand) item attachment mode options
  • [Added] /train chest command gives an interactive item for storing and spawning trains
  • [Added] Saved train modules. Makes importing and exporting saved trains easier
  • [Fixed] Chest minecarts not interactable
  • [Fixed] Signs not triggered sometimes when a train with wheel distance is used
  • [Fixed] Fixed errors related to unloaded minecarts
  • [Fixed] Fixed an error that occurred during network synchronization
  • [Fixed] Ghost trains created that don't actually exist
  • [Fixed] Train teleportation not teleporting the passenger correctly
  • [Fixed] Don't collide with entities on the side of trains with a custom length
  • [Fixed] DestroyAll not setting a flag to make chunks save, causing carts to re-appear after a reload
  • [Fixed] Detector regions having problems with trains that use wheel distance
  • [Fixed] Station sign levers now go down instantly when starting to launch, instead of when train leaves station
  • [Fixed] Some permission nodes had a typo and started with 'tran' instead of 'train'
  • [Fixed] Elevator sign not teleporting trains up/down to non-standard rail types
  • [Fixed] Some tags not matching correctly, added [email protected] enter direction statement
  • [Removed] legacyVerticalGravity setting (broken)
Attachment Editor
  • [Added] Small (baby armor stand) item attachment mode options
  • [Added] Duplicate button in attachment editor (thanks to MinePlayer64)
  • [Added] Change order implemented in attachment editor
  • [Added] Attachment anchor property in position options: make attachment front/back wheels controlled
  • [Added] Hold shift in attachment editor to move around
  • [Fixed] Dropping items in the attachment editor menu did not preserve display name, enchantments, unbreakable
  • [Fixed] Attachment editor now refreshes when changing the cart being edited
  • [Fixed] Attachments now correctly pivot around the base coordinate (changes height/position of attachments!) This means saved trains will no longer look correctly. To fix, use /train upgradesavedtrains.
Performance
  • [Added] Entity and block collision property improve performance when disabled
  • [Fixed] Better error handling where a misbehaving add-on caused error spam
  • [Fixed] Improve performance by only detecting nearby minecarts once when spawning (linking)
  • [Fixed] Improve performance of chunk tracker
  • [Fixed] Improved performance of mutex zones and wait distance property
----------, Aug 7, 2018

This new installment adds long-awaited new features. Most prominent is the new attachment system, which allows you to add item/entity attachments to minecarts. This enables everything from 'mob trains' to custom resource pack models being used!

I have updated the main plugin page with a new feature video to cover all this :)


You should definitely update BKCommonLib. It does not work otherwise.

The old Floatrail plugin does not work with this version of this plugin. Use TC-Hangrail instead, the latest version offers support for custom blocks as rails.

Highlights
  • Attachment editor: custom 3D models for trains and multiple seats per minecart
  • Wheel tracking
  • Persistent orientation
Changes
  • [Added] Minecart attachments and attachment editor ('models')
    • Convenient Map Display UI (obtain using /train attachments)
    • Display custom 3D models from resource packs in place of vanilla minecarts
    • Configurable position and rotation of attachments
    • Configurable minecart length and wheel positions
    • Multiple seats per minecart
    • Attachments: empty, seat, entity, item
  • [Added] Timings statistics for TrainCarts behavior
  • [Added] Rail physics rewrite with new features and improvements
    • Rail path system
    • Wheel tracking for smooth turns in curves
    • Orientation calculated from wheel positions on rails
  • [Fixed] [Station] Stations incorrectly cancelling launch instructions from other stations
  • [Fixed] [Spawner] Initial spawn positions + fixes occasional glitching through ground on spawn
  • [Fixed] [Spawner] Automatic spawn sign was behavior erratic at times / duplicate spawns - fixed
  • [Fixed] NPE when train being updated loses all carts
  • [Fixed] Client d/c on Bungeecord when players go upside-down
  • [Fixed] Now has realistic and persistent Minecart orientation
  • [Fixed] Now maintains proper distance between Minecarts at all times
  • [Fixed] Owner not always set when players place down minecarts
  • [Fixed] Trains losing linkage when unloading/reloading sometimes
  • [Fixed] Player take incorrectly set to true by default (unwanted feature)
  • [Fixed] Powered minecart not functioning on vertical rails, and glitching out when launched
  • [Fixed] Hide trains in train listing that are on worlds that don't exist
  • [Fixed] Performance improvements
    • Cache rail lookup information
    • Tracking chunks nearby trains more efficient
    • Asynchronous chunk loading for keepChunksLoaded
    • Avoid temporary defensive copies of internal collections using ImplicitlySharedSet
    • Fix always looking up rails for all signs on the server in onChunkUnload
    • Spawn sign loads chunks up-front asynchronously to reduce significant single-tick lag
  • [Added] Minecart banking in curves - only really functional with custom models
  • [Added] Flip sign, for flipping around the orientation of a Minecart 180 degrees
  • [Added] Saving trains under a name, saved trains can be put on spawner signs
  • [Added] Always-off power mode for signs (-train)
  • [Added] Configuration option to turn off third-persion view on vertical rails
  • [Added] Configuration option to turn off the 'eject' behavior of activator rails
----------, Jan 22, 2018

A lot of new features, the obvious one being: loopings! Requested for so long, it is finally here!

ScreenShot_2017-10-14 18-05-19.png

  • Full implementation of upside-down rails: placement, block physics, train physics, disable block suffocation damage (survival)
  • Full implementation of upside-down network synchronization logic: render players upside-down
  • Vertical and upside-down rails: correct the camera position of the player to not clip through the minecart
  • Fixes to vertical <> (upside-down) slope train physics
  • Correct display and synchronization of minecart rotation
  • Implement a new train motion physics system that much better supports "air jumps"
  • Fix manual minecart movement not working (vanilla, press W to move. Only when enabled through properties)
  • Fix minecarts being selected for editing when they are being destroyed (don't lose selection when destroying with hand/arrow)
  • Added a new 'wait distance' property for trains, to maintain distance between them and trains up ahead automatically
  • Added a 'mutex' sign, to avoid multiple trains crossing a junction
----------, Oct 14, 2017

General bugfixes as reported through Github and elsewhere. Unlike the version says, this version also support 1.12.2 through the latest official build of BKCommonLib.

Bugfixes:
  • Fixes a bug where some Mac (keyboard) users could not write TrainCarts signs due to an inserted meta character
  • Now refreshes the speed limit set for a train during a station or launcher launch, enabling smooth ramp-ups/downs based on the speed limit that is set
  • Displayed block in the minecart (block changer sign) can now also be set using Default Train Properties. (see end of post)
  • The speed displayed on /train info and trigger signs was not limited by the speed limit. This has been fixed.
  • There was a sign activation bug for TCFloatRail (and Hangrail) caused by the sign search function, which has been corrected.

Set displayed block through default train properties
Below are two examples of default train properties that set the block to air, or a trapdoor, when applied, while at the same time setting enter/exit permissions.
Code (Text):
train_open:
  allowPlayerEnter: true
  allowPlayerExit: true
  blockTypes: air
  blockOffset: 14
train_closed:
  allowPlayerEnter: false
  allowPlayerExit: false
  blockTypes: trapdoor
  blockOffset: 14
This can conveniently be set with the property sign using the less-known setdefaults:
Code (Text):
[+train]
property
setdefaults
train_open
----------, Sep 28, 2017

Skipper sign
This sign will, when crossed, tell the minecart or train to skip certain upcoming signs. Useful for making trains ignore a particular station or as a sign activation filter.

Code (Text):
[+train]
skip ([#ignore]) ([#skip]) ([type])
conditionA
((|/&)conditionB)

[+train]
skip
empty
Slowdown modes
Slowdown changed from a simple boolean to allow for specifying what kind of slowdown is enabled or disabled. This introduces two new commands:
  • /train slowdown gravity [true/false] - turn gravity-based slowdown/speedup on or off
  • /train slowdown friction [true/false] - turn friction speed reduction over time on or off
Likewise these can be set on property signs:
Code (Text):
[+train]
property
slowfriction
false
In default train properties/properties YAML, these are saved as a node replacing the old true/false.
Code (Text):
default:
  slowDown:
    gravity: true
    friction: false
The old true/false slowdown properties still function and set all (both) modes on or off simultaneously.

Fixes:
  • Slowdown false works properly on vertical rails
  • Vertical rails have the same gravity-based slowdown as sloped rails. To change it back to the broken old values, set legacyVerticalGravity to true in the config.yml
  • Fix a potential invalid block collision when taking a curve down a slope
  • Minecarts are now edited automatically when placed on non-standard rails (vertical rails, pressure plates, etc.)
  • Tickets # uses not updating when entering a train
----------, Sep 3, 2017

As always, this version is backwards compatible with older MC versions through BKCommonLib.

Changes:
  • Switcher sign bug-out has been fixed
  • Bugfixes related to keepChunksLoaded
  • New ticket feature!

By popular demand, new train ticket system is now included in TrainCarts. Restrict access to trains by handing out train tickets, and automatically send trains to the right place based on the ticket used. I will make a proper tutorial video once I have the time, for now, this video will have to do for demonstration:



New commands:
  • /train list destinations - see all destinations
  • /train list tickets - see all tickets
  • /train ticket create [name] - create a type of train ticket
  • /train ticket edit [name] - edit an existing train ticket
  • /train ticket clone [name] - clones the ticket currently being edited under a new name
  • /train ticket rename [new_name] - rename the currently edited ticket
  • /train ticket maxuses [num] - set the amount of times the ticket can be used before expiring
  • /train ticket destination [name] - set a destination, applied to trains when entered with the ticket
  • /train ticket tags [tags...] - set one or more tags added to the train when entered with the ticket
  • /train ticket give [name] [players...] - give an instance of a ticket to a player
  • /train ticket realm [realm] - set up a ticket realm (see below!)
  • /train addticket [name] - adds a new ticket to a train. As soon as a single ticket is added, access is restricted unless the player possesses one of the tickets added.
  • /train remticket [name] - removes a ticket
  • /train setticket [name] - clears old tickets and sets a single new one

addticket/remticket/setticket also work on property signs.

Lacking commands right now, you can edit tickets.yml manually and set up an expire duration in milliseconds (real time) or mark tickets as player-bound, so only the player that was given the ticket can use the ticket. You can also let tickets define properties other than tags/destination that way.

Realms:
A complicated feature perhaps, so I'm giving it its own header. You can assign a realm to a ticket, which makes it easier to bundle multiple tickets together. Say, you have many tickets to apply to a train because you have dozens of destinations in your network. By setting a realm, and then assigning the realm name as a ticket name to the train, you simplify managing it.

For example, I have two tickets called 'TicketA' and 'TicketB'. For both tickets, I use /train ticket realm MyRealm. Then I assign it to the train using /train setticket MyRealm. Now players can use both TicketA and TicketB on the train. You can still put 'TicketA' as ticket for the train to only allow one.
----------, Aug 15, 2017

  • Multiverse-Portals can now be teleported to using a train teleport sign
  • Nether portals support train teleportation to and back from/to rails nearby the portals. Does not work with a player in the front cart (Bukkit bug), can be avoided by putting a dummy cart there like a storage cart
  • Fix a case of "unknown location of EntityMinecart" resulting in missing trains on server restart
  • Implement an auto-save to prevent data loss when server crashes or fails to shut down properly
  • Fix a bug where a launcher/station can derail a train when launched onto a curve
  • Fix sign posts not being activated for trains going down a slope
  • Activator rails eject players/mobs from minecarts when powered (vanilla behavior)
  • Detector sign regions re-create themselves when a train drives over either sign (if one does not yet exist) to ensure persistence
  • Uses new API in BKCommonLib (if latest version) to further reduce cpu usage

Train teleport format:
Code (Text):
[+train]
teleport
portalname:direction

[+train]
teleport
portal1:w
Which will teleport to MyWorlds or Multiverse-Portals by name.
----------, Jul 13, 2017

This version of TrainCarts has been updated to support the latest version of BKCommonLib, adding support for older Minecraft versions. Update BKCommonLib and TrainCarts will support all these versions:
  • Spigot 1.8.8
  • Spigot 1.9
  • Spigot 1.9.2
  • Spigot 1.9.4
  • Spigot 1.10.2
  • Spigot 1.11.2
  • Spigot 1.12
Bugfixes:
  • Adds support for using (train) as well as [train] so that Mac Keyboards can more easily add signs
  • Station and launcher sign have been redesigned to use a better launch algorithm, fixes strange glitches when launching from station to station
  • Launcher sign now supports launching for a time period as well as a distance
  • Launcher and station sign add support for switching between Linear or Bezier launch functions
  • Fix hopper minecart activation incorrectly inverted
  • Restore creative mode instant destroy functionality. To select, sneak and then click. Can be toggled back in config.yml.
  • Switcher sign has several bugfixes to fix incorrect switching or switching to a derailed end
  • Redesign of train physics to enable more radical track designs, such as sharp bends and hopping onto slopes
  • Restores SOUTH-EAST rails rule functionality
  • Detector sign: add option to put a name on the third line to uniquely link two detector signs into a region by name, to handle region overlap
  • Detector sign: bugfixes for errors that would cause state corruption
  • Now shows an informative message when MyWorlds is not installed and a train [portal] sign is placed
  • Physics fixes for air-leaps to somewhat prevent the mid-air freezing that occurred
  • Adds a /train issue command that pre-fills an issue ticket on Github for easier reporting (MinePlayer64)
Special thanks

I would like to thank all these people for submitting excellent bug reports that helped furthering this project. Thank you!

(GitHub) MinePlayer64 for submitting many bug reports, feature requests and providing support along the way. Station/launcher fixes are partially thanks to him!

(GitHub) david50407 for submitting issue requests relating to crafting and inventory transfer, and also train physics.

(Spigot) GamerKM for providing issue and bugfix information

And perhaps some others too! Remember you can report issues on our GitHub issue tracker or you can send Team Bergerhealer a pm!
----------, Jun 30, 2017

Many long-standing bugs in the previous release have been fixed. Some are still pending a fix or need further confirmation, which will be listed further down. Please use the latest BKCommonLib (1.11.2-v2), which includes some of the below bugfixes and more. This build supports Spigot 1.11.2 and 1.12-pre5, 1.12-pre6 (tested)

Bugfixes:
  • Fixes a bug where you could not interact with minecarts
  • Fix minecart displayed block data wrongly applied
  • Fix errors when loading collision modes
  • Fix teleport sign not always teleporting
  • Fix vertical rails not triggering signs
  • Fix spawn signs not working on vertical rails
  • Fix minecarts not playing any sound when on vertical rails
  • Fix collect/deposit signs always dropping items on the ground
  • Fix furnace minecart sound loop not playing
  • Catch errors in third-party rail plugins (such as TCHangRail) and disable such rails when they occur to prevent hard-to-track-down errors that render TrainCarts unusable
Changes in minecart rail physics:
  • Minecarts now collide with low-hanging ceiling blocks to allow vanilla-style minecart piston stations to function. This can be turned off in the configuration
  • Minecarts no longer go through blocks perpendicular to a curved rail when derailing, causing them to be stuck there
  • Minecarts no longer go through blocks above a slope
  • Vertical rails have altered physics when going from slope to vertical, which may have very slightly impacted their height reach. Check your attractions!
General bug reports that have been verified and fixed:
  • "If you place property speedlimit signs on a ladder rail (looping or dive drop) the cart won't listen to the sign."
  • "Minecart goes through the wall when encountering a derailed curve"
  • "Furnace in not working"
  • "train spawning on ladder goes either up or down, no consistency"
Some things that may have been fixed:
  • "Detector sign not working - stays active" (failed to reproduce)
  • "Cross world teleport not working" (failed to reproduce locally)
  • "Trap Doors show off at an offset" (they dont appear to)
  • "Cant put multiple signs underneath each other" (appears to work)
  • Fireworks causing strange issues with minecarts. Changes have been made to prevent it, but it is not verified as fixed.
  • Several odd station sign related physics bugs, which are hard to reproduce because of how large the track has to be. If you encounter these, for now try changing the station sign 'length' so it does not launch too large distances.
----------, Jun 5, 2017

Resource Information
Author:
----------
Total Downloads: 127,414
First Release: Apr 17, 2017
Last Update: Apr 27, 2025
Category: ---------------
All-Time Rating:
129 ratings
Find more info at wiki.traincarts.net...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings