Question Regarding "AIMinPassesPerTick=" Setting in .HDV File

otta56

Could someone from ISI please explain what this setting actually does and what the range is? I would like to enable more accurate physics but the expanatory line "minimum passes per tick (can use more accurate spring/damper/torque values, but takes more CPU)" does not provide any guidance on setting it high or low or what the range is.

Thanks
 
As long as I have seen you might forget some response from ISI staff.

There're a LOT of commands and lines in AIW, HDV, GDB, TDF and even SCN files which have their meaning completely covered or unknown after 6 years of rF release and, sorry for say it, I don't believe one day they will be clarified.
 
Setting it high will give more 'accurate' physics for AI, but will use more CPU. Bearing in mind the AI physics are dumbed down anyway, ostensibly because of CPU load. From the description it would seem the physics are calculated in passes, and this allows you to set the number of passes used in each 'tick', or update, whatever rate that happens to be (40 fps perhaps? That's the telemetry rate when your car is AI controlled)

Sure, that's only an educated guess, but I don't think it's a major setting anyway. Any reason you were asking about it?
 
I wanted to see if using more accurate physics for the AI would improve their collision avoidance without reducing the AI skill level. Setting the AIMinPassesPerTick to 20 seems to have improved the AI's ability to avoid collisions, particularly when there are several cars entering a corner. I am now able to leave the aggression setting @ 50% without the AI ramming my vehicle. As an example, in passing on the long straight @ Toban, the AI will pull up to my bumper and then swing around on the right without any contact. Before increasing the AIMinPassesPerTick, the AI would ram my vehicle. I suspected @ the time that updates to their position data was not frequent enough to avoid collisions.
 
One of the causes for unexpected AI behaviour relative to the player's car is a bug in the regular statements for feelers in the General section of the hdv file.

From the BMW/Sauber
...
FeelerFrontLeft=( 0.900,0.394,-1.950) // Front-left corner collision feeler
FeelerFrontRight=(-0.900,0.394,-1.950) // Front-right corner collision feeler
FeelerRearLeft=( 0.900,0.394,2.260) // Rear-left corner collision feeler
FeelerRearRight=(-0.900,0.394,2.260) // Rear-right corner collision feeler
FeelerFront=(0.0,0.384,-2.090) // Front side collision feeler
FeelerRear=( 0.0,0.384, 2.420) // Rear side collision feeler
FeelerRight=(-0.850,0.384,0.000) // Right side collision feeler
FeelerLeft=( 0.850,0.384,0.000) // Left side collision feeler
FeelerTopFrontLeft=(-0.100,1.010,0.720) // Top front-left collision feeler
FeelerTopFrontRight=(0.100,1.010,0.720) // Top front-right collision feeler
FeelerTopRearLeft=(-0.500,0.850,2.500) // Top rear-left collision feeler
FeelerTopRearRight=(0.500,0.850,2.500) // Top rear-right collision feeler
FeelerBottom=(0.000,0.080,-0.05) // Bottom feeler
...

If you look at the FeelerTop... values, (last 4 lines), the values for the first parameter, the location of the feeler in the X direction, is actually on the wrong side of the car. So FeelerTopFrontLeft is on the right hand side of the car and the ...FrontRight is on the left hand side of the car. This seems to confuse the AI - or at least fixing those lines seems to make them behave more rationally.
 

Back
Top