Server-attached modpacks, without the chaos
Join a PackRelay server and the launcher handles the rest. No manual installs, no version mismatches, no copying ZIPs in Discord. Here's exactly what happens.
- 1
You join a server
Connect through the launcher or a server browser link. The launcher detects that the server is PackRelay-enabled and reads its current manifest URL.
- 2
The launcher fetches the signed manifest
Manifests are small JSON files cryptographically signed by the server owner's key. The launcher verifies the signature before reading the file list — a tampered manifest never installs.
- 3
Only the diff syncs
The launcher compares your local files against the manifest's content hashes and downloads only what's changed. First-time installs are full; updates feel instant.
- 4
You're in
The game launches against the exact pack the server is running. Saves, screenshots, and your install of 7 Days to Die stay untouched.
How packs stay safe
Three layers between the pack a server publishes and the files that land in your game directory.
Every published manifest carries an Ed25519 signature tied to the server owner's key. Forged or modified manifests fail verification and never apply.
Packs are scanned against known-bad signatures, archive bombs, and prohibited file types before they go live. Best-effort — see Terms §4.3 — but real.
The launcher writes only into the pack-managed directory. Your worlds, saves, configs outside the pack, and your own mods stay outside its reach.
Publish once, every player auto-syncs
The same protocol the player flow runs on top of — from the publishing side.
The PackRelay CLI mints an Ed25519 keypair. The public half lives on packrelay.cloud; the private half stays on your machine.
Bundle your mod files into a manifest, sign it, and push. Every signed manifest goes through scanning before it becomes available to players.
Point one server — or several — at the published pack. Player launchers pick up the next manifest automatically; nobody has to copy ZIPs around in Discord.
What a signed pack actually looks like
Manifests are plain JSON. Here's a simplified example with the field-by-field breakdown.
- name + version
- Globally unique pack identifier. Versioning is semver — bumping any segment forces a sync.
- game + gameVersion
- Currently 7d2d only; gameVersion lets a manifest target a specific game build so packs and saves don't drift.
- files
- Every file in the pack, with its path relative to the pack root and a sha256 of its contents. The launcher diffs against this list locally.
- publisher
- The server-owner account that signed this manifest. Players see the publisher in the launcher before sync starts.
- signature
- Ed25519 signature over the canonical-JSON form of every other field. Generated by the CLI; verified by every launcher.
Ready when you are
Get the launcher to join servers, or register a server to publish packs of your own.
Questions? Visit our support page.