1. Do you need support for Assetto Corsa Competizione? Please use the proper forum below and ALWAYS zip and attach the WHOLE "Logs" folder in your c:\users\*youruser*\AppData\Local\AC2\Saved. The "AppData" folder is hidden by default, check "Hidden items" in your Windows view properties. If you report a crash, ALWAYS zip and attach the WHOLE "Crashes" folder in the same directory.
  2. FOR ASSETTO CORSA COMPETIZIONE: If you report issues with saved games, please always zip and attach your entire User/Documents/Assetto Corsa Competizione/Savegame folder!
  3. If your game executable is missing, please add your entire Steam directory to the exceptions in your antivirus software, then run a Steam integrity check or reinstall the game altogether.

DOCS ACC Shared Memory Documentation

Discussion in 'ACC Blog' started by Fernando Barbarossa, Aug 28, 2019.

  1. Tom Shane

    Tom Shane Racer

    If I remember well, AC's shared memory had this type of problems too, but I'm not sure if Kunos ever tried to explain what is the actual problem/reason. Well it could be that the in-game data exhibit the same inconsistencies, but I can imagine it could also be the read/write operations to shared memory lacking any kind of locking/sync, so the other processes sometimes read incomplete page before it is fully written. Dunno. But it is certain working with such a data is a nightmare and the code very soon becomes just a collection of workarounds. :(

    I've already been there when I was creating pCARS Profiler and combined with the lack of support/communication from devs, I swore to myself "never again". :)
  2. f.e.negroni

    f.e.negroni Racer

    To bring some perspective, if you are trying to show real time data from the game then you don’t want to synchronise.
    If you are trying to analyse the data afterwards, unfortunately, yes the issue becomes relevant but only to a certain point.
    Even GPS fitness trackers have to massage the data afterwards as the needs for real time vs logging is very different.
  3. Iko Rein

    Iko Rein Rookie

    Also the spline for Silverstone and Spa does not change from 1.0 -> 0.0 at lap change (as one would expect), but goes like from 9.978 to 9.979 in case of Silverstone and bit less extreme for Spa. So this needs little bit of fixing to make graphs work correctly, if you are basing them on the lap distance.

    In my tool I have also added a "skip" for the packets at lap change. So in your example data, I am skipping the 2 packets in the middle, where lap hasn't changed, but sector has changed. So last packet for prev lap is the 2nd packet, first packet of new lap is the 5th packet. Missing 18ms (or few more packets) of data at the start of lap, typically on straight line, will not ruin the data for analysis.
  4. Tom Shane

    Tom Shane Racer

    I do totally agree. For purposes like motion rigs control, real-time dashboards and similar, the current data are okay. The problems start when you try to reliably detect session and lap start/end (still in real-time). But as I mentioned above, adding simple GUID (like) identifier to every session and properly resetting the data to default values after session end would make things SO MUCH easier.
    Last edited: Mar 16, 2020
  5. Tom Shane

    Tom Shane Racer

    I don't even need sampling rate anywhere near 20ms. And I in the past ended with the exactly same "skip" feature when working with AC. For my purposes I'm fine sampling at 4Hz, but you know, the "skip" workaround is just one of the many that you will need to implement because of the various surprises in the output data.
  6. AndyK70

    AndyK70 Racer

    If you need information about other players and laptimes...
    Eventually this was overlooked:
    Maybe it is not the best to get information only by shared memory access but better to get the information where it can be gathered the best from.
    Data for the players car, session info, etc.: shared mem
    Data for opponents: UDP Remote client

    just a thought :oops:
  7. Berno

    Berno Gamer

    After 8 years of working on my dashboard software and working around each sims unique dirty data I would consider myself to be a "professional data masseur" more than computer programmer by this stage :D
    f.e.negroni likes this.
  8. Doug Duthie

    Doug Duthie Racer

    Is there any chance of getting the tyre wear populated in shared memory? We have the other stats for tyres (pressure/temp) and wear for brakes, so it would be nice to have a complete set
  9. AndyK70

    AndyK70 Racer

    @Doug Duthie it was stated already:
  10. Doug Duthie

    Doug Duthie Racer

    Yes...I know that. I was just asking if it was possible (giving brake wear is reported). It is just one of the things I've been asked to record in ACC Results Companion. If it's not possible or won't ever happen then that's fine, but there's no harm in asking.
    f.e.negroni likes this.
  11. RadstaR

    RadstaR Rookie

    Is ACC_PENALTY_TYPE enum right ?
    Because SPageFileGraphic.penalty returns for driving in wrong way value 22 (undefined) not 18 (ACC_Disqualified_Wrongway). Maybe others are wrong ? For example, ACC_StopAndGo_30_PitSpeeding is right value 10.
    Last edited: Mar 19, 2020
  12. RadstaR

    RadstaR Rookie

    And another problem. SPageFileGraphic.position is not in realtime :(
  13. Tom Shane

    Tom Shane Racer

    Is game reporting SPageFileStatic.aidFuelRate, aidTireRate and aidStability for you guys correctly? I have all assists and realism set to Pro and still I'm getting fuel rate and tire rate as 2.0 and stability as 1.0.

    Edit: This happens only for the first Custom Race Weekend after the game fresh start. This is the settings for the session causing problems.


    Is there a place we can report this issues and somebody will read them? This one seems so empty. :)
    Last edited: Mar 20, 2020
  14. f.e.negroni

    f.e.negroni Racer

    I‘ll check it for you.
    Tom Shane likes this.
  15. Tom Shane

    Tom Shane Racer

    Thanks. I just updated the post, it seems it only happens in a specific scenarios.
  16. Robwarrior

    Robwarrior Rookie

    For external dashboard and lights animations purposes, I'm looking for a reliable way to tell if the car ignition is on or off.
    I looked at most of the available datatpoints with SimHub and couldn't find any obvious one (power or voltage based) or indirectly impacted by the ignition state.
    Any suggestion is welcome please.
  17. df1988

    df1988 Rookie


    I am wanting to get broadcast UDP data using node.js. Could anyone point me in the right direction to learn how to do this? I have looked at the broadcast sdk project in the game but I am still a bit lost.

  18. vthinsel

    vthinsel Rookie

    After the XSim plugin for PS4 I made, I'm willing to make one for ACC.... any updates on UDP support ? Will you drop the previous handshake protocol for a more UDP broadcast style "Project Cars" style ? Have you already defined the UDP structure ?
    Will UDP be supported also on PC ?
    Sorry for so many questions, but starting to get excited to get ACC on consoles :)
    Thanks !
  19. f.e.negroni

    f.e.negroni Racer

    I just tested the scenario as you described.
    I captured the shared memory 50 times a second.
    The result is as expected: fuelaid and tireaid at 1, stability at 0.
    I can send you the binary dump and the CSV output of my program.
    If you want, I can help you: you can run my program (see my signature) in parallel with your app: As long as you capture the physics packet number you can then match the results and validate this for yourself.
    I have a branch "feature/add-more-vars-to-csv-export" I made just for you so you can output those three values just so you can print them.

    Attached Files:

    Tom Shane likes this.
  20. f.e.negroni

    f.e.negroni Racer

    I can't see anything either: switching the engine on and off can be detected (RPMs go from 0 to progressively higher numbers) but the ignition doesn't seem to affect anything.
