In a race at Mexico against 10 AI, I was on pole and got a reasonable
start and led into the first corner with the 2 Loti following. Then,
coming out of the left-hand kink exit to that first corner I noticed
that the screen update was a bit jumpy - a sure sign of an accident.
When I looked at the replay it showed that the 4th car, an Eagle if I
recall (I saved the replay it was so bad, but am doing this from
memory), had started to slow through the first part of the corner
(obviously some kind of early mechanical failure) and it eventually
ground to a halt out on the track. However, the car behind and other
following cars, had no clue as to what to do and just ended up grinding
to a halt also, with various cars just going into the backs of other
cars. Then, in order to get moving, some would try and drive in a
straight line in a pitiful attempt to drive through the car(s) in front,
whilst others ended up at a ninety degree angle to the track and going
nowhere. Eventually, some 20 to 30 seconds later, not only was the
Eagle out but 2 other cars also. Sad.
In many years gone by, on my old Atari ST, I had a go at changing
various aspects of the original Microprose Grand Prix, and one thing
that I discovered about overtaking on corners was that a pretty simple
formula would work. That was, if the car behind felt that the car in
front was going 20mph too slow through the current corner and the car
behind was in a position to do so then try to overtake. This worked in
both slow and fast corners as a starting reference and with some simple
tweaking for whether the car ahead was accelerating, braking and some
added randomness/weighting it was pretty realistic. Certainly never got
the in corner pile-ups that occur in GPL.
And in case some people who had the original Atari version are thinking
to themselves that it didn't have cars slowing out on the track so this
would never have occurred. Well, in mine it did because I had
incorporated that feature as well. :-)
--
Peter Ives