How to create a route in CSV Part 2 by ipaclansite

Pages: (1/1)

ipaclansite:

So finally after so long here is part 2 of the tutorials.

Welcome to part 2 of the CSV tutorial, here we'll learn how to place another track, and we'll learn how to create dedicated platforms and tunnel walls so you dont to place them

every 25 meters.

so lets continue where we left off.
Code:
--
With Route
.comment Second Avenue Subway Local by ipaclansite/kevin from BVEStation.com | DAY! Stations are empty in this route!
.gauge 1435,

With Train
.folder R160B,

With Texture
.background(1) 2ndAveT\bg.bmp,

With Structure
.rail(0) 2ndAveT\Ballast3RL.b3d,
.rail(1) 2ndAveT\Ballast3RR.b3d,
.freeobj(1) 2ndAveT\125thSt\Platform.b3d,

With Track
0,
.back 1,
.sta Lenox Ave. Layup;08.2655;08.2700;0;0;0;0;;0;45;;,
.railtype 0;1,
.freeobj 0;1;-0.5;-0.5;0,
5,
.stop 1,
100,
.sta 125th Street;08.2740;08.2750;0;0;0;0;;0;55;;,
.freeobj 0;1;-0.5;-0.5;0,
115,
.stop 1,

--
At this time you should understand what each line stands for.  Lets place another track.

Next is the .railstart command which places a new track.
Code:
--
With Track
0,
.back 1,
.sta Lenox Ave. Layup;08.2655;08.2700;0;0;0;0;;0;45;;,
.railtype 0;1,
.freeobj 0;1;-0.5;-0.5;0,

.railstart 1;4;0;1,

5,
.stop 1,
100,
.sta 125th Street;08.2740;08.2750;0;0;0;0;;0;55;;,
.freeobj 0;1;-0.5;-0.5;0,
115,
.stop 1,
--

As you can see we placed a new track on the right of the current track we're on.
.railstart 1;4;0;1,
The 1 is the rail id number, as opposed to 0 (the one we're driving on)
The 4 is how many meters from rail id 0, on the X axis, the 0 is the same only on the Y axis
The last 1 is the rail index number, or the object id number, most of the time we call them indexes so I'll start calling thme index from now on.

Try placing a few more if you would like.  Alternatively you can place negative numbers on the X and Y parameters to place them on the left of the current track.

Next we'll introduce something new.  The .form and .roof commands.  This command is dedicated for placing platforms as opposed to using free objects for them.  The .roof command

does a similar thing.  So we'll use a new route file to make it.

Code:
--
With Route
.comment Creating Platforms using the .form and .roof commands
.gauge 1435,

With Train
.folder R160B,

With Structure

.rail(0) 2ndAveT\Ballast3RL.b3d,
.rail(1) 2ndAveT\Ballast3RR.b3d,
.forml(0) 8thAve\StaForm1L.b3d,
.formr(0) 8thAve\StaForm1R.b3d,
.formcr(0) 8thAve\StaFormCR.b3d,
.formcl(0) 8thAve\StaFormCL.b3d,
.roofr(1) 8thAve\RoofR.b3d,
.roofl(1) 8thAve\RoofL.b3d,
.roofcr(1) 8thAve\RoofCR.b3d,
.roofcl(1) 8thAve\RoofCL.b3d,

With Track
0,
.sta Station 1;08.2655;08.2700;0;0;0;0;;0;45;;,
.form 0;R;1;0,
25,
.form 0;R;1;0,
50,
.form 0;R;1;0,
75,
.form 0;R;1;0,
100,
.stop 1,

500,
.sta Station 2;08.2710;08.2730;0;0;0;0;;0;60;;,
.form 0;R;1;0,
525,
.form 0;R;1;0,
550,
.form 0;R;1;0,
575,
.form 0;R;1;0,
600,
.stop 1,

--
Much like the .freeobj and .rail commands were used under the With Structure section, using .form and .roof is also used in a similar way.  However you see multiple sections of the .form and .roof commands.
.forml stands for the station platform on the left, while .formr stands for the platform on the right.
.formcl and .formcr is similar however this displays the walkable section of the platform.
See the image below.



Now we'll explain the With Track portion of this.  Now there isn't much, however we have placed a new .form 0;R;1;0, every 25 meters between the station start and the stop

positions.  BVE displays objects after every 25 meters, therefore we must place a platform after every 25 meters.

Code:
--
.form 0;R;1;0,
--

.form obviously starts the .form command in the With Track section
The 0 represents the rail index number we'll be attaching the platform to.
The R tells BVE where to place the platform, R for right and L for left.
The 1 represents the ROOF index number.
The final 0 represents the FORM index number, so its important not to confuse those numbers.

Finally we'll place a track on the left, then give that one a platform too.

Code:
--
With Track
0,
.sta Station 1;08.2655;08.2700;0;0;0;0;;0;45;;,
.railstart 1;-4;0;1,
.form 0;R;1;0,
.form 1;L;1;0,
25,
.form 0;R;1;0,
.form 1;L;1;0,
50,
.form 0;R;1;0,
.form 1;L;1;0,
75,
.form 0;R;1;0,
.form 1;L;1;0,
100,
.stop 1,

500,
.sta Station 2;08.2710;08.2730;0;0;0;0;;0;60;;,
.form 0;R;1;0,
.form 1;L;1;0,
525,
.form 0;R;1;0,
.form 1;L;1;0,
550,
.form 0;R;1;0,
.form 1;L;1;0,
575,
.form 0;R;1;0,
.form 1;L;1;0,
600,
.stop 1,

--
Now by adding another track with index number of 1, we also attach another .form on 1 on the left, using the same roof and form object index.

Now we'll place some tunnels since it looks a bit odd with just station platforms and roofs, but no tunnel walls.  Tunnel walls work in a similar way with the .form except we dont have to keep repeating them every 25 meters.

Code:
--
With Track
0,
.sta Station 1;08.2655;08.2700;0;0;0;0;;0;45;;,
.railstart 1;-4;0;1,
.form 0;R;1;0,
.form 1;L;1;0,
25,
.form 0;R;1;0,
.form 1;L;1;0,
50,
.form 0;R;1;0,
.form 1;L;1;0,
75,
.form 0;R;1;0,
.form 1;L;1;0,
100,
.stop 1,
.wall 0;1;1,
.wall 1;-1;1,

500,
.wallend 0,
.wallend 1,
.sta Station 2;08.2710;08.2730;0;0;0;0;;0;60;;,
.form 0;R;1;0,
.form 1;L;1;0,
525,
.form 0;R;1;0,
.form 1;L;1;0,
550,
.form 0;R;1;0,
.form 1;L;1;0,
575,
.form 0;R;1;0,
.form 1;L;1;0,
600,
.stop 1,
--

As you can see at 100, right after the stop position, we place the
.wall 0;1;1,
.wall 1;-1;1,

.wall literally starts a repeating wall, until you end it.
.wall 0;1;1,
The 0 represents the track number where the wall will attach to.
The 1 represents where to put the wall, in this case 1 = Right, 0 = both sides, -1 = Left
The final 1 represents the wall object index number.

Walls themselves do not have their own index numbers, and rather they use the track/rail index numbers as you see.  See the image below.



Pages: (1/1)