Well if someone else had the basic script, all a road-team member would need to do is place the road sections and adjust the values in each script as required. While the rotation might be a bit confusing at times it can be made fairly easy.
I'm not 100% sure how you're trying to do this Grumble, but might I suggest an alternative implimentation for the roads? This is instead of sensors, it's more difficult to set-up (not by much, just needs more care) but ought to be much faster:
Basically, each road section would keep a list of object IDs for other key road sections, and lane numbers. On a given channel, a vehicle would broadcast the last road section it visited (by transmitting its key) and the lane it wishes to travel in. If a road-section receives this broadcast, it checks to see if the key is one that leads to it, and looks up the lane number to find out which object is next. It then replies to the vehicle, telling the vehicle which object to look for next, and how to travel toward it.
So say I have a road that looks like this:
| 1 || 2 |
| || |
| || |
| || |
a | * || * |
| || |
| || |
| || |
b | * || * |
| || |
| || |
| || |
c | * || * |
In the 'diagram' the numbers indicate the lanes, 1 is the south-bound lane (assuming right-hand driving) and 2 is north-bound. The stars indicate 'key-points' in the road. In this case the key-points are simply on a straight line, but the road is so long that they are in fact quite far apart (perhaps as much as a full sim-width apart, the closer they are the slower vehicles would have to travel to follow the path accurately).
A vehicle is moving in lane one and just visited key-point a, and it broadcasts a message such as:
1@<Object ID of a>@<channel to reply to>
All key-points with range of this broadcast will receive this communication on that channel, and will look first to see if they have information relevant to route 1, and if so, if they have an entry for that object id.
Key-point b will have an entry for 'a' and lane 1, since it is a step along that route. It's entry will tell it that the next step to go to is key-point 'c'. The reply it gives on the channel the vehicle chose could be something like:
<Object ID of c>@<pos>@<gradient>
Now the vehicle knows where the next object is (so can now move towards it) and what it's object ID is (so that it can filter out invalid replies on the channel the vehicle is using for listening).
<pos> of course is the position of the next key-point, while <gradient> is the curve to the road. This might be a rotation, but vehicles would have to decide for themselves how fast to turn in order to achieve the correct curve at their speed so a float could suffice. Most likely this would require key-points to be placed at the beginning and end of an arc type curve.
Anyway, this might be confusing, but I think it could be more efficient than the sensor method, and may respond faster, since the vehicle only needs to begin broadcasting when it thinks it is in range of the new key-point. The key-point receives the message, does a quick look-up in its list of data and outputs the values on the channel being used by that vehicle. The vehicle (which is listening for messages on that channel, and from that key-point's object ID) will then take that info and work out how to continue.
I might give some example scripts later, as it may be a better system (would need some testing to be sure).