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. Do not post "I have the same issue" in an existing thread with a game crash, always open your own thread. Do not PM developers and staff members for personal troubleshooting and support.
  2. As part of our continuous maintenance and improvements to Assetto Corsa Competizione we will be releasing small updates on a regular basis during the esports season which might not go through the usual announcement process detailing the changes until a later version update where these changes will be listed retrospectively.
  3. If ACC doesn't start with an error or the executable is missing, please add your entire Steam directory to the exceptions in your antivirus software, run a Steam integrity check or reinstall the game altogether. Make sure you add the User/Documents/Assetto Corsa Competizione folder to your antivirus/Defender exceptions and exclude it from any file sharing app (GDrive, OneDrive or Dropbox)! The Corsair iCue software is also known to conflict with Input Device initialization, if the game does not start up and you have such devices, please try disabling the iCue software and try again. [file:unknown] [line: 95] secure crt: invalid error is a sign of antivirus interference, while [Pak chunk signing mismatch on chunk] indicates a corrupted installation that requires game file verification.
  4. When reporting an issue with saved games, please always zip and attach your entire User/Documents/Assetto Corsa Competizione/Savegame folder, along with the logs and the crash folder (when reporting related to a crash).

DOCS ACC Shared Memory Documentation

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

  1. Doug Duthie

    Doug Duthie Hardcore Simmer

    I derive the duration from graphics.sessionTimeLeft.

    When I try your scenarios:

    Case 1
    upload_2021-12-16_7-34-44.png

    Case 2
    upload_2021-12-16_7-37-2.png
    Case 3
    upload_2021-12-16_7-38-41.png

    Case 4
    upload_2021-12-16_7-40-26.png

    So, it looks like you are correct - it looks like the numbers in shared memory are incorrect

    @Ensi Ferrum - can you confirm if the PitWindowxxxx are incorrect or if they take into account other times?

    Thanks
    Doug
     

    Attached Files:

    Last edited: Dec 16, 2021
    Paul Revival likes this.
  2. Paul Revival

    Paul Revival Rookie

  3. Kai Sforza

    Kai Sforza Rookie

    It looks like even this PDF thinks the Porsche 718 is a rear-engine car. The 911 is the rear-engine one, the 718 is their line of mid-engine vehicles.

    upload_2022-1-26_9-9-43.png
    [​IMG]
     
  4. TheBigO

    TheBigO Racer

    @Kunos - another year, another try:

    I am the author of a very sophisticated, AI-based simulator companion (see https://www.assettocorsa.net/forum/...for-acc-pitstop-mfd.68024/page-6#post-1207221), which is in widespread use in the community. Part of the software suite is "Race Center", a tool for endurance teams to handle all race duties incl. planning and remote control of a pitstop by team members not currently driving.

    The implementation for pitstop control in ACC is somewhat cumbersome, at least in contrast to other simulations.

    1. First, the information about the current state of the Pitstop MFD is incomplete (the repair settings are missing from the shared memory).
    2. The state of currrently selected or available options (tyre change Yes/No, brake change Yes/No, Change Driver, etc.) is missing from shared memory. To overcome this, I use an image recognition algorithm, which is, at best, error-prone and not easy to configure.
    3. Last, but not least, it is only possible to change the settings in the Pitstop MFD by placing keyboard commands into the command queue of ACC, which is also not the best of all methods. A real API would be much more safe to use.

    It would be so great, if you support a mush more sophisticated pitstop API in one of the next releases. I can support the development by writing a specification and also running all necessary tests.

    Just my dream for 2022!
     
    Seven Smiles, expor, Mattze and 3 others like this.
  5. Koreldan

    Koreldan Rookie

    Are there any shared memory datas usage limitations ?
     
  6. Jim Britton

    Jim Britton Hardcore Simmer

    there are no limitations on shared memory usage.

    Regarding the pit window stuff, it's definitely wrong. It matches what you set in the session options only if you skip practice and qualifying. As far as I know there's no way to derive these values from the other data.
     
    detoit likes this.
  7. Koreldan

    Koreldan Rookie

    Do you know if those data are out of Eula conditions so free to be reused for any commercial/open source users purposes ?

    Are those data somehow user property ? so users that generate them by playing the game are free to share and elaborate as they like untill Kunos openly keep sharing them ?
     
    Last edited: Feb 22, 2022
  8. Jim Britton

    Jim Britton Hardcore Simmer

    I've never sat down and thought about it. As far as I know, the data exposed by the game's own APIs can be used by 3rd party applications which may be commerical. But there may be limits on the sharing, persisting and distributing of those data which are imposed by individual states (like the GPDR laws here in the UK). I have no idea if any of the data exposed or the data structures themselves represent protected intellectual property. What are you planning do with it?
     
  9. Koreldan

    Koreldan Rookie

    Shared Memory is a temporary memory into computer RAM, so technically can't be called API since you don't interrogate the game software to get them rather you are accessing your own computer memory where programs put data temporarily.

    Since Shared Memory can be shared as readable only, crypted, readable and writable or none of both... those data seems there free to use.

    So i guess game conveniently make them unencrypted readable-only to be read from others applications freely.


    So the question is if those data can be freely saved/persisted and reelaborated to make 3rd party derivative services or there are rules/limitations about how those data can be manipulated or reused.
     
    Last edited: Feb 22, 2022
  10. Nuu

    Nuu Gamer

    The legal department will be in touch shortly
     
  11. Koreldan

    Koreldan Rookie

    The doubt is about if eventual 3rd party application will help/ask users to manipulate their data, like a reelaboration of a user's text document content generated by a software or if those data still be intellectual property of the software whose generated them ( the content of a text document still be property of the application whose generate them) .


    Since among readable datas there are also global coordinates, i guess one is not allowed to use them for derivative works, since could infringe software intellectual property.

    Whereas for example throttle inputs are data genereted by users' inputs on own peripherals.


    The doubts about the possibility of limitations about the data usage, comes from readable global coordinates data presence among data.

    Assuming that global coordinates can't be used for derivative work nor be persisted, are the others datas intended to be users' generated content as a user's game session conditions photograph free to be persisted and reelaborated ?


    Anyone bumped in this doubt either ? Are there documents that clarify these aspects somewhere ?
     
  12. Jim Britton

    Jim Britton Hardcore Simmer

    Lots of people have been making (and in many cases charging for) applications that use this data for years without this being an issue, why are you so concerned about it?
     
  13. Koreldan

    Koreldan Rookie

    Just doubts before starting any development
     
  14. Koreldan

    Koreldan Rookie

  15. Koreldan

    Koreldan Rookie

    Is it allowed by Kunos to save data read using ACC Shared Memory ?
     
  16. Mattze

    Mattze Gamer

    Referring to the EULA, I understand that the data you record and read from the shared memory by yourself is yours and you can do with it whatever floats your boat. If you or someone else use it for commercial purposes, only your permission is necessary. Of course, what you're not allowed to do, is to use the data to reverse engineer ACC. The GPDR only applies when personal data is involved. I highly doubt that your throttle input or tire pressure constitute personal data.

    Another question is, why should Kunos forbid commercial use of the data? After all, they have an interest in having their simulation supported by more 3rd party tools, I would say.
     
  17. Jim Britton

    Jim Britton Hardcore Simmer

    Any chance of an update on the pit window open / close time bug? The values for these fields are only correct if you skip practice and qualifying. I don't think there's a way to reliably work out what they should he based on other available data so they're a bit useless at the moment :(
     
    detoit likes this.
  18. Jim Britton

    Jim Britton Hardcore Simmer

    Ahhhh, lightbulb moment with the pit window. When you set a pit window the value of (accStatic.PitWindowEnd - accStatic.PitWindowStart) is always correct. This is calculated for the first session in the weekend and remains fixed throughout the weekend. The issue here is that it's centred around the mid-point of the first session (even if it's not a race session).

    So if you have a 10 minute practice and a 1 hour race with a 30 minute pit window, that 30 minute pit window will have it's middle in the middle of the first session (the mid-point of the pit window is aligned with the mid-point of the first session). So in this example window start will be - 10 minutes and the end will be 20 minutes. That gives a 30 minute window which is centered in the first session.

    So to get the correct start and end of the pit window in the race you just need to do this:

    calculatedWindowLength = gameProvidedWindowEnd - gameProvidedWindowStart
    correctWindowStart = (sessionLength - calculatedWindowLength) / 2
    correctWindowEnd = correctWindowStart + calculatedWindowLength

    if calculatedWindowLength < 0 then there's no pit window. Note that gameProvidedWindowStart can be negative (or zero), gameProvidedWindowEnd can be greater than the session length.

    Also, as far as I know there's no fixed field that contains the total session length (unless I'm missing it) so this calculation relies on you getting hold of the sessionLength somehow. I do this by saving the sessionTimeRemaining value at the start of a session. Of course, this means that my pit window hack will be tripped up if the player starts a race mid-session from the pit lane
     
    Last edited: Feb 27, 2022
    detoit and RadstaR like this.
  19. Ensi Ferrum

    Ensi Ferrum Racer

    Shared Memory Documentation is updated in first post.
     
    RadstaR, Berno and Rolz like this.
  20. Ryan Rennoir

    Ryan Rennoir Gamer

    Wasting your time, I and many other asked many times for more data / change.
    The same thing as you pit stop mfd information for pyaccengineer and acc drive :rolleyes:

    Give up on kunos, you are just talking at a wall here :D
     
    expor, Rolz and TheBigO like this.
