r/F1Game Nov 15 '24

Modding Telemetry app for F1 23 and 24

Hey folks. I built a free and open-source telemetry app supporting F1 23 and 24. This app is designed to run on PC/laptops, but the game can run on any PC or console (just need to setup telemetry correctly).

This app will show several pieces of live/real-time data like best lap, last lap, current ERS mode and battery, current tyre wear, tyre wear prediction, etc.

Also, at the end of the race, you can checkout more detailed info about any driver's race like lap time history, tyre wear history, ERS usage history, etc.

The app is designed to run on a browser tab (web page). I personally run it on my second screen.

Here's a video demo of the app (it is overlayed on top of the game to show how it works in real-time)

Here's the download link (checkout the readme section in github for instructions on how to download and run) https://github.com/ashwin-nat/pits-n-giggles

18 Upvotes

13 comments sorted by

3

u/Ichnusa Nov 15 '24

Love it! Unable to test it out right away. But I have two suggestions if they're not in there already.

  1. Be able to export the data so it can be editable in like Excel or whatever.
  2. For online lobbies (I get there are restrictions on certain telemetry in online situations compared to AI races) some players don't have their telemetry be public and they will just show up as "player". Here comes the suggestions: Could the names of the drivers be editable after the race so when you're checking through the data you could add the correct names and it would populate throughout the data.

Stoked to check this out at a later time. Very cool!

3

u/ashwin_nat Nov 15 '24

As of now, at the end of every race, the data is stored in a JSON file. So it is viewable and editable after the race

1

u/hazukun Nov 15 '24

Really cool project! I wanted to do something similar or on top of some library like this. I'll try it later!

1

u/ashwin_nat Nov 15 '24

You can even use my code as a base/library and build on top of it.

1

u/Sosig28 Nov 15 '24

Out of curiosity, why did you build this when other telemetry tools exist? Is there something this offers that the other tools don't?

4

u/ashwin_nat Nov 15 '24

The main goal of this app was for me to be my own race engineer during my league races. The issue I had with existing apps was that the amount of info bring displayed was too much and I found it hard to read the info while driving in a race. Say you're battling the car ahead of you. You'd want to know their battery level, tyre wear, how much faster/slower they were last lap, etc. I found that these pieces of information were scattered around different pages/menus, which you can't really be navigating while driving a race.

Also I wanted to build a full fledged app on python to improve my understanding of the language.

1

u/Sosig28 Nov 15 '24

Interesting! Looks like it's a success already :)

1

u/Benny_Ciel Nov 25 '24

op is there any way to use it while not being in the lobby? for league races for example

2

u/ashwin_nat Nov 25 '24

I guess you can use hamachi or something equivalent have someone in the lobby forward the telemetry data to the client who is not in the lobby. Though I've not tested this out

1

u/Benny_Ciel Nov 25 '24

Appreciate the fast reply, was testing out telemetry apps for my league races they sometimes ask me to engi when I can't make it to the races and I have no idea how to set it up being outside the lobby

1

u/Saabex Nov 25 '24

I want to make one like it but I don't know much about programming and I wanted to make a project similar to yours but on a smaller scale, where I only need who won the race plus the points I won, who did the fastest lap and how was the leaderboard at the end of the race.

I have a F1 23 League and I want to implement all this in my Discord bot so when the race is over I can send a message to the server about the results.

1

u/ashwin_nat Nov 26 '24

You could take this code base and extend it for your use case (it is open source after all). A JSON file with all these details will be saved at the end of races. This is done in the function postGameDumpToFile in src/telemetry_handler.py. You can probably add functionality to this function to only extract the pieces of info you want and message your discord

0

u/Saabex Nov 27 '24

Maybe I'm too reckless but could you help me to do that?

or at least how could I do it?