Automobilista 2 Custom Force Feedback - Overview & Recommendations

Discussion in 'Automobilista 2 - General Discussion' started by Karsten Hvidberg, May 30, 2020.

  1. Joaquim Pereira

    Joaquim Pereira Well-Known Member

    Joined:
    Dec 31, 2021
    Messages:
    498
    Likes Received:
    462
    I'm realistic, I guess.
    Why buy a car capable of 230Km/h if you only make 120Km/h in some (a minority) of the roads?
    Because it will accelerate faster, brake better, turn better, have better safety features, usually have more/better confort equipment, etc.

    Why buy a wheel base capable of 20Nm if your are only going to use 10Nm?
    The same reasons!
    Torque is not the same as power, not the same as rotational speed or acceleration, usually are built for life (DD motors are present in most of our home appliances for decades!).

    I bought a 12Nm wheelbase and I'm using it at 50% torque (I want to gradually increase it, but keep inside my safety margins).
    I already notice your files works very well with it, mine don't. With my TS-PC was exactly the opposite and I'm (theoretically) using the same 6Nm max torque... o_O
    If I hadn't more torque available, I would be happy already.
     
    Last edited: Sep 29, 2023
  2. Danielkart

    Danielkart Well-Known Member

    Joined:
    Jun 25, 2021
    Messages:
    1,152
    Likes Received:
    1,207
    As I said, it makes no sense for me personally to drive with such forces of 20Nm or even more. Except for go-karts, because they also experience such forces in reality. And I won't write a scientific study about it or create tables. In the end, I just offered people an additional way to have a good experience with different bases and different customs. And above all, it should be easier. Base is given then select Custom and have fun without having to deal with complicated settings. Whether people like it or not is up to each individual;)
     
  3. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37
    I spent a couple hrs tonight writing a little "dependency analyzer" for `ffb_custom_settings.txt`, that helps make sense of how a variable is directly & transitively used across the ffb file. Written in python, call it as a cli specifying the ffb file name / path + the variable of interest. It spits out all lines that either directly or transitively use the variable, and displays the "dependency chain" of variables leading back to the input variable of interest (highlighted in yellow). Just a fun little thing I'm using to help me understand how a given change might impact things. Would anyone find this useful / interesting? Not sure how useful this is in and of itself, but I think tools to make sense of / help understand how modifications would impact ffb would be neat. If anyone who has spent much time modifying FFB files and has a gut feel for them has feedback on what *would* be useful, that'd be interesting as well.

    `python3 ams2_find_var_depencency_chains.py ffb_custom_settings.txt steerPct`

    upload_2023-9-30_2-0-30.png
     

    Attached Files:

    • Like Like x 4
    • Winner Winner x 1
    • Friendly Friendly x 1
    • Creative Creative x 1
  4. Racinglegend1234

    Racinglegend1234 AMS2 wiki founder AMS2 Club Member

    Joined:
    Jul 28, 2022
    Messages:
    5,787
    Likes Received:
    2,014
    It sounds good and would be nice to have
     
  5. Danielkart

    Danielkart Well-Known Member

    Joined:
    Jun 25, 2021
    Messages:
    1,152
    Likes Received:
    1,207
    Hey PAV!
    There are definitely people who find your work excellent to understand it better.And above all, it brings you something personally - that's the most important thing.I personally don't need it, but I still really appreciate your work.Maybe you could write a custom and publish it in this thread.It would be a pleasure for me
     
    • Like Like x 1
  6. Kuku

    Kuku Flying Kiwi AMS2 Club Member

    Joined:
    Aug 30, 2020
    Messages:
    1,501
    Likes Received:
    962
    could be quite useful, it’s something that a lot of people don’t understand how the custom file flows , I’ve described like this before and will do again.
    The file is like a backwards tree , it has a main trunk that feeds to the roots which is the final output, but it’s variables are the branches, and they are ment to be free of each other and not tangled , so a good tune is a well pruned tree.

    I see a lot of files that have important bits of branches lopped off and others that have extra branches that have no physical connection to the truck , thus have no impact on output , yet placebo dictates that it does . :whistle:

    The main problem I see with this identification code on quick inspection on face value , is some branches that are completely separate can share the same terms , which makes it appear to be a dependency , but it’s not necessarily the correct one . It depends on how high up the trunk they blend in .
     
    • Like Like x 1
    • Funny Funny x 1
    • Informative Informative x 1
  7. Joaquim Pereira

    Joaquim Pereira Well-Known Member

    Joined:
    Dec 31, 2021
    Messages:
    498
    Likes Received:
    462
    It would be nice to have a watch window for some variables (values, graphs, etc.)
    It is a pity AMS2/Madness engine doesn't offer this - let's not forget what "CARS" stood for (Community-Assisted Race Simulator). Right now, it's only possible violating the law and/or ethic/moral concerns.

    We leave the game, change the file, run it again, test, repeat... this is not a method. It's a sacrifice :).
    I had to transpose variables to histogram to see the changes in real time, use in-game dials to adjust several parameters at once and it's still a pain.

    It's a pain to create/adjust custom files and they are essential to AMS2 success.
     
    • Like Like x 1
    • Funny Funny x 1
  8. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37
    This is super useful. I will need to digest this a little bit. As I mentioned, I threw this together pretty quickly precisely because I am new to tinkering with this file and don’t understand it well. The bit about using a tool to validate that variables are actually having an effect on final output is interesting as well.

    Question for you all… numerically, does anyone know what the actual values of final output are, concretely? I also don’t quite yet know these files well enough to understand if there is more than 1 final output, and if so, how do I know what this final output is (just variable names?). I told you I’m a novice .
     
  9. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37
    Totally. Any details on the transpose thing? Also, yeah, it would be the dream to not need to quit the game .
     
  10. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37
    Yes - it definitely brings me something personally! I have a file that I’m having fun with but is likely way too aggressive for most people’s tastes lol. I might share it at some point.
     
    • Friendly Friendly x 1
  11. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37
    You mention every stage needing to be clipping-free. Makes perfect sense. Is there any way for me to understand what these “stages” are? To my novice eye, so far, custom ffb appears as a non-discrete & intricately dependent flow of variables and I haven’t yet spotted such “stages”. But as I’ve mentioned I haven’t spent a whole lot of time understanding these files yet. Thanks much Joaquim!
     
  12. newtonpg

    newtonpg Active Member AMS2 Club Member

    Joined:
    Dec 29, 2018
    Messages:
    670
    Likes Received:
    207
    Nice!
    Although I'm not into develop a Custom (but to use) I do support your effort in a good way.
    More than that, I do believe it is a good way to enhance Customs programming in the near future, specially to better understand and manage inter-dependent variables.
    Develop by feeling is good but you must be a very gifted person to do, like a musician that play by ear without theory knowledge.
    PS: At this moment, Danielkart's v300 fulfill all my needs.
     
    • Friendly Friendly x 1
  13. Gianluca995

    Gianluca995 New Member

    Joined:
    Oct 2, 2023
    Messages:
    1
    Likes Received:
    0


    Kann mir jemanden erklären was der unterscied zwischen V300, V80 V70 etc. ist?

    Bin verwirrt und verstehe nicht was ich runterladen soll.

    Habe eine Moza R12 Base
     
  14. Danielkart

    Danielkart Well-Known Member

    Joined:
    Jun 25, 2021
    Messages:
    1,152
    Likes Received:
    1,207
    V300 is the latest version. The lower the version number, the older the files are
    Regards
     
  15. Dmand

    Dmand Active Member

    Joined:
    Oct 3, 2022
    Messages:
    223
    Likes Received:
    79
    Wow cool, this could be very handy. I have no clue what a good chunk of those values do.
     
  16. Joaquim Pereira

    Joaquim Pereira Well-Known Member

    Joined:
    Dec 31, 2021
    Messages:
    498
    Likes Received:
    462
    By stages I mean:
    1 - results from car physics, adjustable by the game's car specific multiplier (can be bind to keys for fast, real time multplier adjust, varies from 50%-150%)
    2 - FFB script. Can be Reiza default, can be a custom one. Takes variables from 1 and transformes into a compreensive FFB signal.
    3 - GAIN slider - in a simply a multiplier, no other trasnformation done.
    4 - wheelbase driver gain and other transformations (settings, adjustments)

    All four multiplied should be less than 100%. There is a checkpoint after number 3, the histogram in tyre/suspension HUD.
    It's more unlikelly number 4 be responsabile for clipping, but could also happen.
     
    • Like Like x 1
  17. Joaquim Pereira

    Joaquim Pereira Well-Known Member

    Joined:
    Dec 31, 2021
    Messages:
    498
    Likes Received:
    462
    Transpose is just a way to say if I want to watch a variable (and it is necessary to see how formulas are working, specially new ones), I put it in "MyVAR" variable (should vary between 0-1) and then I expose it in the histogram. At the end on my files, you can see some lines commented - while testing, I uncomment those lines and comment the other one:

    #(MyHISTOGRAM (+ 0.5 MyVAR))
    #(histogram MyHISTOGRAM)
    (histogram output)
     
  18. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37

    Aha. This is absolutely the kind of info I needed. I hadn’t gotten too far on tweaking vars (let alone formulas) but obviously needed a way to concretely understand effects of changes and a) I didn’t know the telemetry tool existed and b) that that’s how you expose vals for the hist. Thanks so much for the pointers.

    Btw, I’m assuming this is the best way to see this info, let me know if you have other key tools you used in this process!
    Telemetry Tool for AMS2
     
  19. Michael3

    Michael3 Active Member

    Joined:
    Aug 18, 2023
    Messages:
    140
    Likes Received:
    32
    I don't think there's any ffb info in the telemetry output, even though in game it shares the same hud, but I only glanced quickly.

    Assuming you have some coding knowledge, if you look in C:\Steam\steamapps\common\Automobilista 2\Support\SharedMemory\AMS2_SharedMemoryExampleApp you can see a header file showing what values are in the shared memory / UDP output and an app showing how to get them.
     
  20. Pav

    Pav Member AMS2 Club Member

    Joined:
    Jul 25, 2023
    Messages:
    55
    Likes Received:
    37
    Sweet - I'm a sw eng for a living, that's perfect. I'm just trying to understand what everyone is doing & how... it's a little tough to put together over a 355 page thread :).
     

Share This Page