All About Minecarts


What would everyone love to see in a minecart API that would make it just the best thing ever?

My thoughts:

  • Speed and max speed adjustments
  • Momentum/inertia changing
  • Furnace minecart shenanigans
  • More types of blocks in carts
  • Anything y’all can think of!

The primary issues with using minecarts on a server relate to abandoned minecarts on tracks and minecart behavior when reaching loaded chunk boundaries. Running into a cart that somehow came to block a track is the number one problem with a minecart transportation system.

I’m not sure to what degree those concerns motivate API considerations. Maybe a hook for minecart collisions?

Another area worth looking at is the behavior of minecarts and falling, which has changed back and forth over time. Could the fall damage event for a rider in a minecart be distinct? (Assuming it exists in the current version of minecraft.)

1 Like

With the new component system you get all this for free :wink:


I would like an API that supports the features provided by the Bukkit TrainCarts plugin. The ability to spawn trains, route trains, support to load/keep chunks loaded as minecarts pass through them etc.

It would also be great to have trains that look like real trains as currently supported by IIRC TrainCraft. However AFAICT that’s more client side.

1 Like

This is a good idea, but I think we should get a working build of Sponge before adding something a fraction of developers will use.

Fair point Jesse although I think it’s worth keeping in mind particularly while designing the API.

One other thing worth adding to the list provided it’s not something done by the plugin is what happens when a train collides with an entity? In TrainCarts there are a number of options including:

  • kill the mob
  • mob joins the train
  • train stops
  • nothing - train continues as before and mob still alive

I have some super sexy minecart ideas, just wait on me bud.

Maybe even attributes? Recently I made Iron Boats (minecarts on lava) and thought it would be cool if you edit stuff like that in the api. ( stuff meaning player direction control, if it can move off tracks, if it can float, etc…)

Idk, that doesn’t have to be added since it can be done using custom entities but it would be cool if it was.