All Projects → anilmisirlioglu → f1-telemetry-go

anilmisirlioglu / f1-telemetry-go

Licence: Apache-2.0 license
F1 Game Telemetry Client written in Go (no dependency)

Programming Languages

go
31211 projects - #10 most used programming language
javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to f1-telemetry-go

F1-demo
Real-time vehicle telematics analytics demo using OmniSci
Stars: ✭ 27 (-56.45%)
Mutual labels:  f1-game
WeConnect-mqtt
MQTT Client that publishes data from Volkswagen WeConnect
Stars: ✭ 14 (-77.42%)
Mutual labels:  telemetry-client
WeConnect-cli
Commandline Interface to interact with the Volkswagen WeConnect Services
Stars: ✭ 27 (-56.45%)
Mutual labels:  telemetry-client

F1 Game Telemetry Client in Go Made With Go

Telemetry client for F1 Game, written in Go. Supports the F1 UDP 2022 and previous formats.

f1-telemetry-client

Features

  • Event System
  • Rich Env Constants
  • UDP Stats (recv, err and packet per second rate),
  • Vector3 support

Install

# latest version (F1 2022)
go get -u github.com/anilmisirlioglu/f1-telemetry-go@master

# for F1 2022
go get -u github.com/anilmisirlioglu/[email protected]

# for F1 2020
go get -u github.com/anilmisirlioglu/[email protected]

Quick Start

func main() {
  client, err := telemetry.NewClient()
  if err != nil {
	log.Fatal(err)
  }

  client.OnEventPacket(func(packet *packets.PacketEventData) {
  	fmt.Printf("Code: %s\n", packet.EventCodeString())
  })

  client.Run()
}

Specific Address & Port

func main() {
  client, err := telemetry.NewClientByCustomIpAddressAndPort("0.0.0.0", 20777)
  if err != nil {
	log.Fatal(err)
  }

  client.OnCarDamagePacket(func(packet *packets.PacketCarDamageData) {
  	fmt.Printf("Code: %s\n", packet.EventCodeString())
  })

  client.Run()
}

Docs

If you need more information on the F1 UDP specifications, see the docs.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].