No description
- Rust 100%
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
UT2004 master server
A Rust implementation of the Unreal Tournament 2004 Master Server protocol (originally operated by Epic). It accepts registrations from game servers and answers client queries, making it possible to run a fully self-hosted master server for LANs, private networks, community infrastructure, or long-term preservation.
Features:
- Server registration + heartbeat/TTL handling
- Client query responses compatible with UT2004/UT2003/UT2XMP version checks
- Optional relay mode to forward requests to an upstream master server (
UT2004_RELAY_MASTER-Environment variable)
Run
cargo run --release -- 28902
If no port argument is provided, 28902 is used.
Environment variables (same names as the Java version)
UT2004_LATEST_CLIENT_VERSION(default3369)UT2003_LATEST_CLIENT_VERSION(default2225)UT2XMP_LATEST_CLIENT_VERSION(default2226)UT2004_SERVER_TTL_SECONDS(default600)UT2004_RELAY_MASTER(optional, formathost:port)UT2004_RELAY_CONNECT_TIMEOUT_MS(optional, default2000)UT2004_RELAY_READ_TIMEOUT_MS(optional, default3000)
Logging
- Uses
tracingwithtracing-subscriber. - Configure log levels via
RUST_LOG(e.g.,RUST_LOG=info,RUST_LOG=debug,ut2004_master_tokio=trace). - Defaults to
infolevel ifRUST_LOGis not set.