Skip to main content

Tutorial Setup

Before we get started, download the following place containing all of this tutorial's assets:

Link to Starter Tutorial Place (Not Setup)

Open it up in Roblox Studio.

You'll notice our workspace has the following Models:

  • Station
  • Points
  • TrainModel

The Station just contains the platform and decor for our station. It's mainly useful to mark out where our station is in this bare bones template and to hold our SpawnPoint close to where our train will be.

The two Models we will are primarily interested in are Points and TrainModel.

Points

Points Model in Workspace

The Points model contains the layout of coaster. Each Part is positioned at the track line of our coaster and follows the double looping and double corkscrewing path of the coaster.

If you were to expand it's children in the Explorer, you'll notice that it is setup in a unique way. All of the children are numbered in-order starting at 1 following the layout and are never duplicating. This setup is referred to as OrderedPoints, or just Points in these tutorials.

The framework requires the layout's compiled points model to be setup in this way to be properly loaded, though you still need to do some setup before it does. This will be done so later in this tutorial.

note

If you are using NWSpacek's Coaster Plugin, the original version does not support the compiling of a NWSpacek's spline in this way, instead naming all children as "Track". You will need TheEpicTwin's modded version of NWSpacek's Coaster Plugin in order to compile as OrderedPoints.

Link to Edit of Spacek's Coaster Plugin

If you are importing from NL2, TheEpicTwin's NL2ToRoblox plugin already does this by default.

Link to NL2 to Roblox Plugin

Train Model

Train Model in Workspace

The TrainModel is, well, the model for our coaster train. Compared to our Points, however, the included model is already fully setup for the framework. This is because the process for converting a full train model to be recognized by the framework (referred to as rigging, similar to how you would rig a character model for an animation), is tedious and somewhat long and complex. It's better suited in it's own tutorial which you can find later in the docs here.

If you were to look through it, you'll notice that each moving part of a train is grouped separately: Cars and Connectors and Chassis and WheelSets. This is so they can be moved independently of each other, providing a more realistic articulation and movement in action.

One thing I want you to specifically look at is the MidPoint value. This will be used later. To spoil what it does, it tells the framework what the "middle" of our train is while it's on the track. This is important as the position of this affects physics and positioning when using certain CFrameTracks. It's recommended you leave this at 0.5, which is the middle.