Hi
@Tidgney, very interesting video!
I agree 100% with you on the track limit penalties. I would probably implement a 3-strike system for minor cuts during races though, obviously not for qualifying or TT. So, instead of getting 0.5s penalty at the first minor cut, you get up to 2 warnings, then a 3s penalty at the third one.
As for contact penalties... as a software engineer myself, I've never seen it implemented properly. Even humans have differences of opinion on certain incidents and real life stewards do get it wrong often, with replay footage in many different cameras and telemetry available to them. Your proposed system would work well for the most obvious crashes (intentional punts, pit maneuvers, brake checks), but I think it would still pick the wrong one under many situations. Incidents with more than 2 cars involved, or most incidents involving side contact on apex, for example. Was the driver alongside enough to be entitled to a car width's space? Did the driver defending turn in on the overtaker, or was it a divebomb? Would he have made the apex? I see all those very difficult for an automatic algorithm to get right, with no possible interpretation of
driver intent. Specially, as I believe (don't quote me on this), PD does all the work server side, with access to timing and driver input data, but probably little information on the track itself.
Personally, I would prefer a shared blame system, like ACC or iRacing implement. No automatic penalties, just SR down for all drivers involved. For that system to work well, the SR system should be completely reworked, however. Today, clean drivers can have their SR (or even get a DR reset) affected massively if they are part of a few unlucky incidents in a race. However, those drivers who drive dirty, don't care about their SR and crash people on purpose, can get their SR back to 90+ in just a few races, giving them a completely blank-sheet to start crashing people all over again.
I like (the concept, at least, implementation is not perfect) how ACC implements the SA. It basically gives you a trust rating for driving cleanly, and it measures incident points. The rating is a combination of both, and it's a rating that evolves over time. So, basically, a couple of incidents would not drop your SR to very low levels as it could happen in GTS. But drivers who are consistently dirty would really struggle, having to drive clean races for a very long time before they get back to a good SR. If they get that right, the SR system would probably fulfill its purpose and maybe an automatic penalty system would not even be necessary...
PD does all the work server side, with access to timing and driver input data, but probably little information on the track itself.
That's right on the money. For the penalty system to work the race needs to play out on the server as well.
There are 3 versions of events with 2 cars involved due to latency:
Driver A races in real time against Driver B who's car is forward predicted on Driver A's screen.
Driver B races in real time against Driver A who's car is forward predicted on Driver B's screen.
The server can look at the race with properly synced data from Driver A and Driver B.
To see the effect of latency, 30 ms latency makes a difference of 1.0 meters at 33 m/s (118 kph / 74 mph)
The higher the latency and speeds involved the more the events differ between Driver A and Driver B and the more contact results in ping pong physics. (You don't actually hit the other car on your screen, your forward predicted car hits the car on the other driver's screen and you see the result of that collision)
A very complex problem due to latency involved effecting all kinds of 'hard' measures like who is ahead / alongside or not. Thus hard logic will never solve the problem, fuzzy logic and weighting scales is all that can be done.
Some things can be looked at though, like leaving at least a car widths room when the fuzzy logic decides there was significant overlap / rights to the track for the other car. The game doesn't look at that at all atm but that's a really easy calculation, track width minus other car width plus margin. Also carrying too much speed to make a corner can easily be calculated with the physics engine in the game. The server can do that to unburden the client and analyze after the collision if it would have been possible for either car to make the corner.
Of course GT Sport needs to start with clear rules first.
To have corner rights first you need to have established significant overlap before turn in with the ability to make the corner without 'help'
With latency significant overlap is fuzzy on either client, but on the server it can be decided after syncing the data from both clients.
Turn in is also a fuzzy concept, turn in points are different for trail braking, track position, early or late apex, therefore F1 states, overlap in the braking zone (which is also fuzzy where it ends depending on trail braking) and have to beat the other car to the apex while being able to make the corner (in a reasonable way)
Now maybe the server can come to a decision after syncing the data from both clients, however do you make Driver A responsible for Driver B's internet lag? There's still the 2 other versions of events on either client. Those need to be another input in the balance as well.
Only if can be established that one driver was wrong in all 3 events, then that driver gets all the blame. All else should be shared blame imo. Weighted perhaps depending on how far the scale tips in one direction.
And yep the current problem is -10 or -12 SR for harmless contact while far less for a time penalty and nothing for side swiping a car off the track. That's a lot easier to fix. Contact, no position change, car speeds hardly effected, -2 SR at most. Cars not effected at all, ignore. Heavy contact (side swipe) position changes, car goes off, heavy penalty, -10 SR. Why doesn't that work!!!
The tricky part is bump to pass, bumping or dive nose inside pushing the car ahead slightly wide to pass through the inside, vs turning in or out on a passing car to make contact so they can't pass or get a penalty. Shared blame since figuring that one out with latency has me scratching my head. -2 SR when positions stay the same, -5 SR plus a small time penalty for both cars when it results in a position change.