In TRS2004, the GameScript function to tilt a rolling stock vehicle is [FONT="]Vehicle.SetRollBasedOnTrack(multiplier);[/FONT]
I don't know if anyone's put that function into a Driver Rule.
The function sets the tilt of the specified vehicle. The function must be applied to each individual vehicle in a train. In theory different multipliers could be specified for each vehicle but that would probably be highly unrealistic.
The resulting tilt angle is a function of the track curvature radius, the train's speed and the multiplier specified in the function. It also depends on the rolling stock, meaning that some experimentation is required to set the correct multiplier value. Multiplier values above about 5 generally give excessive and highly unrealistic tilt angles.
Positive multiplier values cause the tops of vehicles to be further outside the curve, while negative values give the opposite effect.
I've tested a small number of rolling stock items, all of which react to this function. However, in every case the front bogey stays level and in contact with the track (which is correct), the body of the vehicle tilts (which is correct), but the rear bogey tilts so that the wheels on one side rise above the rail (which is not correct). This appears to be an inherent bug.
In TRS2004, AFAIK all track is level in the transverse sense. In other words, track cannot be given a camber (or "cant" or "superelevation" as it is sometimes referred to).
Example of coding:
[FONT="] Vehicle[] playertrainvehicles = playertrain.GetVehicles();[/FONT]
[FONT="] int i;[/FONT]
[FONT="] for (i=0;i<=7;i=i+1)[/FONT]
[FONT="] {[/FONT]
[FONT="] playertrainvehicles.SetRollBasedOnTrack(3);[/FONT]
[FONT="] }[/FONT]
There is one old Razorback Railway scenario for TRS2004 which has a tilting train, namely "SRR07 - The Love Boat". It is still available free of charge on our server (free registration required).
HTH, John