Detaching ARBs

Discussion in 'Car Modding' started by Lazza, Feb 8, 2021.

  1. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    Don't worry, this isn't a setup hacks discussion :D

    To repeat what I said somewhere in a long thread: I always assumed enabling detached ARB at the lowest setting (rF2 allows this to be set independently front and rear) actually led to the ARB being detached - ie 0 ARB rate.

    Having seen @mantasisg say that wasn't the case, I tested it myself with a view to telling him he was wrong :p but found it was true.

    Suspecting it was a bug introduced either recently or from the start in rF2, I tested again in rF1 where the HDV comments make it clear that allowing detached ARB (front and rear combined in that game) meant removing the ARB completely. So it was surprising to find detached still means "lowest range setting" and not 0 as expected. "Detached" in the setup seems to just be a name and not related to physics at all. Is this a bug, or does it reflect some limitation in the engine? The latter seems unlikely, as it's surely possible to make the base value 0 without the game falling over.

    Anyway, until further notice the solution in rF2 would appear to be using Special entries to override the base rate for the 0th setting. This would also allow physically removing the ARB and readjusting mass and weight distribution etc through the special entry, though I doubt that's worth it for any normal car!

    Any comments or further knowledge very welcome. I have to say I'm a little disappointed the official comments, which are often the only real reference available, can't be wholly trusted. (obviously disregard if I'm wrong, but please let me know)
     
  2. mantasisg

    mantasisg Registered

    Joined:
    Aug 17, 2016
    Messages:
    2,926
    Likes Received:
    3,876
    To be honest I wasn't totally sure if it was the case, but all the signs showed that it was by very high probability.

    It is unfortunate that official stuff physics are encrypted, so we can't learn from/about latest developments. Also I am not a fan of the "clicks" as annotations for setup settings. For those who know what N/mm means it is big loss, and for those who doesn't, it makes little difference if they get click "1" vs click "2", or "10N/mm" vs "20N/mm" (just as illustration). But that is just design stuff.. as extension to encryption I suppose.

    We have seen how much confusion such inaccuracies of presentation can bring. The most simple fix I can imagine would be to replace "detached" annotation with "minimum" annotation or actual base value if not using the useless "clicks" annotations, but instead using proper "N/mm" annotations.
     
  3. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    If detached isn't a thing, no need for annotation. Just the lowest rate or setting 0/1 or whatever. I suspect it not doing what it says on the tin is a bug, I'm only not totally confident because it seems to have been there forever and I'm surprised it hasn't come up before.

    My own dabbling with modding has generally centred on cars that don't have the option to detach, while a number of mods I've driven I assumed it was working as read - and realistically the difference tends to be minor (the possible values might be 5, 15, 25, 35, with the bottom detached; from a setup point of view stepping down from 15->5 vs 15->0 might not make a whole lot of difference) so you can see why it might not be caught.
     
  4. mantasisg

    mantasisg Registered

    Joined:
    Aug 17, 2016
    Messages:
    2,926
    Likes Received:
    3,876
    I have quite a bit of those on my plate, usually it is possible to find cutaway pictures to get an idea, as well as looking at pictures and seeing how chassis would usually roll.

    To me it is highly doubtful having these cars with that much grip and sensitivity to aero ever having option for detached rear anti-roll bar. Even despite wide track widths, low CG, very stiff springs and very stiff dampers.

    [​IMG]
    I just did quick googling of "GT3 cutaway", looks like pretty massive torsion bar at rear.
     
  5. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    @mantasisg I don't know what that has to do with the thread tbh...
     
  6. mantasisg

    mantasisg Registered

    Joined:
    Aug 17, 2016
    Messages:
    2,926
    Likes Received:
    3,876
    You are right, I have traveled in mind partly to some other thread. But I also think it still hold something up to topic as a subject of how much realtive the antiroll bar stiffness is relative to all the rest of stiffness sources of the vehicle as well as demand of stiffness.

    I think we now are facing other issue of this thread, that it looks more like our dialogue, so I guess it would be best to have someone elses contributions.
     
  7. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    The topic of which cars should or shouldn't be able to detach ARB, and the effect that has on dynamics, is actually pretty interesting and probably pretty complex if you get right into it. But in this thread I'm focused on the fact the game appears to offer the option to override the lowest value to mean detaching the ARB, yet it doesn't work.
     
  8. John R Denman

    John R Denman Registered

    Joined:
    Mar 18, 2018
    Messages:
    512
    Likes Received:
    630
    AudiCutaway1.jpg
    Its been an interesting read.
    The image adds some depth as well.
    Most cockpit adjustable anti-rollbars (ARB) use a flat wide blade mounted in round bushings perpendicular to the end of the torsion bar. There is a cable (not shown) that rotates the blade(s) 90°.

    When turned one way the blade has a taller cross section and is pretty stiff; it won't bend much at all making the torsion bar twist to resist moving the opposing blade. Turn the blades 90° to flat and they bend pretty easy, not at a zero level, but it almost feels like it in the car.

    About 10 years ago, maybe more, Titanium blades and bushing improvements made adjustable ARB's pretty linear compared with 30 years ago. Some even have just one blade that rotates.

    As for "No Bar" settings, with racing dampers at low ARB rate at very low levels its almost like no ARB on many cars.
     
    mantasisg likes this.
  9. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    @John R Denman Again, all very interesting, but not related to the topic.
     
  10. John R Denman

    John R Denman Registered

    Joined:
    Mar 18, 2018
    Messages:
    512
    Likes Received:
    630
    In that case it may be a Divide by Zero defect that impacts other State Machines in the code. That can be like finding a needle in the haystack with code that lacks a State Diagram. I doubt ISI gave S397 a State Diagram based on the struggle with UI development. That's clearly a trial & error process that a State Diagram would have made much easier to develop with.
     
  11. Seven Smiles

    Seven Smiles Registered

    Joined:
    Oct 5, 2010
    Messages:
    1,099
    Likes Received:
    1,152
    Comments that can't be wholly trusted...? I'm shocked I tell you, shocked!
     
    Lazza likes this.
  12. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    Your posts often illustrate your deep knowledge of many facets of vehicle and software development and analysis... but sometimes you really do overthink things.

    Why would you jump to divide by zero? Are you assuming it gives the ARB a 0 value and then something breaks? Or are you thinking the 0 setting is being evaluated incorrectly (or influences some other test) and that leads to wrong results?

    Both theories are disprovable, because:
    • a range of x settings, from 0 to x-1, function correctly (setting 0 works fine)
    • an ARB value of 0 defined explicitly as the base value also works fine.
    All we have here is a range of values, e.g:
    range=(10000,5000,3)
    therefore values = 10000,15000,20000

    Then 'detachable' should give values 0,15000,20000. And replace 0 with "detached" in the UI.

    Instead, it appears to remain 10000,15000,20000. (impossible to test for exact values; but vehicle behaviour follows the scale of values defined in the range, so I'm going to say it's very close to this)

    That's it. It's quite simple. The code dealing with the detached ARB override, the physics-implementation part, isn't working correctly.

    (*personally I'd suspect the actual implementation may be happening, but then some other code is re-initializing the ARB value or even some value verification code [possibly anti-cheat] is replacing the value and isn't aware of the detached option. If I had an extremely early rF1 build I'd be curious if the same happened back then. But this is all just guessing - I think the devs would be able to find it if this is confirmed incorrect behaviour)

    Yeah, it's a little naive! But for most of rF1 and rF2's history, I've often found myself pointing to those comments when people come up with strange theories on how things work... and usually it's safe to trust them. Goes to show: don't trust nobody ;)
     
    Last edited: Feb 10, 2021
  13. John R Denman

    John R Denman Registered

    Joined:
    Mar 18, 2018
    Messages:
    512
    Likes Received:
    630
    Divide by 0 is a common problem among math processing code thats been swapped among developers, particularly when variables are set by one State Machine and used by another. Just tossing it out on the table. Its an old habit from 40+ years of Machine Design and having diverse team to manage to rapidly take a prototype to production. That's how I funded racing FWIW.

    I still have rFactorSetup1255.exe although I believe it has to point to a website that no longer exists to run beyond 59 minutes. I also have one of the original rF1 CD's from 2007 and GT Legends CD which used the rF1 core code.

    Lots of possible anecdotes about how and why. For example, Gjon Camaj and a few developers spent a week at Skip Barber school back at 2009, and at least one of them worked with a Formula Atlantic team for a few weekends. Most Formula Cars of that vintage used blades on the ARB's. "Disconnected" was a common term for when the ARB adjustment lever was turned all the way to flat. Some of the earlier blade systems had detents on the adjustment lever and were an "On-Off" position; these weren't very consistent between On-Off positions and needed detents to keep them from changing from road bumps. So "Locked out" was also a term that became common. The early ones were mainly to give rear grip if the track became wet during a race.

    It was about 2009 when the Bristle Brush concept was hatched, and what lead to rF2 development along with many other upgrades. Hard to say what was going on with the original rF2 code development but thought it might be of some limited interest.

    I haven't found it to be a problem among the cars I use, but I don't drive most of the S397 cars either and every setup I use has some level of ARB set.
     
  14. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    @John R Denman I'm going to leave most of that and just point this out: the standard, unadulterated, hdv comment from rFactor regarding 'detached' - which I think is pretty clear:

    AllowNoAntiSway=1 // Whether first setting gets overridden to mean no antisway bar
     
  15. John R Denman

    John R Denman Registered

    Joined:
    Mar 18, 2018
    Messages:
    512
    Likes Received:
    630
    That's the right starting point for the topic.

    I don't recall if this performed the way you expected, just posting the content after you mentioned rF1. It's also possible that other variable parameters may influence the actions of AllowNoAntiSway.

    From the first ISI release of the Howston for rF1:

    [SUSPENSION]
    PhysicalModelFile=HW_susp.pm
    CorrectedInnerSuspHeight=0.175 // instead of moving inner susp height relative with ride height, use this offset (set to -1 for original behavior)
    ApplySlowToFastDampers=0 // whether to apply slow damper settings to fast damper settings
    AdjustSuspRates=0 // adjust suspension rates due to motion ratio
    AlignWheels=1 // correct for minor unintentional graphical offsets
    CenterWheelsOnBodyX=0 // correct for minor unintentional graphical offsets
    FrontWheelTrack=1.475 // if non-zero, forces the front wheels to be specified track width
    RearWheelTrack=1.475 // if non-zero, forces the rear wheels to be specified track width
    LeftWheelBase=2.334 // if non-zero, forces the left side to use specified wheelbase
    RightWheelBase=2.334 // if non-zero, forces the right side to use specified wheelbase
    SpringBasedAntiSway=0 // 0=diameter-based, 1=spring-based
    AllowNoAntiSway=1 // Whether first setting gets overridden to mean no antisway bar
    FrontAntiSwayRange=(0.026, 0.002, 2)
    FrontAntiSwaySetting=1
    FrontAntiSwayRate=(1.11e11, 4.0) // (base, power), so rate = base * (diameter in meters ^ power)
    RearAntiSwayBase=0.0 // extra anti-sway from tube twisting
    RearAntiSwayRange=(0.014, 0.001, 2)
    RearAntiSwaySetting=1
    RearAntiSwayRate=(1.11e11, 4.0) // (base, power), so rate = base * (diameter in meters ^ power)
    FrontToeInRange=(-0.10, 0.05, 1)
    FrontToeInSetting=0
    RearToeInRange=(0.10, 0.05, 1)
    RearToeInSetting=0
    LeftCasterRange=(3.0, 0.1, 1) // front-left caster
    LeftCasterSetting=0
    RightCasterRange=(3.0, 0.1, 1) // front-right caster
    RightCasterSetting=0
     
  16. Comante

    Comante Registered

    Joined:
    Nov 20, 2013
    Messages:
    1,694
    Likes Received:
    1,218
    Considering this data format:
    All we have here is a range of values, e.g:
    range=(10000,5000,3)
    therefore values = 10000,15000,20000

    ...and the notions John gave us, it is quite probable that they thought about how to detach the ARB as "0" seems can't be an option in the above format, but maybe never implemented the code to make the override work.
    That line to enable or disable the override seems to suggest that writing:
    range=(0,5000,3) is wrong for some reason.
     
  17. Lazza

    Lazza Registered

    Joined:
    Oct 5, 2010
    Messages:
    12,345
    Likes Received:
    6,572
    Honestly at this point I'm not even sure what people are trying to say. First post covers it, if the devs ever want to comment go ahead.
     
  18. mantasisg

    mantasisg Registered

    Joined:
    Aug 17, 2016
    Messages:
    2,926
    Likes Received:
    3,876
    Sometimes (actually often) even extremely simple things get complicated fast for weird reasons :D

    Speakign of complicating simple things :D @Lazza adjusting mass and its distribution with removal of ARB is awesome idea, but indeed complicated and probably wouldn't be worth for many cars. But still interesting indeed. I have done very small research and found that ARB can weight couple kilos. Thats something.

    Anyway using base ARB (minimum) value in rf2 garage and mistakenly thinking that it is removed because interface says so is very simple issue, which has proved to be capable of adding up to massive confusion.
     
    Last edited: Feb 13, 2021

Share This Page