Shrink the size of game updates by only sending chunks that actually changed.
Verify that a reconstructed game install exactly matches the intended release, byte for byte.
Certify and plan a release's delivery strategy before publishing it to players.
| orelvis15/cavs | dhkts1/teamclaude-rs | elofight/emufight | |
|---|---|---|---|
| Stars | 5 | 5 | 5 |
| Language | Rust | Rust | Rust |
| Setup difficulty | moderate | easy | hard |
| Complexity | 4/5 | 2/5 | 4/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires installing the Rust-based CLI and understanding your game's existing asset formats before packing a release.
CAVS is a system for delivering updates to video games in a much smarter way than most games currently use. Instead of making players redownload an entire game or asset pack every time something changes, it works out exactly which small pieces of data actually changed and only sends those pieces, while reusing everything the player's computer already has. It does this by breaking a game's files into small chunks and giving each chunk a unique fingerprint based on its exact contents. When an update is available, the client checks which fingerprints it already has stored from previous versions or downloaded content, and only fetches the chunks it is missing. This means updates and even first time installs can be much smaller than downloading the whole game fresh, and the same saved chunks can be reused across different versions, downloadable content, or play sessions. The project checks its own work carefully. Every chunk is verified against its fingerprint, and the finished result on the player's machine is checked to make sure it exactly matches what it should be, byte for byte, or the process fails cleanly rather than leaving a broken half updated install. It is also built to use a steady, predictable amount of memory regardless of how large the game is, since it writes data to disk as it verifies it rather than holding everything in memory at once. Beyond the core update mechanism, the project includes command line tools for developers to prepare releases, compare versions, simulate different delivery strategies, and check whether a build is safe to publish before doing so. It supports several ways of getting content to players, including direct chunk downloads, precomputed patches, and serving files straight from a content delivery network with no special server software required. CAVS is aimed at game developers and the engines and platforms they use, such as the Godot game engine, rather than players directly, and it is designed to sit alongside a game's existing file formats rather than replace them. It is written in Rust and offers SDKs for other programming languages so it can be integrated into different game engines and tools. The full README is longer than what was shown.
A content-addressed update delivery system for games that only downloads the parts of a build that actually changed, verifies every byte, and reuses cached chunks across versions.
Mainly Rust. The stack also includes Rust, BLAKE3, Godot.
Use, modify, and distribute freely, including commercially, as long as you keep the copyright and license notices.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.