A gRPC server providing access to Steam leaderboards and related data for the game Distance.
The way the server works is pretty simple: you run the server and provide it with a Steam username and password of an account that owns Distance (Steam Guard needs to be disabled for this account). The server connects to the Steam network using those credentials, and is then able to query the Steam network. The server exposes this Steam-querying functionality through a gRPC interface, allowing client applications access to the Steam data.
By default, the server listens on port 8080.
Currently, the server allows querying
- leaderboard entries, given a leaderboard name
- player names, given Steam IDs
See steam.proto for the exact details of the API. Notably, querying the Steam Workshop is not supported due to the SteamKit library used not supporting it.
Also in this repo is a Rust client library for consuming the API.
docker build -t distance-steam-data-server .
docker run --rm -p 80:8080 -e STEAM_USERNAME=john -e STEAM_PASSWORD=12345 distance-steam-data-serverSTEAM_USERNAME=john STEAM_PASSWORD=12345 dotnet run --project DistanceSteamDataServer/DistanceSteamDataServer.csprojAdd the library to Cargo.toml:
[dependencies]
distance-steam-data-client = { git = "https://github.com/Seeker14491/DistanceSteamDataServer.git" }