A collection of crates to assist working with the Live For Speed racing simulator and it's Insim (protocol).
Warning
The main branch contains unreleased code and may contain breaking changes.
The intention is to provide a strongly typed, native rust implementation, rather than a thin layer over a series of bytes and primitive types.
If you're not sure where to start, you probably want to look at the examples.
| Crate | Usage |
|---|---|
insim |
Insim connection and protocol implementation. Tracks most recent insim version. |
insim_core |
Contains core types shared across other crates. |
insim_macros |
Contains proc_macros republished through insim_core. |
insim_pth |
Implements a PTH and PIN file read/writer. Supports multiple revisions/versions. |
outgauge |
Implements "sans-io" Outgauge protocol implementation. |
outsim |
Implements "sans-io" Outsim protocol implementation. |
insim_extra |
Unreleased and unstable series of micro libraries. |
kitcar |
Unreleased and unstable combined Axum and Bevy inspired handler runtime. |
insim_o3 |
Unreleased insim.rs bindings for python. |
insim_smx has been dropped due to the deprecation of this file format and SMX not
being available for all tracks.
- simbroadcasts/node-insim which I used to bootstrap many of the packet unit tests.
- LFS and it's community, without which this project would not exist.