Git Product home page Git Product logo

forza-data-tools's Introduction

Forza data tools

Building some tools for playing with the UDP data out feature from the Forza Motorsport 7 / Forza Horizon 4 games. Built with golang.

Features

  • Realtime telemetry output to terminal
  • Telemetry data logging to csv file
  • Serve Forza Telemetry data as JSON over HTTP
  • Display race statistics from race/drive (when logging to CSV)

(Feel free to open an issue if you have any suggestions/feature requests) ย 

Setup

From your game HUD options, enable the data out feature and set it to use the IP address of your computer. Port 9999.

Forza Motorsport 7 select the "car dash" format.

ย 

Build

Compile the application with: go build -o fdt

ย 

Run

Command line options

Specify a CSV file to log to: -c log.csv (File will be overwritten if it exists)
Enable support for Forza Horizon: -z
Enable JSON server: -j
Disable realtime terminal output: -q
Enable debug information: -d

ย 

Example (Forza Horizon)

fdt -z -j -c log.csv
fdt -z

Example (Forza Motorsport)

fdt -c -j log.csv

ย 

JSON Data

If the -j flag is provided, JSON data will be available at: http://localhost:8080/forza. Could be used to make a web dashboard interface or something similar. JSON Format is an array of objects containing the various Forza data types.

You can see a sample of the kind of data that will be returned here.

There is a basic example JavaScript dashboard (with rev limiter function) in the /dash directory.

ย 

Further reading

forza-data-tools's People

Contributors

richstokes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

forza-data-tools's Issues

JSON Data doesn't update in real time?

So I have everything working as far as I can tell, but the JSON data doesn't seem to update in real time.
The browser window is directed to http://localhost:8080/forza
It shows all of the Telemetry data from the vehicle at that specific moment in time; but none of the values will update unless I manually refresh the page.
I tried viewing in both Chrome and Firefox, making sure all extensions were disabled, to no avail.
I also tried setting FH5 to LoopbackExempt via CMD, though that didn't seem to help either.
Should I be trying to view the JSON data from a different program or something?

Worked for me

This is what I did to make it work on mine.

Install go
Open cmd and run these commands

go env -w GO111MODULE=auto
go build -o fdt.go

Set data out IP in Forza Horizon 5 to my PC IP address
Set port number to 9999

Run this in cmd
fdt.go -z -j -c log.csv

I won't mare this as closed until you can update the read me

Cannot receive data

Hi,

I'm trying to run the code on Windows 10 with Forza Horizon 4. I set game settings for data output as same as what the script listens. I'm not familiar with golang but I installed it for Windows 64bit and added it to path. The only change that I did is I renamed "fdt" to "fdt.file" due to the an error. After that, the program prints waiting for Forza data but receives nothing. Any suggestions? I suspect that the game fails to send any data

Unable to build the programme

It tolds me that "std" is not an importable package. How can I build the program?
Sorry I am not familiar with golang

undefined serveJSON

I can't get the JSON-Server running.

cmd:


C:\Users\User1\Downloads\Forza-data-tools-master\Forza-data-tools-master>go run main.go -z
# command-line-arguments
.\main.go:328:6: undefined: serveJSON

Why it's undefined? It's defined in the other files.

Thank you in advance.

Error while trying to build

When I try to build this with "go build -o fdt" I get the error that no go.mod file was found. I'm not familiar with the go language so I don't really no if I'm doing anything wrong. How can I solve this issue?

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.