Automation - The Car Company Tycoon Game

Automation - The Car Company Tycoon Game

Raufbold Feb 7, 2024 @ 5:25pm
Tires are weird
I wanted to take a closer look at the tire model of cars exported to BeamNG. To have something to compare that to, I first decided to look at the BeamNG tires and boy, that took me down a rabbit hole…
To say BeamNG tires are inconsistent is to say nothing at all, but some rules still apply.
So, here we go…

PART 1: TIRE SPECS
Each tire in BeamNG has a number of specifications that define its performance. These are:
FrictionCoefficient – multiplies the ground model maximum friction coefficient. Usually is 1, but can be modified to quickly change the tire’s performance without touching anything else
SlidingFrictionCoefficient – same as above, but for the minimum friction a tire could have. Until recently, this value for Automation-exported cars was 1.25, now reduced to 1.1
TreadCoefficient – how much grip a tire will lose on rough groundmodels. Max value of 1 for the best off-road tires. Value of 0.7 will mean 30% grip loss, 0.5 – 50% loss and so on.
StribeckExponent – this is not an intuitive one. Higher stribekExponent will cause a more "S" shape decrease in friction.. so, the friction will stay near the static value for some amount of sliding speed, and then swoop down to the sliding friction value. A lower stribekExponent, will cause a more sudden decrease in friction right from rest, but then decrease more gradually from there. So basically, higher value will mean that the tire will keep the maximum grip longer, but will then lose it more abruptly, while lower value will start losing grip almost immediately, but do so more gradually. Default value = 1.75
StribeckVelMult – this one is even less intuitive. Multiplies against stribekVelocity and contracts or extends the curve; So I guess the higher the value, the more abrupt loss of grip? And possibly longer max grip retention? Is the high value good or bad? I have no idea… Default value = 1, but values of 2.5 and 3 are not uncommon, which indicates low sensitivity of this value.
NoLoadCoefficient – friction coefficient with no normal force on the tire (basically the highest grip the tire can have – usually during normal driving on straights). Also determines the starting point from which the grip starts to fall when force is applied
LoadSensitivitySlope – determines the rate that friction coef drops off as normal force is added. Acts per node, in coef/Newton of normal force. It looks like this determines how quickly the tire will start to give in to the forces affecting it and lose grip, so similar to Stribeck values? Not clear at all how this one works. What is clear though is that it is extremely sensitive and even values of 0.00001 can have a noticeable impact. The lower this value, the better the tire is at retaining grip, it seems.
FullLoadCoefficient – minimum friction coef. Adding more normal force will not decrease the friction any more than this. So basically, the irreducible grip of the tire, no matter how hard you push.
SoftnessCoefficient – influences the time variant friction behavior. Max value of 1 makes the tire more like soft racing slick rubber. No idea how this is supposed to work, as tire temperatures are not yet implemented in BeamNG (???)

PART 2: THE DATA
Here’s the spreadsheet that I made with all the native tire values from BeamNG (and some Automation tires for comparison):
https://docs.google.com/spreadsheets/d/1bx-29gEIpGcSk1Asv010betN_5-Ce3m8/edit?usp=drive_link&ouid=106264211467113902559&rtpof=true&sd=true