Similar Threads
Forum Title Date
ACC Troubleshooting ACC Shared Memory Example Apr 23, 2020
Programming Language - Apps - GUI Themes Shared Memory or UDP Reference for ACC ? Sep 13, 2018
Console Lounge Pre-Ordered ACC... then watched my first GT3 race... Today at 5:23 PM
Screens & Videos ACC Mirror Graphics are Reality Today at 2:44 AM
ACC Gameplay detla / predict lap time not accurate Yesterday at 8:34 PM
ACC Online Leagues / Championships room Lookint for ACC Xbox races Saturday at 6:15 PM
ACC General Discussions Happy Birthday ACC Friday at 5:18 PM
ACC Online Leagues / Championships room Square Racing Club - Brazilian ACC League Thursday at 5:56 PM
XBox One Discussions Xbox Pre-Order of ACC - DLC Question Thursday at 5:21 PM
ACC Troubleshooting ACC Freezing momentarily during race Wednesday at 8:42 PM
Controllers and Peripherals Bugs & Issues ACC won't detect my Simucube 2 wheel? Wednesday at 7:14 AM
ACC Hardware Discussions Running ACC with old i5 2500K and Known some truth. Tuesday at 7:35 PM
ACC Multiplayer Create link to join ACC server Tuesday at 3:10 PM
Bug reports My ACC Crashing Tuesday at 10:49 AM
ACC Online Leagues / Championships room ACC BlacktopRacers League on Playstation4 May 25, 2020

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice