Jump to content
Bug Reporting - PLEASE FOLLOW RULES AND COMPLETE REPORTS Read more... ×
F1 2020 |NEW PATCH AND DRIVER RATINGS | READ ME!!! Read more... ×

F1 2020 UDP Specification

Recommended Posts

Probably basic question, but on PS4 all the apps I’ve tried just show ‘PLAYER’ when looking at times whilst racing online. Which obviously isn’t hugely useful, is this a limitation, bug or something else?

 

The app I’ve used the most is Race Dash. A friend is using an Android app and apparently shows users as ‘PLAYERxxx’ where xxx is a number. 

Share this post


Link to post
Share on other sites
Posted (edited)
48 minutes ago, MattKB said:

Probably basic question, but on PS4 all the apps I’ve tried just show ‘PLAYER’ when looking at times whilst racing online. Which obviously isn’t hugely useful, is this a limitation, bug or something else?

 

The app I’ve used the most is Race Dash. A friend is using an Android app and apparently shows users as ‘PLAYERxxx’ where xxx is a number. 

If you readed the last 9 posts who will see than there are no name allowed at this time

Edited by ThibaudPHP
fault

Share this post


Link to post
Share on other sites


 

2 hours ago, MattKB said:

The app I’ve used the most is Race Dash. A friend is using an Android app and apparently shows users as ‘PLAYERxxx’ where xxx is a number. 

@MattKB Hi, I make the Race Dash app - is the xxx bit on the name of use for your friend? Each driver has an ID number which I could add to the app but it doesn’t really relate to anything so I’ve ignored it up until now.

Share this post


Link to post
Share on other sites

Oh wow!! Hi! great app btw. 
 

Anything to help identify individual players would be great, thanks. Shame they don’t let you use the gamer tags/ psn id

Share this post


Link to post
Share on other sites
On 7/11/2020 at 3:40 AM, Hoo said:

Thanks for all the feedback so far. We will be going through this next week with the team to identify any bugs that we can fix.

Regarding the player names issue, if anyone can provide examples of other current games that also provide player names through a similar API or output system, that would be very helpful for us to use as reference. 🙂 

@Hoo,

Multiplayer sessions still seem to be buggy when it comes to the player crossing the start finish line. Single player works fine, just online MP is the issue. From memory i think i reported this same issue with F1 2019. If you look at the log of lap/sector changes for a specific player you can see that at the end of the lap the sector number resets back to 1, but the lap number doesn't change immediately. So it briefly looks like the player is restarting the same lap. I would expect that when a player crosses the start/finish line both the lap number and sector number and last lap time should all tick over together in the same frame rather than being spread across multiple frames which is problematic.

F12020_Packet_LapData: P1 - Player 100 -> lap: 14, sect: 1, lastLapTime: 75.387, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 14, sect: 2, lastLapTime: 75.387, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 14, sect: 3, lastLapTime: 75.387, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 14, sect: 1, lastLapTime: 75.387, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 15, sect: 1, lastLapTime: 74.574, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 15, sect: 2, lastLapTime: 74.574, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 15, sect: 3, lastLapTime: 74.574, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 15, sect: 1, lastLapTime: 74.574, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 16, sect: 1, lastLapTime: 74.664, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 16, sect: 2, lastLapTime: 74.664, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 16, sect: 3, lastLapTime: 74.664, invalid: False, inPits: False
F12020_Packet_LapData: P1 - Player 100 -> lap: 16, sect: 1, lastLapTime: 74.664, invalid: False, inPits: False

It does this every lap and for every player in an online MP session (unsure about AI, but definately for human players).
 

Cheers

Share this post


Link to post
Share on other sites

Hi All,

just a info about ERS Mode, in documentation we have:

uint8       m_ersDeployMode;            // ERS deployment mode, 0 = none, 1 = medium
                                            // 2 = overtake, 3 = hotlap

In game on HUD, we have:
0 = none
1 = medium
2 = hotlap
3 = overtake

So, i think that UDP data must be the same to game.

Share this post


Link to post
Share on other sites

First thing: Please get the Player name thing sorted out. As others said other racing sims have been doing this for years... There's absolutely no personal information connected to this, especially on Steam you can change your name and imitate other people without any problems. This is really ridiculous.

Apart from this I could find some missing/wrong information in your docs:

1.) Historic teams missing in the Team IDs:

  • 63: Ferrari 1990
  • 64: McLaren 2010
  • 65: Ferrari 2010
2.) VisualTyreCompound values for F2 differ from F1
In the Car Status Package the comments mention "F2 – same as above" for VisualTyreCompound. But I found that is not true - when driving F2 I got 19 for supersoft and 21 for medium, so this can't be correct. Maybe you can find and add the correct values here.

Share this post


Link to post
Share on other sites

still no delta time driver ahead/behind?

Share this post


Link to post
Share on other sites
2 minutes ago, Bexas said:

still no delta time driver ahead/behind?

take the time to read the others posts next time

 

 

Share this post


Link to post
Share on other sites
22 hours ago, e1smann said:

First thing: Please get the Player name thing sorted out. As others said other racing sims have been doing this for years... There's absolutely no personal information connected to this, especially on Steam you can change your name and imitate other people without any problems. This is really ridiculous.

Apart from this I could find some missing/wrong information in your docs:

1.) Historic teams missing in the Team IDs:

  • 63: Ferrari 1990
  • 64: McLaren 2010
  • 65: Ferrari 2010
2.) VisualTyreCompound values for F2 differ from F1
In the Car Status Package the comments mention "F2 – same as above" for VisualTyreCompound. But I found that is not true - when driving F2 I got 19 for supersoft and 21 for medium, so this can't be correct. Maybe you can find and add the correct values here.

+1 for the second point. I had to get those myself in the previous game and both the actual and visual compounds differed between F2 2019 and F2 2018.

Share this post


Link to post
Share on other sites

@Hoo, 

What does the value of 7 represent in m_resultStatus? This was asked during beta but I dont think we got an answer for it. I am seeing it in my data after retiring, but there is already another value for retired so it would be nice to know its true meaning.

 

Share this post


Link to post
Share on other sites

@Hoo

I was doing some testing/telemetry recording in a multiplayer Race. At the end of the race session i got an End Session event, but I never got the Final Classification information. The qualifying session worked fine. Now in the race i retired my car at about 2/3rd's race distance and spectated the remainder of the race and let it finish properly and give me the results on screen, so its quite possible that this issue is only occuring because I (the player) didn't actually finish the race by crossing the start/finish line due to my early retirement.

Share this post


Link to post
Share on other sites
On 7/10/2020 at 9:40 PM, Hoo said:

Thanks for all the feedback so far. We will be going through this next week with the team to identify any bugs that we can fix.

Regarding the player names issue, if anyone can provide examples of other current games that also provide player names through a similar API or output system, that would be very helpful for us to use as reference. 🙂 

Hoo,

One more note. What you have now there in the LobbyPacket, you could easily be used. I see two ways_

  1.  You add to the data an id field, which is the same Id the players have in the other packets. This way the developers can then match the name with the data using the id.
  2. Or keep the lobby packet in the same order as the other packets, i..e. if a person is at index 0 in lobby packet, then that persons data is in other packets also at index 0.

Cheers.

Share this post


Link to post
Share on other sites

@Hoo

You told us last week than you will work to identify and fix some bugs this week. Any news ?

Regards

Share this post


Link to post
Share on other sites

what are optimal temperature all compounds?

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)

The values for F2 compounds are incorrect (they were incorrect in 2019 as well)

Actual compounds:

11 = super soft, 12 = soft, 13 = medium, 14 = hard, 15 = wet

Visual compounds: 

15 = wet, 19 = super soft, 20 = soft, 21 = medium, 22 = hard
Edited by gparent
  • Agree 2

Share this post


Link to post
Share on other sites
29 minutes ago, ThibaudPHP said:

@hoo

there are a new patch, do you have some news for telemetry ?

Sorry - we have not managed to get to this yet. Unfortunately, there are a couple of other issues that the team has had to look at. We will try and get to this as soon as we can.

  • Agree 3

Share this post


Link to post
Share on other sites
Posted (edited)

Hello. Sorry for the noob question, I haven't done any coding for about 4 years and it doesn't help I'm learning a new language, but seeing as it's a personal project using F1 Telemetry, I thought this would be the best place to ask.

So I have access to all of the data and I have figured out how to display most of it, but only in random, useless ways. My question is, how do I display the data from a certain position. For example, let's say I want to display the name or lap time of the driver in first place, how would I do that? Is there a way to access the data for a specific position, or does that have to be worked out, and if so, how? Any help will be appreciated

Edited by DiGawd

Share this post


Link to post
Share on other sites
4 minutes ago, DonWinston said:

Hello. Sorry for the noob question, I haven't done any coding for about 4 years and it doesn't help I'm learning a new language, but seeing as it's a personal project using F1 Telemetry, I thought this would be the best place to ask.

So I have access to all of the data and I have figured out how to display most of it, but only in random, useless ways. My question is, how do I display the data from a certain position. Let's say I want to display the name of the driver in first place, how would I do that? Is there a way to access the data for a specific position, or does that have to be worked out, and if so, how? Any help will be appreciated

the data came with the packet :

read the part : How often are updated packets sent?

----

For the nickname, you will have only Player X (X -> 0 to 19) at this time. I invite you to read the spec 2017 2018 2019 and page 4/5/6 here. You will understand the "problem".

 

 

Share this post


Link to post
Share on other sites

I'm not sure if this is what he meant. In my Go telemetry program I store all the information I get from the game and build my own arrays from that. These are then sorted by the CarPosition property and from there you can access any information of the driver in the specific spot.

  • Agree 1

Share this post


Link to post
Share on other sites
22 hours ago, DiGawd said:

Hello. Sorry for the noob question, I haven't done any coding for about 4 years and it doesn't help I'm learning a new language, but seeing as it's a personal project using F1 Telemetry, I thought this would be the best place to ask.

So I have access to all of the data and I have figured out how to display most of it, but only in random, useless ways. My question is, how do I display the data from a certain position. For example, let's say I want to display the name or lap time of the driver in first place, how would I do that? Is there a way to access the data for a specific position, or does that have to be worked out, and if so, how? Any help will be appreciated

When you receive the LapData packet, loop over the vehicles and use the m_carPosition member to determine who is first. I store that in a list that I create beforehand.

In Python:

positions = [*range(22)]

def _car_lap_data(lap_data_packet):
    for vehicle_index, vehicle_lap_data in enumerate(lap_data_packet.lapData):
        positions[vehicle_lap_data.carPosition - 1] = vehicle_index

# positions[0]'s value is the vehicle index of the pole position.
# positions[1] is 2nd place's vehicle index

 

  • Agree 2

Share this post


Link to post
Share on other sites

So does F1 2020 finally allow more than 1 telemetry input in UDP? in all previous versions I have not been able to run fanalab and my transducers at the same time.

Share this post


Link to post
Share on other sites

I think I have noticed an issue in the Final Classification packet.

When I start a Grand Prix race, drive a bit and then end the session I am shown as DNF in the game, but the result status is 4, which is documented as disqualified. So either the docs are wrong (like the undocumented result of 7) or the wrong result is sent.

Share this post


Link to post
Share on other sites

Why aren't the player names send through the participant or lobby info packets? It just shows 'Player' instead of the steam Id. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×