There’s a raw data sheet as well as a general statistics one. For statistics I decided to analyze tires of different compounds (Standard, Sports and Race) grouped by width. I purposefully ignored the tire profile and wheel diameter, as they tend to play a much smaller role in tire performance.
The summary:
Pretty much all the tires (with very few exceptions) have max/min friction coefficients at 1. For everything else, here’s the analysis:
Standard tires:
These have relatively good offroad capabilities, normally losing only 30 (sometimes 50%) of grip on rough surfaces. The Stribeck Exponent of 1.75 also indicates decent grip retention when force is applied. This, coupled with Load Sensitivity of 0.00016 is supposed to indicate a good overall performance. Maximum grip is usually close to 1.3, whereas the minimum is around 0.4 – 0.5. Stribeck Velocity is 1. Let this be our benchmark in evaluating other tires.
Sports tires:
Offroad capabilities for sports tires drop, but only slightly, with 50% drop being more common than the 30%. Stribeck Exponent is a mess, jumping anywhere from 1 to 2. Is that supposed to indicate that some sports tires are super grippy while others lose grip almost immediately and are worse than standard tires? I don’t know… This is also where we start to see Stribeck Velocity values of 1.5, 2.5 and even 3. Avreage load sensitivity is pretty much the same as for standard tires – 0.00016, as is the minimum grip – normally 0.5, rarely going up to 0.55. Where the real difference lies is with the maximum grip value – this on average is 1.45 – 1.5, which looks like a significant increase in extra grip that sports tires can utilize when exposed to high speeds, rapid acceleration and sharp turns before they drop to the point of low drivability.
2R Sports tires:
These look like extra quality sports tires in BeamNG that are slightly worse off-road (lose 60% of grip), but have a higher maximum (1.55) and especially minimum (0.65-0.75) levels of grip. Stribeck Exponent value of only 1.25 looks interesting though. Does it somehow get compensated by high Stribeck Velocity values of 2.35 – 2.5? I have no idea…
Race tires:
Absolutely useless off-road (they lose 100% of grip) and with much higher load sensitivity (averaging 0.00024 – does this mean they somehow lose grip faster despite having higher performance?), these tires excel in other areas. For example, Stribeck Exponent for these is normally 2, probably indicating a very high ability to retain maximum traction before giving in. Maximum average grip is 2 (compare this to 1.5 in sports tires!) and a minimum of 0.68 (way better than sports tires and comparable to 2R Sports).

PART 3: AUTOMATION TIRES
Now let’s look at what Automation tires look like in BeamNG.
I yet have to analyze the impact of wheel quality on the tire specs, but some things are evident right away:
General:
Well, it’s obvious that Automation has a 1.1 SlidingFrictionCoefficient, so that probably means we can safely multiply minimum grip of all tires by 10%?
Standard tires:
What immediately strikes with Automation standard (Medium) tires is their worse offroad performance (0.5 vs average 0.7 in BeamNG). Maybe 0.7 was reserved for Hard tires? Stribeck Exponent is also quite a bit lower (1.6 vs 1.75) – does this indicate lesser ability to keep maximum grip when exposed to normal force? Higher Stribeck Velocity (2.35) leads me to believe however that this is how the Exponent deficiency is compensated and that higher Velocity value is actually a good thing. Maximum grip is also lower than BeamNG values for similar tires (for example compare the 1.17 for a 205 width tire in BeamNG vs an average 1.35 in BeamNG). Minimum grip is also much lower – while in BeamNG we normally see values of 0.4 – 0.5, Automation tires have this at 0.1, which is atrocious. Add to this a load sensitivity of 0.00018 vs 0.00016 and you get tires that are waaay worse (mind you – these are not 0 quality tires, but closer to 5-8). So do we need to have 15 quality to match BeamNG values? Or am I not getting something?
Sports tires:
Offroad values for sports tires actually match BeamNG with 0.5. Stribeck Exponent also is significantly increased to 1.7-1.99, which coupled with high Stribeck Velocity values should indicate high grip retention? Load sensitivity is also more in line with BeamNG – averaging 0.00016. Max grip is still behind, but not by as much as in standard tires – close to 1.3 vs 1.4 in Beam. Min grip is anywhere from a solid 0.7 for high quality tires to 0.11 (seriously???) for lower quality ones (again, these are not 0 quality!)
Race tires:
These stats are for Soft racing tires – Inters and Hards might be different.
So offroading is impossible on these, just like in Beam. Check. Stribeck Exponent is 1.8 – 2.1 (I thought one couldn’t exceed 2, but sure). Stribeck velocity is also quite high (a good thing?). Max grip of 1.9 – 2.15 looks quite capable and can rival or even exceed BeamNG performance. Minimum grip is not that consistent, with some tires having a whopping 0.89 and others only 0.15 (again, seriously???). Where the Automation race tires do stand out is in their load sensitivity – only 0.00016 vs 0.00024 looks like a VERY significant advantage.
So automation race tires are generally better than BeamNG I guess?

PART 4: AUTOMATION INCONSISTENCY
It also looks like Automation has a weird way of calculating tire specs even when they are of the same dimensions and same quality. For example, front and rear tires can have significant differences in Load Sensitivity (0.000181 vs 0.000174 for example, which is a big difference). What the heck is going on here? Same goes for same quality and size tires, but on different cars – they simply sometimes have different stats.

