New Babbage Railway Standards
From New Babbage Department of Records and Archives
NBRy Track Standards
The inside edge-to-edge distance between the rails.
NBRy rail can be laid across any flat surface. To construct Railbed (e.g. Gravel bed) for track laid across uneven surfaces, place a prim on a flat surface and set the measurements and attributes as given below. The length of the track is set in this example to 10.00 meter, but this can change according to your needs.
prim size: prim rotation: x = 4.00 x = 0 y = 10.00 * y = 0 z = 0.50 z = 0 prim attributes - Prim name: NBRy Railbed - Taper set to x 0.00 - Taper set to y 0.00 - NOT Phantom - Material: Glass
To construct the track (the actual rails themselves), place 1 prim directly on top of the already constructed Railbed, aligned with the railbed's x axis, then set the dimensions as below:
prim size: prim rotation: x = 1.50 x = 270 y = 1.50 y = 0 z = 10.00 * z = 0
Do not forget to make the rail prims Phantom, so they don't interfere with the train wheels. The length of the track is set in this example to 10.00 meter, but this can change according to your needs.
prim attributes - Hollow: 80.0 - Path cut (begin): .375 - Path cut (end): .875 - Phantom
- Loading Gauge/Clearance:
The clear width (from the centerline) and height (above the Guide) should be as follows:
width = 4 meters height = 5 meters in urban locations; 7.5 meters is optimal length = maximum 7.5 meters per car
4 meters width and 5 meter height is optimal; tight urban locations may not allow for this but it's a good start. Cars longer than 7.5 meters look very odd going around tight curves.
- Catenary Wires:
The NBRy doesn't currently feature any overhead electrical wire. Anything other than primitive electricity is not very steampunk.
To construct the Guidance place a prim on the Railbed. Don't raise or lower it. Set the prim's 'Slice Begin' attribute to 0.75. Apply a full transparent texture to it. Name the prim 'Guide' The length of the track is set in this example to 10.00 meter, but this can change according to your needs.
prim size: prim rotation: x = 0.50 x = 0 y = 10.0* y = 0 z = 0.25 z = 0 prim attributes - prim name: 'Guide' - slice begin: 0.75 - NOT phantom (when more then 1 guidance prims is used with alternate names, as shown above, the alternate prims should be phantom) See switches. - Material: Glass
Note: DO NOT name guide rails "Guide" if the prim is on an incline and longer than 10M. This will cause some trains to correct their height to the elevation of the center of the guide rail, which could create all sorts of problems.
NBRy Track Curves
NBRy rail was designed to serve in tight urban locations. The minimum radius tested for urban traction is 12.5m, although wider radii result in smoother performance. NBRy curves are made using tapered prims rougly 3 meters in length, with points aligned with points and bases aligned with bases, rotated in increments. It takes roughly 8 prims, rotated in 12-degree increments, to achieve a 90-degree turn.
To make curves use straight sections with a length of 3 meters, setting the taper to 1.0, and angle them in 12.5 degree increments.
NBRy Region crossings
Border crossings are always tricky in SL. One experimental system is a script called 'simcrosser' keeps track of the vehicle's movement vector and location on a sim. When the location is found to be near a border and the vector will take it over the border, simcrosser momentarily sets the vehicle to NonPhysical, moves it using llSetPos to the bordering sim, and turns physics back on. It has also been found that crossing sims at right angles results in the best crossings.
NBRy station stops and commands for automated vehicles
NBRy trains possess a script called 'autopilot' that listens on an open channel for instructions from track guides. To avoid conflicts, each car listens on the channel numbered 1000 higher than its unique number (so car 502 would listen on channel 1502). When autopilot hears a command it understands, it sends LinkMessages to the engine script to execute those commands. Standard commands include:
- startremote. Set car to physical.
- resumespeed. Set linear motor to normal speed.
- slow. Set linear motor to slow speed.
- stop. Set linear motor to zero.
- forward. Set gear to forward.
- reverse. Set gear to reverse.
- reverseandgo. Combined sequence, designed for newly-rezzed streetcars (more info coming soon)
- endremote. Set car to nonphysical.
- Coming soon
NBRy Block System
- Coming soon
NBRy Corrective Scripts
- autodestruct. If a car has been motionless for too long, or has tipped over, this script kills it.
- repositioner_listener. If a car a command from a repositioner prim, it will reset its position. This is handy at the ends of lines, after turning around.
- rerailer_listener. If a car a command from a rerailer prim, it will reset its x/y location. Implemented to correct bad simcrossings.
- rerotator_listener. If a car a command from a turntable prim, this sets the car to nonphysical and turns it around as if on a turntable.
- reverser_listener. If a car hears a command from a reverser prim, it will change direction.