Inactive [MECH] TrainCarts v1.71.2 - Link minecarts of different types together to form trains [2222]

Discussion in 'Inactive/Unsupported Plugins' started by bergerkiller, Aug 3, 2011.

  1. Offline

    bergerkiller

    [​IMG]

    After a request from Marius A. Winsjansen I started to work on linked Minecarts. On the first day I already managed to make multiple carts move with the same speed, but a long list of bugs was to be expected. After fixing lots of bugs, adding lots of (complicated) Minecart handling functions and after hours of testing on my local server, this plugin is finally ready for a stable release! :D

    Also, special thanks go to @Shamebot for helping me out several times. :)

    Description:
    For a lot of information about TrainCarts see the WIKI page!

    Configuration and permissions

    All configuration nodes can be found in config.yml and contains a description with it. Permissions can be found in PermissionDefaults.yml, combined with a description.

    Media:

    Early development video (Photobucket)

    Video displaying version 0.6 of this plugin (YouTube)

    Video displaying version 1.0 of this plugin (YouTube)

    Video displaying version 1.1 of this plugin (YouTube)

    Video displaying version 1.2 of this plugin (holy...)


    A tutorial video in German explaining various sign-circuitry of TrainCarts


    PhotoBucket Sign system tutorial videos (also linked in the WIKI pages)
    Train spawner / Stations / Stations2 / Arrival signs / Train teleportation / Track switcher based on tags / Destinations / Blocker
    Video of how the switcher, station and destination signs work together

    Side information:

    It works best on straight lines with not too much elevation changes followed up by sharp corners. As long the cart gap can be adjusted, everything goes fine. It had some collision issues in the past, but I fixed all of that by manipulating the actual Minecraft server native code. I added links in the source where this was appropriate. Sharp 'U'-turns cause individual carts to lose perceptive of their direction. Keep at least one piece of track in between corner sections! Trains are stored on-disk when reloading and stopping the server, so expect trains to be there when you return.

    Important when updating: do one reload to save all trains, then replace traincarts.jar, and then do another reload. This next reload will probably cause a noClassDefFound exception (since the old jar got replaced), this is why a pre-reload is required. Replacing the jar without reloading is a very bad idea: it will cause a lot of runtime exceptions. Best is of course to stop the server and start again, but this is not always possible.

    This plugin is made compatible with Minecart Mania. If you notice a certain feature of Minecart Mania is not compatible with TrainCarts, notify me and I'll fix it. :)


    Known bugs:
    - None.

    TODO:
    - Train-sign message handling using SignLink (low priority)
    - Minecart use permissions (for individual carts?) such as Storage Minecarts

    Commenting

    If you encountered a bug, post exactly what you had done and in what order. Even a slight wobble can help fixing bugs. When posting (long) errors I recommend you to post everything, don't cut it off. I work with native methods, so in my case these lines are important. For comments on the media content see YouTube, it also contains a description with the music name when music is used.

    Bug reporting (extend)

    1. Post the Craftbukkit version you are using (the first info message in the console)
    2. Post the log from where the first plugin gets enabled to the 'done'.
    3. Post possible errors in this log too (don't cut them short)
    4. No error? Still post the log. Also explain how I can reproduce it, you can use screenshots
    5. Before reporting, remove ALL plugins other than TrainCarts and try again. If it works then, find out what plugin is interfering and post that here. I can add support.
    6. ALWAYS use the latest recommended Craftbukkit build with this, or my methods may just fail because of renamed functions.

    Important links:

    Request thread
    TrainCarts on BukkitDev for download and more
    TrainCarts source and more on GitHub
    TrainCartsBlocks add-on source and more on GitHub
    SignLink Bukkit page (required to use Arrival signs)
    MyWorlds Bukkit page (required to use Portal train teleportation)

    notice: try to keep SignLink/MyWorlds up-to-date to prevent compatibility issues.

    Installation for those that don't know how

    1. Download and install the latest craftbukkit version
    2. Download the latest TrainCarts version
    3. ^ Save the archive (zip file) to your computer
    4. ^ Open the archive you just downloaded
    5. In the folder your server sits in, create the plugins folder if it doesn't exist
    6. Open the plugins folder
    7. Move the TrainCarts.jar file found in the archive into the plugins folder
    8. Run your craftbukkit server and look in the console/log for possible errors, and/or if the plugin is enabled.

    Changelog

    Show your appreciation for my plugins by donating
    [​IMG]
     
  2. Offline

    Nekuroi

    what do you recommend for rails protection?, or can you add a feature to protect rails over certain block?
     
  3. Offline

    bergerkiller

    @Nekuroi I recommend some sort of region protected plugin, like WorldGuard or Regios. I try to keep this plugin fixed on certain tasks, so adding block protection is not one of this plugin's needs.
     
  4. Offline

    lipe123

    @Nekuroi Essentialsprotect has excellent rail protection and its lightweight and easy to setup.

    @bergerkiller I downloaded the passengerfix version and played around with powered carts some more with no luck, but it's ok I'll stick to powered rails. I use a rail booster plugin that makes them give the cart a massive amount of momentum so they will go on for miles.
    Sidenote, When I log out and come back the next day the "train" is gone completely, all the carts just got unloaded or something. I thought the default settings in the plugin should allow carts to persist, am I missing something in the config?
     
  5. Offline

    bergerkiller

    @lipe123 mmh ye that's not correct, trains should properly unload, be restored to entity minecarts and it's data saved to the groupdata file, of which it can re-load that train once enough chunks load again. Still working on the next version though, so this is definitely on my TODO list.
     
  6. Offline

    MechanID

    @bergerkiller all users of my servers pray for you to fix keep chunks loading issue, curently i forced to use MinecartManiaCore to keeps trains load chinks around but after restart they not loaded until someone come near
     
  7. Offline

    bergerkiller

    @MechanID Pray D:
    I'm still struggling with the 'de-link train by switching track' system. Train, Y U STOP? :(
     
  8. Offline

    bergerkiller

  9. Offline

    Don Redhorse

  10. Offline

    emericask8ur

  11. Offline

    bergerkiller

    Status update, I have coded my ass of and it did pay off :)
    - There are now cart properties
    - /cart and /train commands
    - both [cart] and [train] sign systems
    - possible to switch track based on trains and on carts
    - cart-specific destinations
    - fully-automatic train delinking to reach destination or to switch based on a tag
    - cart ownership (train ownership based on that)
    - a sick-load of bugfixes

    @Don Redhorse uploaded the latest code to GitHub...and yeah...prepare yourself lol
     
  12. Offline

    emericask8ur

    Trust me... PREPARE
     
  13. Offline

    FDMS

    Erm ... which one to download?
    TrainCarts v1.54 passengerfix.zip (Is this the plugin AND the passengerfix or ONLY the passengerfix?)
    OR
    TrainCarts v1.54.zip and TrainCarts v1.54 passengerfix.zip?

    Also, clicking on the link for those who don't know how downloads an older version.

    Please
    help
     
  14. Offline

    bergerkiller

    @FDMS You can use the passenger fix version, the only difference with the regular is that occupied carts are not slower than empty carts.

    Another status update:
    Also, it is now possible to get the Inventory from a minecart member easily. For pretty much all member functions, a grouped function is present as well. (for example, to check if the train has a passenger)

    Now working at the requested chest systems.

    Track switcher 100% complete. It can do the following awesome things:

    This video shows the counter-switch based system live in action. In the video it splits a long train into bits through 3 switchers. It is also possible to count trains this way.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 14, 2016
  15. Offline

    Viperdream

    I know this might sound impatient, but when can we expect a fix for the Chunk loading? My server really loves this
    plugin and we really want it back :)
     
  16. Offline

    bergerkiller

    @Viperdream Today was the day of NoLagg, so couldn't hammer on TrainCarts much sadly. I didn't look at the unload delays yet (the property for it was in development all the time). Anyway, what is the main problem with that feature? Does the train stop/unload/disappear/fly away and turn into a dragon?
     
  17. Offline

    Viperdream

    We have a track from like over 1000 blocks, so once it moves far away from all the inactivity it'll reach unloaded chunks and the players at the other side never see the train. And when I check the tunnel, I see the train carrying on just fine. But it only moved like 100blocks after 5 minutes, while it should only take 2 minutes : /

    It works fine when players are on it, but when it's on it's own it always stops
     
  18. Offline

    Kirb

    I was setting up a series of 6 small 3-cart trains, and pushed them off in order.

    Unfortunately, one of them reversed direction for no reason, slammed into the others, and even though I had set them all to no linking, resulted in a horrifying but amusing explosion of minecart breeding that shut down the server. When I used the destroyall command, I was informed that 15000 trains had been removed. Hoping for the new version with the bugfixes, I do really enjoy the idea of the plugin!
     
  19. Offline

    MechanID

    people still waiting for fix for problems that i reported in http://forums.bukkit.org/threads/me...to-form-trains-1575.29491/page-38#post-860936
     
  20. Offline

    UnderMotion

    I was making a railway station system on the server I run, where players would press a button to spawn a train and use a ticket to ride the train since I couldn't make an auto-train (chunk loading problem.) Then I thought... what if players spam trains or just leave the train empty? It will stop in the middle of the track due to unloaded chunks and will block the path of any oncoming train!
    I thought of something perhaps you can add if you feel like it... a train destroyer that is only triggered if the train is empty? So maybe add a "destroy empty" function to the signs? :)
    I hope you consider my suggestion, and thank you. :D
     
  21. I cant get it to work, it gives only errors at my server:
    Code:
    20:45:57 [INFO] [TrainCarts] 0 Trains have been loaded in 0 worlds. (0 Minecarts
    )
    20:45:57 [INFO] [TrainCarts] version 1.54 is enabled!
    20:45:57 [INFO] Server permissions file permissions.yml is empty, ignoring it
    20:45:57 [INFO] Done (0,422s)! For help, type "help" or "?"
    20:46:01 [INFO] ferrybig [/127.0.0.1:51361] logged in with entity id 326 at ([te
    st1] 997.53125, 84.09375, 1029.9375)
    20:46:02 [INFO] [MultiWorld] Chancing ferrybig game mode to GameMode.CREATIVE
    20:57:38 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:39 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:41 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:41 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:41 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:46 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:47 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:47 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:57:48 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:58:06 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:58:16 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:58:17 [WARNING] 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:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            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)
    20:59:15 [SEVERE] Could not pass event VEHICLE_COLLISION_ENTITY to Train Carts
    java.lang.NoSuchMethodError: net.minecraft.server.EntityMinecart.getDerailedVelo
    cityMod()Lorg/bukkit/util/Vector;
            at com.bergerkiller.bukkit.tc.Utils.EntityUtil.replaceMinecarts(EntityUt
    il.java:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            at com.bergerkiller.bukkit.tc.Listeners.TCVehicleListener.onVehicleEntit
    yCollision(TCVehicleListener.java:131)
            at org.bukkit.plugin.java.JavaPluginLoader$86.execute(JavaPluginLoader.j
    ava:862)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:339)
            at net.minecraft.server.EntityMinecart.collide(EntityMinecart.java:720)
            at net.minecraft.server.EntityLiving.d(EntityLiving.java:920)
            at net.minecraft.server.EntityHuman.d(EntityHuman.java:308)
            at net.minecraft.server.EntityLiving.w_(EntityLiving.java:294)
            at net.minecraft.server.EntityHuman.w_(EntityHuman.java:156)
            at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:221)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:306)
            at net.minecraft.server.Packet10Flying.a(SourceFile:126)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            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)
    20:59:16 [SEVERE] Could not pass event VEHICLE_COLLISION_ENTITY to Train Carts
    java.lang.NoSuchMethodError: net.minecraft.server.EntityMinecart.getDerailedVelo
    cityMod()Lorg/bukkit/util/Vector;
            at com.bergerkiller.bukkit.tc.Utils.EntityUtil.replaceMinecarts(EntityUt
    il.java:100)
            at com.bergerkiller.bukkit.tc.MinecartMember.convert(MinecartMember.java
    :192)
            at com.bergerkiller.bukkit.tc.Listeners.TCVehicleListener.onVehicleEntit
    yCollision(TCVehicleListener.java:131)
            at org.bukkit.plugin.java.JavaPluginLoader$86.execute(JavaPluginLoader.j
    ava:862)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:339)
            at net.minecraft.server.EntityMinecart.collide(EntityMinecart.java:720)
            at net.minecraft.server.EntityLiving.d(EntityLiving.java:920)
            at net.minecraft.server.EntityHuman.d(EntityHuman.java:308)
            at net.minecraft.server.EntityLiving.w_(EntityLiving.java:294)
            at net.minecraft.server.EntityHuman.w_(EntityHuman.java:156)
            at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:221)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:306)
            at net.minecraft.server.Packet10Flying.a(SourceFile:126)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            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)
    >plugins
    21:01:25 [INFO] Plugins: AutoSaver, CommandBook, Flamecart, MobDisguise, MultiWo
    rld, PermissionsBukkit, WorldEdit, WorldGens, WorldGuard, Train Carts
    >version
    21:01:29 [INFO] This server is running Craftbukkit version git-Bukkit-1.8.1-R4-4
    7-gab9a577-b1529jnks (MC: 1.0.0) (Implementing API version 1.0.0-R1-SNAPSHOT)
    >
     
  22. Offline

    kinkinhood

    As silly of a question as this may be, are property signs directional? Main reason I'm asking is because I'm sometimes having some issues with property destination signs sending the carts where they're suppose to go.
     
  23. Offline

    bergerkiller

    @ferrybig you need to update your CraftBukkit ;)

    @kinkinhood They should be yes.

    Also, update on the development status of this plugin:

    Chest dispensing got added.
    It simply transfers all items from or to chest/storage minecarts, and uses the ownership if needed. For example:
    Will retrieve all items from the storage minecart owned by 'bergerkiller' and put it in the chest. Other minecarts (even public) are left alone.

    Chest out will do exactly the opposite. Permissions are added to set if it's allowed to make a chest sign with an owner other than yourself (build.chest.admin), as that could cause robbing of other's carts.

    Carts can now be made public or private
    Public minecarts can be entered by anyone, while private minecarts can only be entered by the owner. Will add a separate override permission node for the entire train. Public storage minecarts can be opened by anyone and can be used with the chest dispensing sign without owners. When made private, only the owner or a chest sign with the owner name can open/use it.

    However, destroying minecarts and altering the properties can only be done by an owner, always, regardless if it's made public or not. Remove all owners if you want to make that public also.

    Sign build messages
    The API now includes a build event function per sign action class implementation to allow other plugins to easily add signs. For example:
    Code:
    "    @Override
        public void build(SignChangeEvent event, String type, SignActionMode mode) {
            if (mode != SignActionMode.NONE) {
                if (type.startsWith("trigger")) {
                    handleBuild(event, "train.build.trigger", "train trigger", "reset the arrival time, train name and destination, which can be displayed using SignLink");
                }
            }
        }
    The following things will be added too:
    - Nearby block obtaining (crops, stone, you name it)
    - 'track in use' system - the start and end signs are used to check if a line of track is occupied
    - trigger: readout of the destination and train name
    - whatever I come up with :)
     
  24. Offline

    MacGyver420

    @bergerkiller

    Would item filtering on the 4th line of the new chest dispensing signs be possible?
    To only dispense that item, instead of the whole chest?
     
  25. Offline

    MechanID

    If it means AutoFarming please make so this can be disabled in config please
     
  26. Offline

    bergerkiller

    @MechanID You can add material types to individual carts, this command is obviously behind a permission node :)
    But, I'll add a configuration node too.

    @MacGyver420 I'll add that yes, but will be limited by just one item.

    Status update.

    Chests
    You can now set what items to transfer and how many.
    You can only set one owner per sign, but you can have multiple owners per cart to match it.

    Farming
    You can now set if storage minecarts collect items. If enabled, it will apply a sucking force to nearby items it can collect. Once the item is close enough, the item is added to the chest.

    It is possible to set block types to 'break'. It does not remove the block, it rather breaks the block and spawn an item. It then collects the item if that is enabled as well. This is my method of remaining 'realism'.

    Video of it is in the making :)

    EDIT

    Video here

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 14, 2016
  27. Offline

    Don Redhorse

    nice... single railroad lines here we come... :)

    now only switch from redstone torch to detection railway and it is a nice setup :) ... you can dream :)

    looking forward to the code release (also as jar).

    hmm... what would be cool would be the option to have a storage cart in front of the train sucking in all the debris on the track... but not farming...

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 14, 2016
  28. Offline

    bergerkiller

    @Don Redhorse can easily be done, you can make carts suck items while not breaking any blocks. Do note that it will pick up ANY item, adding a separate list for that would be overkill and complicated.
     
  29. Offline

    Don Redhorse

    no probs... I just want to clean the ways... and afterwards store it into my warehouse..

    which reminds me... can I store from "one side" of the chest and retrieve "from the other side" off the chest?

    what I had in MM was the following...
    Code:
    ##########      ######
    Store    #      # Retrieve
    Track    #  C   # Track
             #      #
    ##########      ######
    where C is the chest
     
  30. Offline

    bergerkiller

    @Don Redhorse yup, the sign is put under the rails. You can put a 'chest in' on the left and 'chest out' on the right tracks. The chest will process both.

    Ok traced down the 'keep chunks loaded' error that you guys had. What I discovered was that it used:
    Instead of using the block location:
    Which makes a significant difference: if it missed the chunk by just one block, the internal system takes over control and completely stops all physics functions for the train.

    it was only an issue when cancelling the chunk unload event, unfortunately that is enough to kill the minecart ;(

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 14, 2016
    Don Redhorse likes this.
  31. Offline

    UnderMotion

    @bergerkiller Did you have a look at my suggestion? Just wondering :p
     

Share This Page