Welcome to the Codemasters Forums! Be sure to check the FAQ and Forum Rules before you get started.

F1 2017 D-Box and UDP Output Specification

179111213

Comments

  • cjorgens79cjorgens79 Member Unleaded
    @Hoo, FYI the hulks name is spelt wrong in the drivers list on the first page, it should be Nico Hulkenberg (berg) and not Nico Hulkenburg (burg).
  • HooHoo Member, Codemasters admin
    @Hoo, FYI the hulks name is spelt wrong in the drivers list on the first page, it should be Nico Hulkenberg (berg) and not Nico Hulkenburg (burg).
    Fixed! Thanks.
  • LopenskyLopensky Member Unleaded
    edited October 2017
    Hi, i'm wornking on this UDP telemetry stuff for a PS4 live streaming application.

    At the moment i just want to understand if with the new patch (1.8) some of the listed 'problems' got fixed..
    1. Incorrect telemetry data in spectator mode
    2. UDP transmission stops when player press "option" (or equivalent)
    3. UDP transimission stops at the end of Q session when the player complete his session (even if other drivers still have to complete the session)

    Sorry if this was asked and replied before (or if it is only my fault if i have this issues), i follow this thread but i don't manage to find an answer.  :/

    In case i am simply doing something wrong, hope you can help me find a solution,
    thanks o:)
    Formula Italian Team - Driver & Staffer
    Formula Europe - Staffer

    F1 2018 Beta Tester

    Platform: PS4   -  Games: F1 2016, F1 2017, F1 2018, Assetto Corsa  -  Wheel: T300 GTE & G29
  • HooHoo Member, Codemasters admin
    Some of the changes will require restructuring our UDP system which becomes a more complex task. We are hoping to overhaul this system next year to provide some of the requested functionality.
  • LopenskyLopensky Member Unleaded
    edited October 2017
    Is this a complex way to say that we are not going to have usable UDP data in spectator mode?  :|
    Formula Italian Team - Driver & Staffer
    Formula Europe - Staffer

    F1 2018 Beta Tester

    Platform: PS4   -  Games: F1 2016, F1 2017, F1 2018, Assetto Corsa  -  Wheel: T300 GTE & G29
  • cjorgens79cjorgens79 Member Unleaded
    Lopensky said:
    Is this a complex way to say that we are not going to have usable UDP data in spectator mode?  :|
    I know that Hoo's reply definitely applies to points 2 and 3 in your question, however i am unsure about the spectator mode thing.
  • LopenskyLopensky Member Unleaded
    Lopensky said:
    Is this a complex way to say that we are not going to have usable UDP data in spectator mode?  :|
    I know that Hoo's reply definitely applies to points 2 and 3 in your question, however i am unsure about the spectator mode thing.
    I was quite sure of that too, but the most important point - at least for me - is the first. Since they developed an in-game spectator "hud" showing drivers positions, timings and so on, i was hoping to see the same data coming out via UDP too.. :D

    Mostly because UDP is enabled (packets arriving correctly) but seems to be victim of some kind of non-sense filtering by the game.
    Formula Italian Team - Driver & Staffer
    Formula Europe - Staffer

    F1 2018 Beta Tester

    Platform: PS4   -  Games: F1 2016, F1 2017, F1 2018, Assetto Corsa  -  Wheel: T300 GTE & G29
  • HooHoo Member, Codemasters admin
    All points relate to the same issue. We can't display UDP output when the player isn't driving in the race (i.e. when the motion information isn't active). This includes when pausing the game, entering the garage or spectating. 
  • LopenskyLopensky Member Unleaded
    That's not completely correct since if you are in a MP session and you crash UDP data continues to flow correctly, even if spectating for the rest of the race. Same thing if you are in the box during the qualifying sessions.  :)

    Differently from what is happening when you pause the game, in spectator mode the UDP stream is flowing, but alla data is fixed to 0 value. Even data in "m_car_data" which should always be streamed properly since not related to player specific data but session's one.

    Very sad this could not be fixed at the moment. At least i hope that others reading this will be aware of the problem saving tons of hours of testing on this  ;)
    Formula Italian Team - Driver & Staffer
    Formula Europe - Staffer

    F1 2018 Beta Tester

    Platform: PS4   -  Games: F1 2016, F1 2017, F1 2018, Assetto Corsa  -  Wheel: T300 GTE & G29
  • RichardWagRichardWag Member New Car Smell
    I ve got a question regarding the new UDP data for all vehicles.
    How do you get the continous time distance between the drivers of the CarUDPData? By a SW timer or is it possible to calculate it by the raw data?
  • cjorgens79cjorgens79 Member Unleaded
    I ve got a question regarding the new UDP data for all vehicles.
    How do you get the continous time distance between the drivers of the CarUDPData? By a SW timer or is it possible to calculate it by the raw data?
    You need to calculate it yourself
  • mrdezibelmrdezibel Member New Car Smell
    I ve got a question regarding the new UDP data for all vehicles.
    How do you get the continous time distance between the drivers of the CarUDPData? By a SW timer or is it possible to calculate it by the raw data?
    You need to calculate it yourself

    still no idea how to do this... :(
  • cjorgens79cjorgens79 Member Unleaded
    mrdezibel said:

    still no idea how to do this... :(
    keep track of the times of all vehicles relative to how far they are through the lap at set intervals and then compare them between players to get the deltas
  • mrdezibelmrdezibel Member New Car Smell
    i allready tryed to do so, but the gaps i get do not seem to be right..
  • beterthanlifebeterthanlife Member New Car Smell
    Hi, can you confirm the format used for packing the UDP packet? e.g. pack('c*', $packet)

    I am struggling to decode the data into anything meaningful :(
  • BishmaniaBishmania Member New Car Smell
    edited October 2017
    Hi, can you confirm the format used for packing the UDP packet? e.g. pack('c*', $packet)

    I am struggling to decode the data into anything meaningful :(
    I have this Arduino code:
    int packetSize = Udp.parsePacket();
      if (packetSize)
      {
        // read the packet into packetBufffer
         Udp.read((char *) &f1Packet, sizeof(F1Packet)); 
    }

    f1Packet is the structure on the first post.
    After that I can access values through f1Packet.m_gear etc.
    Post edited by Bishmania on
  • carlucio24carlucio24 Member New Car Smell
    Hi guys,
    I'm developing an f1 simulator, with 4 motors like vesaro simularor https://www.youtube.com/watch?v=0pq9MfXQbg4
    What is the best telemetry values that I should use to move the motors? 
    I have to use m_susp_pos or  m_pitch and m_roll ? these last 2 values are angular positions?

    thank you guys
  • Alex35zombiAlex35zombi Member Unleaded
    I'm developing a telemetry application in C# and I need help to acess CarUDPData
  • trbnbtrbnb Member New Car Smell
    I'm developing a telemetry application in C# and I need help to acess CarUDPData
    Hey, I had problems with this as well yesterday and I figured it out. It's important to set the "Pack"-Property of the "StructLayoutAttribute" to 1.

    I uploaded a simple gist: https://gist.github.com/trbnb/3be0ab648d21e1eb3635ed104e11e741
  • tiagovttiagovt Member New Car Smell
    How I convert CarUDPData, I don't understand stucture CarUDPData. I was able to convert the rest of the data minus CarUDPData
Sign In or Register to comment.