This sums it up. Please feel free to comment and give your thought about all of this.
Last edited by Raufbold; Feb 7, 2024 @ 10:18pm
< >
Showing 1-9 of 9 comments
markgy90 Feb 7, 2024 @ 11:39pm 
I'm really glad you've made this detailed description about Automation tyre problem. Grip is too low, which make acceleration and braking distance worse. I hope devs will notice this.
Ekai Min Feb 8, 2024 @ 12:44am 
I think you've mixed up the current and past sliding coef's? currently its at 1.25
Load sensitivity is in relation to weight on the tyre and I dont believe its effected by lateral/longitudinal force. This is what causes heavier cars to have less grip.
And as for the inconsistency, tyres export differently based on how heavy the car is, this might be why your front and rear values are different.
Daffyflyer  [developer] Feb 8, 2024 @ 2:01am 
So a few things to note here, you've almost got an understanding of how tyres are working, but there is a little more to it in some places that might help you understand what you're looking at better.

I'm not sure when you did the exports to test this, but the sliding coef should be 1.25, and both stribeckexponent and stribeckvelmult should be 2.something. currently.


The inconsistent appearing loadsensitivity values are from a system developed with the help of the BeamNG physics devs, which gives more correct increase and decrease in grip vs tyre width vs load/vehicle weight from exports. We did a heap of testing on this one, and the values is using now, while they might seem a bit odd, produced the best and most accurate results.

FullLoadCoefficient can effectively be ignored, it's never really reached besides in very extreme circumstances. It only exists as a kind of safety measure to make sure if you apply some rediculous load to the tyre it doesn't have 0 grip. It's set super low because it can ocassionally cause issues if set too high, but it's never going to actually impact useful performance of the tyre. This was also done on the suggestion of the beamNG devs.


The main tweaking of overall grip of tyres is done via NoLoadCoefficient, and this is what we tune to match peak G forces between Automation and Beam. In general you should see very similar peak Gs between the two games now, usually within a few percent. Although it'll vary from tyre to tyre as to how easy it is as a driver to get to that limit.


Automation tyres have long struggled with somewhat unpleasant behaviour in a slide, something I'd argue BeamNG cars do a little too, but to a lesser extent.


The latest version's tweaks I think have mostly fixed this now, broadly the approach was to raise StribeckVelMult (this basically lets you have a bit more sliding velocity before you transition all the way from static to sliding friction), and increased sliding friction somewhat (to prevent the really icy feeling loss of grip when sliding), but then stribeckexponent is set to give a reasonably sudden drop in grip when the transition from static to sliding friction *does* occur, to prevent the kind of wallowy drifty feeling where you can't really feel the tyres unsticking.


We did a lot of work with BeamNG physics devs, and with test driving from quite a few different people with a fair bit of real world and sim racing track driving experience, and that's what mostly guided the more subjective parts of the proccess (i.e things that unlike peak Gs etc are not measurable)


If you can find any strange outliers in the current numbers (as the ones in your spreadsheet appear to be out of date) i'd be interested to know, as it might help us find any remaining issues, but in general everything is functioning as expected now :)
XenoYparxi Feb 8, 2024 @ 4:18am 
Originally posted by markgy90:
I'm really glad you've made this detailed description about Automation tyre problem. Grip is too low, which make acceleration and braking distance worse. I hope devs will notice this.
From my experience current tyres (in this particular case I can only speak for racing softs tho) are around 2 to 3 seconds faster than previous iteration, so they're grippier at least in technical sense
Slim Jim Feb 8, 2024 @ 8:55am 
Originally posted by markgy90:
I'm really glad you've made this detailed description about Automation tyre problem. Grip is too low, which make acceleration and braking distance worse. I hope devs will notice this.

Have you tried building any replicas with the most recent patch or are you just commenting based on past experience? Did you read my previous posts about how the Lexus LS400 you tried recreate came with summer performance tires (ie. high quality sports compound in Automation) and not the medium compound tires you were testing them with?

