Giter Site home page Giter Site logo

chinaxxp / dirt3telemetrydisplay Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sztorm/dirt3telemetrydisplay

0.0 0.0 0.0 2.2 MB

A display for variables sent by DiRT 3 telemetry feature which bases on UDP communication.

License: MIT License

C# 100.00%

dirt3telemetrydisplay's Introduction

Dirt3TelemetryDisplay

A display for variables sent by DiRT 3 telemetry feature which bases on UDP communication.

Description

The main purpose of the program is to discover what variables the game can provide and show them changing during the gameplay. Information of each variable byte-offset of UDP packet which is sent by the game can be especially useful for DIY projects such as custom speed-o-meter or additional display with UI information from the game to keep the main screen clean.

Note that the names of the variables are guessed from various sources such as gameplay, telemetry documentation for newer DiRT games and so on, so they may not be 100% accurate as I could not find any official documentation of telemetry output for DiRT 3.

Instruction

Show instruction steps
  • On application launch, the main window should look like this:

    screenshot-instruction-01

  • UI update interval slider can be used to adjust how often the variable fields will be updated in milliseconds.

    screenshot-instruction-02

  • Telemetry port determines to which port the application will listen. The telemetry port configuration of the game is specified in the installation section.

    screenshot-instruction-03

  • Numeric ranges

    • UI update interval: 10-1000
    • Telemetry port: 0-65535
  • Setting values out of range will be marked as shown in the screenshot below and during the listening process the program will apply last correct values.

    screenshot-instruction-05

  • Other definitions:

    • Bytes: Value of byte offset of each variable stored in the UDP data section.
    • Field name: Name represented by each variable.
    • Field value: Value interpreted as 32-bit float or multiple float values that represent vector.

    screenshot-instruction-04

  • To start the listening process, press Start button. During listening the configuration variables cannot be modified and their fields will be disabled until the Stop button is pressed.

    screenshot-instruction-06

Screenshots

screenshot-game-01 screenshot-application-01

screenshot-game-02 screenshot-application-02

Installation

Make sure to configure the hardware_settings_config.xml file which is necessary to receive the DiRT 3 telemetry packets.

hardware_settings_config.xml configuration steps
  • Open the Run command window, copy %USERPROFILE%\Documents\My Games\DiRT3\hardwaresettings path, paste into text field and press OK button.

  • Open hardware_settings_config.xml file with text editor of your choice.

  • Scroll down to the <motion> entry.

  • Replace <motion enabled="false"/>

    with <motion enabled="true" ip="127.0.0.1" port="20777" delay="1" extradata="3" />

    (Or paste it before </hardware_settings_config> end-tag if the <motion> tag does not exist.)

  • Port number 20777 is recommended although it can be changed in the application later.

  • Save the file.

Recommended: Install and run the DiRTTelemetryErrorFix program to overcome the bug which will crash your DiRT 3 game after each race completion with telemetry output enabled.

Dirt3TelemetryDisplay instalation steps
  • Download the Dirt3TelemetryDisplay ZIP file from the releases section or this link.
  • Extract the ZIP file in a folder of your choice.
  • Open the folder and run Dirt3TelemetryDisplay.exe

Dependencies

  • .Net Core 3.1
  • WPF

Note: Dependencies are only specified for project development. To run the application you do not need to install any of them.

License

Dirt3TelemetryDisplay is licensed under the MIT license.

dirt3telemetrydisplay's People

Contributors

sztorm avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.