Announcement

Collapse
No announcement yet.

Train, Rail and Roller Coaster System

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • started a topic [RELEASED] Train, Rail and Roller Coaster System

    Train, Rail and Roller Coaster System





    Demo Download (Includes all example maps) (Download Demo)

    Current Status: Released (Marketplace Page)

    Price: $29,99

    Version: 1.0.4 (last updated Jan 9th 2018)

    Known issues: None

    Documentation download (all functions, macros, events and components documented): TrainAndRail.pdf

    Overview video: Trailer and Overview Video

    Description
    Build complex or simple train tracks in minutes, then preview them instantly. Trains can be customized for any setup, look or feel.
    Tracks are spline based, allowing you to setup complex meshes quickly. Also included is the terrain train track for quickly building tracks across uneven terrain.

    Track triggers allow you to have trains or carriages fire events in the game world. Use triggers to create junctions that change, or level crossing barriers that lower as a train approaches, or leaves.
    The mine cart comes with a custom jump trigger that uses built-in events to extend the base carriage, allowing the mine cart to jump, rotate and scale into the air for comic effect.

    Each carriage can detect obstacles on the track and respond accordingly, some can stop and wait for it to move, others can ignore it and keep on going.
    End of track options give you the ability to define how the train or carriage responds to the end of the track; stop, reverse direction, derail, .., or add your own custom response.

    The system comes with a pre built mine cart, modern train engine, and two example carriages.
    The system is highly customizable and comes with documentation, examples and videos.



    Tech details
    Blueprints: 8 (+6 Demo map blueprints)
    Maps: 7 Example maps, 1 overview map
    Models: 16 (6 Train, 2 mine cart, 2 tracks and 6 demo models)
    Animations: 2 (wheels for train and wheels for mine cart)
    Number of Materials: 13
    Do Materials derive from a Master Material with instances as variation: Yes
    Number of Textures: 14 (4k for train and mine cart, 1-2k for demo information models)
    Intended Platforms: Desktop / Console / VR
    Platforms Tested: Windows / Vive


    Features
    General:
    • Pre built trains: Modern engine, flat car, box car and mine cart
    • Highly detailed example maps broken down by train / track category.
    • All blueprints commented and with helper comments on where to extend sections
    • Documentation provided for all major blueprints including detailed descriptions of every component, macro, function and variable




    Train Carriage:
    • Select a track in the world and the train carriage (or entire train if this is parent) will snap to it
    • Supports one or two bogies
    • Customize all meshes and entire look. Comes with offsets for all meshes relative to position on tracks.
    • Bogie distance, wheel animation playback speed are all customizable
    • Multiple end of track options (what the train does at the end of the track) including; derail, reverse direction, stop, attempt to stop, warp to original position
    • Easy to add new end of track options if you desire
    • Start inverted on track (if the train carriage should be flipped)
    • Highly configurable engine / physics: friction, gravity, mass, acceleration, deceleration as well as max speed, min speed
    • Ability to disable realistic speeds and use constant speed, E.g. creating a roller coaster or conveyor belt
    • Ability to select the starting direction of travel
    • Select carriage type; Engine will be able to move itself while a standard carriage won't move without an engine or force moving it
    • Impact collision; If enabled the carriage will knock back obstacles in front of it (min size can be customized / large objects can slow the train / carriage down)
    • Sensor in front of the train can detect obstacles on the track
    • Obstacle responses dictate how the carriage responds, E.g. it can stop and wait for it to move, just ignore it and crash into it or not do anything.
    • Easy to add new obstacle responses to your setup
    • Collision filtering, E.g. Carriage will ignore the player but derail if it hits a static mesh
    • Plow strength; Impact force used to knock objects away
    • Flag the carriage so it never derails
    • Customize the derail force, set a low force for small crashes, or a large one for more dramatic ones
    • Collision ignore list, add any actor you want to the collision ignore list
    • Timed collision ignore list, add any actor and a time to the list and it will automatically be removed from the list when the supplied amount of time has passed
    • Ability to dampen the derail force that's passed down to children
    • Quickly build trains with the parent / child select
    • Parent carriages pass their settings down to the child carriages by default (this can be disabled if needed)
    • If something happens to a child carriage (E.g. end of track) it will ask the parent how to handled
    • Ability to specify how far apart child and parent carriages should be
    • Distance checks can be enabled and the child can disconnect from the parent if the distance is too great
    • Customize the parent lerp speed. Child will try and match the parent speed, the lerp value specifies how close it will match.
    • By default all carriages come with the Lean Effect and the Roll Effect (the mine cart has a custom jump effect)
    • Lean Effect, ability for the carriage to lean on or out of a bend, creating a cartoon lean effect
    • Lean effect thresholds and limits can all be customized
    • Roll effect is used to derail a carriage if it goes around a bend that's too sharp.
    • Roll effect threshold can be customized as well as the check performed, for example you can have it ignore Pitch and Yaw but derail on Roll only.
    • Debug strings have been left in place, but can be disabled with a single option
    • Add as many custom bogies to a carriage as you need for a custom setup
    • Events for post update to carriage as well as enter and leave each section of track




    Mine Cart
    • Mine cart is an excellent example of a single bogie carriage
    • Also an excellent example of using events to customize the carriage and implement custom effects (jump trigger)
    • The mine care features a jump effect that's applied to the carriage and can modify the scale, location and rotation of the carriage body or bogie




    Connection Tool
    • Auto rebuilds and detects invalid connections between tracks




    Debug Tool
    • Debug functions such as rendering bogie positions or carriage hitches stored in one debug blueprint so main blueprints aren't bloated
    • Print all connection info about a track or connection points
    • Print / render all bogie names for selected carriages
    • Render trigger regions for selected tracks
    • Render sensor bogie in real time
    • Render carriage hitches in real time
    • Delete all trigger regions from a track




    Tracks:
    • Tracks can be joined together to form complex or simple track layouts
    • Spline based mesh building
    • Any spline added to track blueprint will be handled as track spline (unless ignore tag is added)
    • Mesh building for spline can be disabled so merged actors or meshes can be added in place
    • Up direction can be set to create handing or twisted track
    • Connection arrows to visually indicate if connection made to another piece of track
    • Customize the connection distance (how far away the end point of another piece of track must be to be connected)
    • Notifies any carriage / train attached to track about editing so it can update
    • Ability to ignore other tracks in world when building connections
    • Ability to force track to use track connection (if multiple exist)
    • Ability to pick connection at random (if multiple exist)




    Terrain Track
    • Same as an ordinary track except it auto adds the spline points and uses line traces to conform to the terrain underneath
    • Best used with actor merging to build tracks quickly over uneven terrain instead of hand modeling everything




    Triggers
    • Attach to a single spline or all splines on a track
    • Customize the trigger radius
    • Comes with multiple events to customize the trigger behavior
    • All trigger fire events have the bogie as well as the parent carriage passed into them
    • Options to trigger once, reset, timed reset, trigger once per carriage, delay on fire
    • Trigger map comes with four pre built triggers to provide detailed examples





    If you have any questions, comments or feedback please let us know. We'll update this thread with any new information.

    Thanks,
    PJ Team
    Last edited by PolygonJelly; 01-09-2018, 10:21 PM.

  • replied
    Here you can see the 4.21 has collision but 4.22 does not. It has lost collision.

    Leave a comment:


  • replied
    Are the tracks for the coasters spline-based? Unlike the train tracks, I don't seem to be able to extend them.

    Leave a comment:


  • replied
    Pretty sure the collision got jacked on the 4.22
    The engine bp just moves right through a carriage bp now. Anyone else notice this problem?

    Leave a comment:


  • replied
    Hello all, this post seems dead...
    However, I would like to know where I can add an event to start an animation? I mean, I would like to start a train by pressing a key on keyboard. I don't really know how to do that.
    And, is there a way to add a "smoothing rate" when using speed trigger? The speed change is very abrupt, it would be nice to be able to control how the system goes from initial speed to triggered speed.
    Thanks!

    Leave a comment:


  • replied
    PolygonJelly Hey, are you still out there? I am having some trouble getting custom meshes implemented. The mesh goes in place fine, and the bogies change direction, but the animations of the bogies wheel spinning will not play no matter what I try. It seems as if WheelSpeed needs to be referenced somewhere in the blueprint as a new thing but I can't for the life of me find it. Could you help me out here? Thanks.

    Leave a comment:


  • replied
    Is "speed" (constant) in unreal units or its km/h ? Thx.

    Leave a comment:


  • replied
    PolygonJelly
    ​​​​​Is there already a trigger to stop a train for halting at a train station?


    ​​

    Leave a comment:


  • replied
    Hi, PolygonJelly. Very good pack and super easy to create what you want.

    I try to create multiplayer game, where main vehicle for all players - trains. But even i limit server tick rate on bogie, and use your option "fixed delta time" on train_carriage i see that, when i'am play 2 or more players the train speed getting slower as if speed depends on frame rate. I'am tested in editor only. What you think about it?

    Regrads and thanks for this greate pack, again.

    Leave a comment:


  • replied
    Hello super work !!
    Is it possible to downsize the rails and wagons?

    Leave a comment:


  • replied
    Do the cars have separate material slots. I would like to add material for the wheels and for the outside of the car.

    Leave a comment:


  • replied
    Hey I'm enjoying your package, thanks.
    I'm making a HO scale model train game, I've managed to scale the trains down and modify settings like the boogie offsets and boogie distances.

    It's working pretty well but I'm having some trouble with the Train Carriages Distance from Parent, it works okay for the first 1-2 carriages, but after 3-4 the distance starts getting screwy. I wonder if there's some imprecision at this scale?
    GIF: https://imgur.com/a/KW1l2yX

    Leave a comment:


  • replied
    Hello, I am taking your advice to modify the blueprints to fit my application. However, when I make a copy or a duplicate to have as a working copy, the self reference link breaks and it won't recompile. Any thoughts?

    I have been able to make some additions and modifications to the original but if I make a mistake and want to start over, I have to re-download it from the market place and literally start again.

    Thanks in advance for any suggestions.

    Leave a comment:


  • replied
    Hi
    Building a coaster I have mirrored a portion of the track, is it possible to reverse the connection points on the track sections so I don't have to re-build the whole thing?

    Leave a comment:


  • replied
    julez4001,
    This is possible, the each carriage can have a parent or a child. Usually you'd set this in the editor, but there's nothing stopping you from doing this dynamically.
    There are also track triggers in the system, so for your setup you'd have your train run over the trigger, and disconnect one of the carriages from the parent.
    Then you'd have another trigger that reconnects them.
    You'll probably need a custom trigger, but that's all straight forward.


    Hevedy
    Yep, check out the map: movement_smoothing.umap in the maps folder. It shows two trains, one with smoothing and one without.
    It works pretty well and you can tune the smoothing depending on what you want.
    You could build far more accurate movement functions for splines in UE, but this works well as a general use case for most peoples needs.

    Leave a comment:

Working...
X