TrainCarts
TrainCarts Development has moved to SpigotMC.
You can get the new versions at the following URL:
https://www.spigotmc.org/resources/traincarts.39592/
This page is no longer being actively monitored, please seek for support on SpigotMC.
Plugin: TrainCarts - Linked Minecarts, sign-redstone systems, easy to use and realistic
Version: v1.73.0
Build: 1.7.2 R0.1/R0.2
Incompatible with: RailCraft
Description
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
Links
For configuration, permissions and how-to's, see the Wikipedia page (it is rather long):
Note that I would prefer having comments, bug reports and others in the main Bukkit page, since I visit that site the most. :)
Addons
Special Addons for TrainCarts
Features
- Link minecarts using collision: no commands needed to make a train
- Move trains as easily as you would with single Minecarts
- Store 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
- Spawn
- Teleport
- 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
- Supports Minecart Mania's features
- Infinite minecart speeds are possible
- Push-away: Push mobs, players and items away from your trains to keep them running
- Everything is configurable, if something proves not to be, I will make it that way
FAQ
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.
Why not boats?!?!
Incompatibilities
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.
Metrics
This plugin sends server count statistics to MCStats.org. You can (globally) opt out in the PluginMetrics/config.yml file.
i dont know if this is a error or its my server but: 22:50:38 [VARNING] Task of 'Train Carts' generated an exception java.lang.NoSuchMethodError: net.minecraft.server.EntityMinecart.getDerailedVelo cityMod()Lorg/bukkit/util/Vector; at com.bergerkiller.bukkit.tc.Utils.EntityUtil.replaceMinecarts(EntityUt il.java:98) at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java :187) at com.bergerkiller.bukkit.tc.Listeners.TCVehicleListener$2.run(TCVehicl eListener.java:65) at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(C raftScheduler.java:137) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:482) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:414) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
Sorry for my bad englisg
@Skaales
It's on GitHub, the push away bit is located in the 'EntityUtil' class.
open source? would love to see how you push mobs and players away, aswell as the exit cart offset.
@bergerkiller Thanks! This is such a awesome plugin.
@Bubby4j
Ow great, yet another plugin that loads a chunk from another thread -.- When will those developers learn...seriously :/ Well I can't seem to spot the faulty plugin right away, so I'll add synchronization in the next version.
@MiniNinja72
Afraid not, multiverse doesn't have an advanced-enough API I can use in TrainCarts. (since I also develop MyWorlds it was a lot easier to use and improve that)
multiverse portal support?
I'm still having issues now that I've updated to 1.53, bukkit build 1557, plugins: AlbumPlayer ChatBukkit ColoredSigns FreezeIce PlgSetspawn RemoveBuilding ScrapBukkit Seats SimpleSpleef simpleWeather TravelPortals VoxelSniper WorldEdit WorldGuard
2011-12-06 17:42:37 [SEVERE] Could not pass event CHUNK_LOAD to Train Carts java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification(Unknown Source) at java.util.AbstractList$Itr.remove(Unknown Source) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:327) at com.bergerkiller.bukkit.tc.Listeners.TCWorldListener.onChunkLoad(TCWorldListener.java:38) at org.bukkit.plugin.java.JavaPluginLoader$52.execute(JavaPluginLoader.java:621) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339) at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:92) at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:31) at net.minecraft.server.PlayerManager.a(PlayerManager.java:45) at net.minecraft.server.PlayerManager.addPlayer(PlayerManager.java:94) at net.minecraft.server.ServerConfigurationManager.c(ServerConfigurationManager.java:139) at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:113) at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:80) at net.minecraft.server.Packet1Login.a(SourceFile:59) at net.minecraft.server.NetworkManager.b(NetworkManager.java:226) at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:46) at net.minecraft.server.NetworkListenThread.a(SourceFile:94) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:516) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:414) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
Iam Using PEX and TrainCarts 1.49 aswell as Bukkit 1337. And i have Issues with the default flags. (every train gets the Default flags)
Are there any known Issues with PEX and TrainCarts?
@Bubby4j
Make sure you get the 1.51 version, the 1.50 had some issues 'mildly stated'
Oh also, I got this when the cart went over a ejector.
I'm having BIG issues, 2011-12-05 14:23:27 [SEVERE] Could not pass event CHUNK_LOAD to Train Carts java.lang.StackOverflowError at java.util.AbstractList$Itr.next(Unknown Source) at org.bukkit.craftbukkit.CraftWorld.getEntities(CraftWorld.java:488) at com.bergerkiller.bukkit.tc.Utils.EntityUtil.getEntity(EntityUtil.java:45) at com.bergerkiller.bukkit.tc.Utils.EntityUtil.getMinecart(EntityUtil.java:40) at com.bergerkiller.bukkit.tc.GroupManager$WorldGroup.getMinecarts(GroupManager.java:217) at com.bergerkiller.bukkit.tc.GroupManager.restoreGroup(GroupManager.java:85) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:317) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) it says at com.bergerkiller.bukkit.tc.GroupManager.refresh(GroupManager.java:318) thousands of times in a row after this. Big lag on server.
bukkit build #1557, TrainCarts version 1.5.1, I really love your plugin, please fix it.
Where can I find the commands ?
@bergerkiller
Well of course im using 1.0.0 lol.. but i see ok then i didn't realize that was the issue. Thanks for your response, and recommendation. I will look at it and see. I had forgotten most people build off of the RB not the dev builds..
@MajorCyto
You are either using 1.9 pre release or 1.00, TrainCarts is only compatible for the latest RB: 1337. There is a 1.00 download link for TrainCarts by Thulinma, but it contains outdated functions which could cause numerous NPEs. He updated those issues as well now. :)
@bergerkiller
I updated to v 1.49.1 but it is still giving me the same error i included it this time to maybe it will help you.
@MajorCyto
Updated it to 1.49.1, hopefully fixing the issue(s) you are having. If not, feel free to reply.
I updated to move recent version, and bukkit version and its not recieving the player event when i put down the minecart to register it as a traincart for option its passes a error instead.
@GeoCraft It's not caused by the high amount of chunks received by the client? (does the same happen if you go ride a minecart without TrainCarts installed, travling forwards?) I don't do network related calls other than removing a minecart. Ifyou can, post the entire log, perhaps I spot something out of order.
@solartoaster I am afraid I can't fix that issue, it's more of a native minecart issue when traveling at speeds higher than allowed. My guess is that it has to do with the minecart not noticing the elevated rails (it skips blocks at high speeds), thus hitting the block, thus reversing. I can try to come up with some sort of fix, but don't expect too much from it, as it is Notch code. Also happens with sloped non-powered rails.
Using 1337, and TrainCarts. 1.48. Things have been, difficult to set up. Not sure old powered booster rails are having any effect, but after setting a SINGLE minecart to no slow and max speed .8 through use of signs, finding that cart will spontaneously reverse direction upon hitting no specific incline. Doesn't matter what speed it approaches the incline at. Again, not sure boosters are working properly with this plugin. Train is also a lot more finicky when more than one cart is linked. Any thoughts? Really love the idea behind the plugin but if I can't get it to work smoothly may have to pass on it. Thanks for all your hard work though!
@bergerkiller
I am using 1337. I re-installed it and what happens now is that I am riding in my train and the server will crash giving me connection reset in the consul. I remove the plugin and the server is fine. I can post a video of what is happening if that would help.