Hey everyone!
So with the recent push in the Club races to stamp out corner cutting, I was trying to think of an effective way of enforcing it. In the absence of any proper reliable flag and penalty system in AC (that I'm aware of), it seems looking back post race is the best way. I'm not a staff member, so I can't comment exactly on how this is done for club races, and so this thread might be totally redundant.
I know a lot of people choose to simply set penalties to off, and set the max wheels out allowed to 4, so people don't get messed up by dodgy penalties, and it's just a case of policing within servers. There's probably a great and effective way of doing it, but to me this seems prone to errors and conflict. To me, surely setting the max allowed wheels out to 2 (in club racing we allow 2 wheels outside the track), that way cuts are registered as such, but keep the penalties set to off. This way, especially in qualifying, everyone can be certain no cuts are being made, as laps will be invalidated (as far as I'm aware this is how it works?).
I was discussing this with a friend, in conjunction with showing him simresults, and what they do with the race_out.json files, when I noticed that those files actually include a "cuts" value for each lap! A bit of explaining to my non-sim-racing friend and him fiddling with Go later, and we have made a little tool for analysing this.
Now, this is in revision 1, literally thrown together by him in about 20mins, but i'll explain how it works, link to the GitHub and if this sounds like it's useful for you guys maybe we can get some improvements made: https://github.com/cj123/acstats
The gist of it is as follows. Firstly, it prints out each lap for each driver in each session, showing lap times and number of cuts on that lap. Secondly, it flags which lap was the fastest by that driver in that session (this for qualifying sessions, you can see if their fastest lap had them cut the track). Thirdly, it compares each lap to the average of that driver's previous laps to determine if that lap could be considered faster. Finally, if a lap had cuts, and it was faster, it flags that lap as the driver having cut and gained an advantage (this is more for the race than other sessions of course).
Pretty simple, I know, but I think with some work it could be very effective. I think the first thing that needs fixing is that it needs to disregard very slow laps from the averaging. Maybe it should ignore any laps slower than 107% of the fastest clean lap? Maybe higher than that? I don't know, that's where more experienced drivers need to weigh in.
Anyway, I guess my basic question is, have I completely wasted my friend's time by not knowing or understanding something? Is this potentially a useful tool? Is there a better way entirely of judging corner cuts? I'm totally out of my depth here, so I'd love some experienced guys to weigh in.
-Joe
Edit: here's a download link for the tool -
https://www.dropbox.com/s/w19oomoof9micwf/acstats.zip?dl=0
Just extract them both in documents\assetto corsa\out and double click the .bat file. Results are in analysis.txt
Edit 2: Scroll down a bit to see the results of some of my experimentation to get AC's track limits to be better. There's a download for a surfaces.ini file for Silverstone GP that makes it much stricter, and might be worth some testing. I'd love feedback on this!
So with the recent push in the Club races to stamp out corner cutting, I was trying to think of an effective way of enforcing it. In the absence of any proper reliable flag and penalty system in AC (that I'm aware of), it seems looking back post race is the best way. I'm not a staff member, so I can't comment exactly on how this is done for club races, and so this thread might be totally redundant.
I know a lot of people choose to simply set penalties to off, and set the max wheels out allowed to 4, so people don't get messed up by dodgy penalties, and it's just a case of policing within servers. There's probably a great and effective way of doing it, but to me this seems prone to errors and conflict. To me, surely setting the max allowed wheels out to 2 (in club racing we allow 2 wheels outside the track), that way cuts are registered as such, but keep the penalties set to off. This way, especially in qualifying, everyone can be certain no cuts are being made, as laps will be invalidated (as far as I'm aware this is how it works?).
I was discussing this with a friend, in conjunction with showing him simresults, and what they do with the race_out.json files, when I noticed that those files actually include a "cuts" value for each lap! A bit of explaining to my non-sim-racing friend and him fiddling with Go later, and we have made a little tool for analysing this.
Now, this is in revision 1, literally thrown together by him in about 20mins, but i'll explain how it works, link to the GitHub and if this sounds like it's useful for you guys maybe we can get some improvements made: https://github.com/cj123/acstats
The gist of it is as follows. Firstly, it prints out each lap for each driver in each session, showing lap times and number of cuts on that lap. Secondly, it flags which lap was the fastest by that driver in that session (this for qualifying sessions, you can see if their fastest lap had them cut the track). Thirdly, it compares each lap to the average of that driver's previous laps to determine if that lap could be considered faster. Finally, if a lap had cuts, and it was faster, it flags that lap as the driver having cut and gained an advantage (this is more for the race than other sessions of course).
Pretty simple, I know, but I think with some work it could be very effective. I think the first thing that needs fixing is that it needs to disregard very slow laps from the averaging. Maybe it should ignore any laps slower than 107% of the fastest clean lap? Maybe higher than that? I don't know, that's where more experienced drivers need to weigh in.
Anyway, I guess my basic question is, have I completely wasted my friend's time by not knowing or understanding something? Is this potentially a useful tool? Is there a better way entirely of judging corner cuts? I'm totally out of my depth here, so I'd love some experienced guys to weigh in.
-Joe
Edit: here's a download link for the tool -
https://www.dropbox.com/s/w19oomoof9micwf/acstats.zip?dl=0
Just extract them both in documents\assetto corsa\out and double click the .bat file. Results are in analysis.txt
Edit 2: Scroll down a bit to see the results of some of my experimentation to get AC's track limits to be better. There's a download for a surfaces.ini file for Silverstone GP that makes it much stricter, and might be worth some testing. I'd love feedback on this!
Last edited: