If it was a magic force field hit, why was it that he was going 116 a foot from my bumper on spoon when I was going 95 and braking a touch? Seriously. It was a hit.
I will simply say that he started second this race, got taken out by someone else and I was on worn tires, that doesn’t change the speeds of the cars, the telemetry is what it is.
Re going off track though for me, that’s a possibility, but I also cut the final chicane a bit on Suzuka and roll the dice, of all my laps there I have only gotten penalized 2-3 times...Track cut pens seem unreliable to me at best.
My theory was the position swaps that happened in a short time frame right there had something to do with it,
So, where does that leave my thinking? I still am unsure.
I know that contact is a concern, at release pretty much any contact led to penalty for both players.
The problem they had and still have is blame assignment, so my idea is if we say okay first step is for the game to detect contact, that’s step one.
Just throwing this out there but IF PD was concerned with contact leading to position swap there is a lot to concern a programmer with in a seemingly quite simple system.
First detect contact second detect position change, If I had to guess right now I’d have to guess that blame assignment in like your Monza or Nurb GP t1 could get very weird if it was based on position swap. There’d have to be a delay of some sort IF (hypothetical) blame assignment for contact were based on position swap.
So for determining a pen it’d be like contact detected-some processing based on some algorithm-blame assigned.
Contact alone is complex, clearly they show us they can make side contact penalties more or less sensitive, then throw in lag...
I mean I am heavily leaning towards you being correct because you have so much experience, and usually the simplest solution to any problem is best.
I mean you gotta slow down a bit and imagine you are explaining this to a three year old.
We gotta establish the steps necessary to program this deal...All I have so far is detect contact.
It’s true, there is not just obvious contact. Magic force field around car absolutely is real especially with open wheel. You cant stick a wheel in on someone like in karting and send them flying in GT Sport.
Maybe detect contact, determine severity, if severity is enough, assign blame and pen or something.
I really don’t know it’s a fun thing to think about though.
Turn 1 Nurb gp, at games release people were being punted off and incurring a penalty at times due to the both parties blame assignment problem.
I’d love if anyone has it to post a recent bump draft penalty video. I don’t have one and I have never seen this problem that exists that so many people complain about.
Or a tap tap sr down video...I’ve heard about this, but never seen it...
Edit, if they had better collision physics, blame assignment might be easier. Pinballing cars t1 in a hard braking zone....
Yes it was a hit, but that's how the algorithm works. The hit was only detected on one client. The other client sees the car magically going out of the way and thinks nothing of it. Client 1 asks client 2, did you hit me, client 2 denies a hit, no penalty is issued. A better system that can detect whether contact was inevitable will prevent lag punts from escaping without a penalty. They will still happen, yet if the client reconstructs the actual paths of the two cars with synchronized time codes, it can detect whether the hit was inevitable or whether lag displacement caused the contact.
I've gotten a shortcut penalty for taking the grass there, they work in that place. The final chicane is pretty forgiving though.
Contact detection is bloody hard with asynchronous clients. You control your car in real time, all other cars are forward predicted versions based on older data. If the brake information from the car behind you is delayed by a (small) lag spike, that car can easily hit you. Your client resolves the bump on your end, you are already screwed. Then it turns out that the car behind you actually did brake in time and never hit you on his client. Now what? Your client keeps running on in real time and can't rewind the accident that never really happened. You can't really blame the other car either for matters out of their control.
Severity is another problem. If contact is already uncertain, how do you accurately determine the force of impact when you're dealing with delayed acceleration and steering data. The server could help with that by replaying the sequence with the actual telemetry of both the cars synchronized until the point where one client detects contact (and thus dirties any further telemetry)
If the contact somehow would have happened before either client detected anything, then the server can very accurately compute the force of impact. If one client detected it early (because of false forward prediction of a car due to late acceleration data) then the server can try to extrapolate that car's vector (of the one that detected contact early) and try to guess whether impact would actually have happened and how severe it could have been.
Yet is that fair? Each driver can only react to the circumstances playing out on his screen. Even then, is it fair to have to predict the actual position of a car that's visibly lagging?
And as you see, if contact, severity, angles and positions involved are all unreliable between clients, how would you make better collision physics? The problem is the internet is too slow for synchronous racing which would feel like the game being streamed from a server. It works with asynchronous clients, that is every client runs the race themselves while receiving telemetry for all the other cars. Yet with all the different timing involved in receiving data, it's impossible to make accurate collision physics. It would play out differently on each client or rather you would simply see the solution of what the other client calculated happened to their car. That's why collisions often look so weird as you see what your car did vs what happened to the other car as calculated on their client. If it looks off, it's not because of bad collision physics, it's because it happened differently on each client.
It's fun to think about and I have dealt with the issues of forward prediction while I was still working with GPS navigation. You want to see your screen reflect the actual position and orientation of your car, yet the gps data is always 1 to 2 seconds old by the time you see it. 30 to 60 meters behind at highway speeds. The delays are much shorter in GTS, yet the speeds are also much higher and there's no assumption that cars simply stay in their lane
Here's my favorite revenge tap to win experiment
Draft tap, tap wall just before finish, and I give the car ahead 3 sec penalty taking his position (he deserved it)
You can see his position changing to 5 after crossing the line.
This is a fun one. First hit contact when he tries to block me too late. Then the game ghosts his second attempt at ramming, he goes through me and hits the wall. Contact, resulting in wall hit, I get a time penalty. It's even more fun when different systems start interacting lol
Another old one. Dive bomb clips me then hits the wall since he was never going to make that corner. Contact, wall hit, I get the penalty.
Here I get tapped from behind by a car that can't make T1, contact, wall hit, I get the penalty
It's a curse to be able to stay in control of the car
Back to how to determine who needs a penalty:
- Severity of contact is uncertain
- Point of contact between two cars is uncertain
- Position and direction of the other car is uncertain
Now how would you assign a penalty based on the bump. The game tried before but that was deemed too unreliable. Now it looks at the after effects. Does a car go off, penalty. Does a car benefit, SR Down. How it actually determines who benefits is a good question. A draft bump resulting in more speed causes an SR Down for the car ahead, benefit. How the game determines benefit in side by side contact in corners, I don't know. Perhaps DR plays a bigger role there.
To apply actual racing rules the game will have to analyze all the movements leading up to contact instead of looking at the result. The server could do that using synchronized telemetry together with the two versions as played out on the clients involved. Then it can start looking at track position, valid defenses, leaving room, braking on time etc. This costs a lot of resources and time to make. Plus we can debate endlessly on here about a single incident, how is an algorithm supposed to rule consistently. You will need some kind of learning AI to deal with all the different tracks and car combos with tire wear and slipstream affecting brake points and possible lines to take. Collect all the incidents that happen in sport mode, feed it through an AI with human stewards correcting the ruling until prediction is accurate enough. A massive undertaking.
That's not to say some simple rules could improve a lot already. Now to figure out where to start and what simple rules will be effective.