@Raufbold - Appreciate the time and effort you put into all this, but as Daffy said, a lot of changes were made since you started this project. About the only tire I found to be lacking in grip (this was at least 1-2 patches ago) relative to a Beam tire was the rally tire which seemed to overcorrect a bit for grip levels that were too high. I have not had a chance yet to test the latest patch to compare. My thoughts are the tires are better now than they ever have been, produce realistic laptimes around Road Atlanta (my benchmark track) and behave realistically in just about all situations. (Barring things like tire temperature and wear which is entirely a Beam limitation, not an Automation export problem).
Last edited by Slim Jim; Feb 8, 2024 @ 9:05am
Raufbold Feb 8, 2024 @ 9:36am 
Hmm... I haven't done an export since around two patches ago. I don't remember noticing changes to friction coefficients in the patch notes, so didn't think it was necessary. Will try again.
Overall, thanks everyone for your comments - this is a great discussion!

P.S. Just checked the newly exported cars. It looks like a lot has changed:
The SlidingFrictionCoef is now 1.22 (why does this even matter if this is supposed to boost the FullLoadCoefficient? Or am I wrong?)
Stribeck Exponent and Velocity are now astronomically high at 2.2 - 2.3 (which supposedly makes tires more stable and helps REALLY make sure we never reach that minimum grip value?)
NoLoadCoef (max grip) has been slightly reduced to compensate (in my car it went down from 1.588 to 1.536 - not by a whole lot)
FullLoadCoef is now dirt low at 0.12 down from 0.7 in my car (hope I never reach it :)

Also, quality of tires is mostly regulated by NoLoadCoef. For the same tire:
Quality 10: 1.536
Quality 5: 1.475
Quality 0: 1.415
So roughly 0.06 per 5 quality with this particular tire
There are also some minor LoadSensitivity and FullLoadCoef changes, but they are very small

It's interesting though how the devs decided to completely walk away from BeamNG tire balance and created their own. I know it's not 1 to 1, but something apparently wasn't working
Last edited by Raufbold; Feb 8, 2024 @ 10:22am
Daffyflyer  [developer] Feb 8, 2024 @ 10:45am 
Note that SlidingFrictionCoef doesn't boost FullLoadCoef

Sliding friction is about the loss of grip that occurs as the sliding velocity of the tyre increases, so once you get past that stribeck area of the static to sliding friction transition and the tyre is completely sliding how much grip is available still.

FullLoadCoef is only about force downward on the tyre (load or normal force), so anything about sliding has no connection with it.


For the stribeck related stuff, see my previous post regarding why both those numbers are high and what consequences that has :)
Raufbold Feb 8, 2024 @ 12:42pm 
Yeah, it's a bit tricky to wrap your head around those, but pieces seem to come into place now, thanks!

I just tested the car with different tire qualities on the Automation test track:
Quality 10 (1.536 NoLoadCoef): 2:08:933
Quality 5 (1.475 NoLoadCoef): 2:13:633
QUality 0 (1.415 NoLoadCoef): 2:15:997

The large difference between 10 and 5 compared to 5 and 0 is not random - it looks like there's a point where you feel quite comfortable with a car and then there's a point when you feel less comfortable. And while the 'more comfortable point' is unique, the 'less comfortable' points are all similar, resulting in more sliding here and there, making you drive slower overall. This is coming from a rookie driver though - maybe pros can feel those differences better and squeeze more performance out of 5 quality. It seems to me that I'm just immediately more cautious and therefore drive less aggressively, which results in this sudden drop.
Slim Jim Feb 8, 2024 @ 4:41pm 
In honor of Jason Cammisa's latest episode of Hagerty Revelations on YouTube, I created a Rover SD1 Vitesse replica with 0, 5, 10, and 15 quality tires. To compensate for the weight differences, I added safety quality and adjusted the weight optimization slider. The idea being to remove any possible differences that may arise from having a lighter overall weight skewing the results. I took all 4 trims to Road Atlanta and these were the results:

0QT: 1:56.708
5QT: 1:55.391 (-1.317 sec)
10QT: 1:54.116 (-1.275 sec)
15QT: 1:53.631 (-0.485 sec)

(sports compound, 1985)

I purposely limited myself to 2 laps each. 1 practice lap, 1 flying lap with the flying lap being the recorded value. Adding quality behaved exactly as I would expect it to. There was more grip with each successive increase in quality, but with diminishing returns.
< >
Showing 1-9 of 9 comments
Per page: 1530 50

Date Posted: Feb 7, 2024 @ 5:25pm
Posts: 9