Similar Threads
Forum Title Date
ACC Physics Differentiate AC and ACC Shared Memory With Different Naming. Jan 3, 2024
ACC Troubleshooting ACC Shared Memory: AC version still reports 1.7 Apr 19, 2023
ACC Troubleshooting ACC Shared Memory Example Apr 23, 2020
Programming Language - Apps - GUI Themes Shared Memory or UDP Reference for ACC ? Sep 13, 2018
ACC Multiplayer ACC dedicated server race start hangs, but only on Nordshleife Saturday at 6:06 PM
ACC Troubleshooting Access violation on game startup . The UE4-AC2 game has crashed Apr 11, 2024
ACC Multiplayer ACC Server Setting Apr 7, 2024
ACC Troubleshooting RealtimeCarUpdate.Heading/Yaw removed from ACC Broadcast UDP in favor of WorldPosZ/Elevation? Apr 4, 2024
ACC Multiplayer Missing information in ACC Server Admin Handbook Version 1.10.0 Apr 3, 2024
ACC Physics ACC inconsistensies should be addressed for the future of the game. (Ex: Braking mechanics & tracks) Apr 3, 2024
ACC PS4/PS5/XB1/XBX/S General Discussions ACC chrashed started Race in carriere modus Apr 2, 2024
Bug reports acc fov bug Apr 2, 2024
ACC Troubleshooting ACC 1.10.0 crash Nurb Nordschleife Apr 1, 2024
ACC PS4/PS5/XB1/XBX/S General Discussions ACC Will it get cross party not just cross play on consoles? Mar 23, 2024
ACC Physics Does ACC not implement real life braking mechanics?(Need some insights on this recent youtube video) Mar 16, 2024

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