[REL] TinyPedal - open source overlay APP for rF2 (Radar,Pedal,FFB,Deltabest,Relative,Fuel calculator)

Discussion in 'Other' started by svictor, Mar 14, 2022.

Tags:
  1. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    It is not a bug.

    The damage reported by API is not 100% synchronized with in-game MFD damage HUD. Sometimes it will show damage that in-game HUD doesn't, other times it will not show damage that in-game HUD does. It's another limitation of game's API. (if you want to know how it work, it is the mDentSeverity value in API)
     
  2. DanRZ

    DanRZ Registered

    Joined:
    Aug 22, 2021
    Messages:
    723
    Likes Received:
    222
    Hello, i have noticed the car name is totally wrong, we get the description of the car like "AF Corse #05".
    The shared memory doesn't registers the CarType and CarName properly as we see in Results xml files (logs).

    There is a workaround : The Rest API.

    When game is started, if you call :
    > http://localhost:5397/rest/race/car for rFactor2 (You Need to be in "SELECT SERIES" menu)
    > http://localhost:6397/rest/sessions/getAllAvailableVehicles?api_key=type for LMU
    You get the full list of cars ...

    An example of one car in the full list for LMU :
    Code:
      {
        "classes": "Hypercar Porsche_963",
        "classesOverride": "",
        "desc": "5 Porsche Penske Motorsport:EC",
        "engine": "Porsche 9RD 4,593 cc V8 twin-turbocharged",
        "fullPathTree": "WEC 2023, Hypercar, Porsche 963",
        "fullTeam": "Porsche",
        "id": "5_PORSCHEW4B6208F8",
        "isOwned": true,
        "liveryName": "WEC #1",
        "manufacturer": "Porsche",
        "number": "5",
        "premID": 999998,
        "sig": "d638c84057c9838ca6768423cefa69d8b1927f0505690c3267ccb911652ad68b",
        "team": "Porsche Penske Motorsport",
        "teamFounded": "",
        "teamHeadquarters": "",
        "vehFile": "F:\\Steam\\steamapps\\common\\Le Mans Ultimate\\Installed\\Vehicles\\Porsche_963_2023\\1.01\\5_PORSCHEW4B6208F8.VEH",
        "vehicle": "5 Porsche Penske Motorsport:EC 1.01"
      },
    The Name we get in the Shared Memory is the "desc" data we get by the API.
    It is probably possible to revert the data and get the "manufacturer"
    and also deduce the car name with some formula on the "classes" data or "fullPathTree".

    If so, we should be able to manage some kind of database and get the brand, and car name we don't have properly by the Shared Memory plugin.

    Just an idea of an interesting evolution in TinyPedal. A new module for car database ?

    At this point the Car description is not really useful in TinyPedal, too long to show in relatives or standings.
    That database from the rest api of the game would help displaying the brand with a logo or a letter like Tyres.

    ;)

    PS : TinyPedal works really very well with LMU :)
     
    Last edited: Mar 21, 2024
    Seven Smiles and svictor like this.
  3. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    Thanks, those suggestions are great.

    Currently I really don't have the time and strength(having a little healthy issue) to work on the APP, so it will be a while before I can work on it again. Happy driving.
     
    MMartin, Rui Santos, Reiche and 3 others like this.
  4. Corti

    Corti Registered

    Joined:
    Sep 29, 2014
    Messages:
    1,364
    Likes Received:
    2,536
    take care mate
     
    MMartin, Reiche and svictor like this.
  5. elgagon

    elgagon Registered

    Joined:
    Dec 21, 2022
    Messages:
    213
    Likes Received:
    139
    Take care of yourself
     
    Reiche and svictor like this.
  6. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    Thank you guys for your supports. Here is the new update with bunch of recently requested features:

    2.9.0 (2024-03-04)
    https://github.com/s-victor/TinyPedal/releases/tag/v2.90
    [​IMG]
    • [New]Vehicle Brand Editor (feature requested by @DanRZ)
      • Added a new Vehicle Brand Editor,
        which can be used for substituting vehicle names
        with custom vehicle brand names.
        The new editor supports functions including:
        import, add, sort, batch rename, reset.
        The import function allows user to import
        vehicle JSON data file that exported from game API.
        See "Brands preset" section in user guide for details.
    • Flag Widget (feature requested by @francescodg)
      • [New]Added "show_pit_request" option,
        which shows pit request state.
      • [New]Added "show_finish_state" option,
        which shows finish or disqualify state.
    • Relative Widget (feature requested by @DanRZ)
      • [New]Added "show_vehicle_brand_as_name" option,
        which shows vehicle brand name instead of vehicle name.
        Vehicle brand names are defined in "brands.json" file in "Settings" folder.
        If brand name does not exist, vehicle name will be displayed instead.
    • Standings Widget (feature requested by @francescodg)
      • [New]Added "show_best_laptime" option,
        which shows driver's session best lap time.
        This option is disabled by default.
        Note: when this option is disabled,
        the other "show_laptime" option will
        show best lap time in none-race sessions.
      • [New]Added "show_vehicle_brand_as_name" option,
        same as Relative Widget.
    • Tyre carcass Widget
      • [New]Added "show_rate_of_change" option,
        which shows carcass temperature rate of change for a specific time interval.
      • Added "rate_of_change_interval" option,
        which sets time interval (in seconds) for rate of change calculation.
        Default is 5 seconds.
      • Added "layout" & "column_index_*" options.
    • Shared memory API Config
      • Added "character_encoding" option,
        which sets character encoding for displaying text in correct encoding.
        Default encoding is "UTF-8", which fixed some wrong text in LMU game.
        Note, "UTF-8" may not work well for some Latin characters in RF2,
        try use "ISO-8859-1" instead.
    • Misc
      • "brands" filename is now reserved for vehicle brands preset.
      • Added "Brands preset" section in user guide.
      • Updated Shared memory API, Flag, Relative, Standings,
        Tyre carcass Widget entries in user guide.
      • Updated README info for LMU.
    ---------------------------------

    How to import vehicle brand data:

    1. Start game(LMU), then open following link in web browser:
    http://localhost:6397/rest/sessions/getAllAvailableVehicles

    2. Click "Save" button which saves vehicle data to JSON file.

    3. In TinyPedal, open "Vehicle brand editor" from Config menu.

    4. Click "Import" button and select the JSON file that saved from previous step. Click "Save" button and done.

    [​IMG]

    Additional note:
    Does importing works for RF2? in theory yes, but RF2 has far more vehicle mods and complexity, so currently this importing feature may not work for RF2.

    ---------------------------------

    User guide update:
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#brands-preset
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#shared-memory-api
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#flag
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#relative-1
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#standings
    https://github.com/s-victor/TinyPedal/wiki/User-Guide#tyre-carcass-temperature
     

    Attached Files:

  7. doublebidule

    doublebidule Registered

    Joined:
    Apr 2, 2023
    Messages:
    20
    Likes Received:
    6
    merci beaucoup victor
     
    svictor likes this.
  8. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    Here is another feature requested by @DanRZ
    https://github.com/s-victor/TinyPedal/releases/tag/v2.9.1

    [​IMG]

    2.9.1 (2024-03-04)
    • Relative Widget
      • Added "driver_name_align_center" & "vehicle_name_align_center" options,
        which align driver or vehicle name in the center when enabled.
        Default is left alignment when disabled.
    • Standings Widget
      • Added "driver_name_align_center" & "vehicle_name_align_center" options,
        same as Relative Widget.
    • Misc
      • Updated Relative, Standings Widget entries in user guide.
     

    Attached Files:

    BenZ_67, Jonathan07, Corti and 2 others like this.
  9. DanRZ

    DanRZ Registered

    Joined:
    Aug 22, 2021
    Messages:
    723
    Likes Received:
    222
    Another great update. Thanks for the fast reaction.
    Really awesome.
     
    svictor likes this.
  10. Jonathan07

    Jonathan07 Registered

    Joined:
    Dec 13, 2023
    Messages:
    8
    Likes Received:
    9
    Thanks for the work.
    It's possible to create a mini standings ?
    Just with two drivers in front and two drivers behind.
    Wouldn't it be easier for you?
     
    Last edited: Mar 4, 2024
    svictor and DanRZ like this.
  11. elgagon

    elgagon Registered

    Joined:
    Dec 21, 2022
    Messages:
    213
    Likes Received:
    139
    Hope you feel better @svictor
    P.S. Looking what you've done being ill, i'm sure you're better.
    Thanks
     
    ebeninca, svictor and DanRZ like this.
  12. DanRZ

    DanRZ Registered

    Joined:
    Aug 22, 2021
    Messages:
    723
    Likes Received:
    222
    Hope you feeling well too ;)

    I have found how to get the json for rFactor 2.
    It's the same way but you need to be in SinglePlayer and choose "ALL TRACKS AND CARS"
    and then use the link : http://localhost:5397/rest/race/car

    However, the import in TinyPedal didn't worked. The structure is different and there is a version added at end of "name" we need to remove in order to work properly.
    ( "name": "#01 Jakub Kowalski 1.46" ), needs to be modified in ( "desc": "#01 Jakub Kowalski", )
    I also renamed "name" to "desc" and cut it to a few files and it worked.

    The files are here : http://www.danrazor.net//rF2/TinyPedal/ (Also for LMU).

    ;)
     
    svictor likes this.
  13. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    Edit: just managed to solve performance issue with parsing large set of vehicle data. It will likely be included in next small update with full brand import support in RF2.
     
    Last edited: Mar 5, 2024
  14. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    Like I already said, it is on todo list. A new widget requires a new proper design & features. The work required to make a new widget is more then just simply coping code from "A" to "B", it is not as EASY as you might think.
     
  15. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    v2.9.2 - Add vehicle data import support for RF2
    https://github.com/s-victor/TinyPedal/releases/tag/v2.9.2

    This update now adds vehicle data import support for RF2 thanks to @DanRZ for his suggestion. TinyPedal can now also handle larger amount vehicle data set.

    How to import vehicle brand data for RF2:

    1. Start RF2, then open following link in web browser:
    http://localhost:5397/rest/race/car

    2. Click "Save" button which saves vehicle data to JSON file.

    3. In TinyPedal, open "Vehicle brand editor" from Config menu.

    4. Click "Import" button and select the JSON file that saved from previous step. Click "Save" button and done.
    [​IMG]

    New table based editor:
    [​IMG]
     

    Attached Files:

    BenZ_67 and DanRZ like this.
  16. svictor

    svictor Registered

    Joined:
    Jan 20, 2019
    Messages:
    936
    Likes Received:
    6,373
    v2.9.3 - Rivals Widget
    https://github.com/s-victor/TinyPedal/releases/tag/v2.9.3

    Here is another update with feature requested by @Jonathan07.
    [​IMG]

    The new Rivals Widget will show opponent time interval ahead & behind local player from same vehicle class, and many other info similar to Standings Widget. Note, Rivals Widget will only show valid opponent ahead or behind, and hide opponents who are not exist.

    All recently requested features (implementable) are now fulfilled, I know I'm updating too much, so this will be the last update for a while (until there are most significant changes to come).

    Lastly, if anyone wish to make feature requests or report issues, remember you can do so by open an issue on github issue ( https://github.com/s-victor/TinyPedal/issues ), this way it will ensure that your requested features or reported issues won't be missed.

    https://github.com/s-victor/TinyPedal/wiki/User-Guide#rivals
     

    Attached Files:

    • v293.png
      File size:
      129.7 KB
      Views:
      359
    BenZ_67, marmagas, Jonathan07 and 6 others like this.
  17. francescodg

    francescodg Registered

    Joined:
    Nov 20, 2023
    Messages:
    10
    Likes Received:
    3
    Great, thank you :):)
     
    svictor likes this.
  18. Jonathan07

    Jonathan07 Registered

    Joined:
    Dec 13, 2023
    Messages:
    8
    Likes Received:
    9
    Your responsiveness is impressive. ;)
    Thanks for the big work.
     
    BenZ_67, svictor and DanRZ like this.
  19. DanRZ

    DanRZ Registered

    Joined:
    Aug 22, 2021
    Messages:
    723
    Likes Received:
    222
    Everything works properly on rFactor2 and LMU. Impressive reponsiveness for sure ...

    I will try to use GitHub next time ;)
     
    BenZ_67, svictor and Jonathan07 like this.
  20. ebeninca

    ebeninca Registered

    Joined:
    Sep 7, 2016
    Messages:
    742
    Likes Received:
    537
    Jezzz, svictor is on fire, amazing.

    Dan Suzuki is using on LMU, the guy did a video explaining how to install.

     
    Last edited: Mar 6, 2024
    svictor and Corti like this.

Share This Page