Phase 9: the private pack to hand out

build/...-private.mrpack lists every mod by download link, CurseForge-only ones
included, with the credits and non-affiliation notice inside and no third-party jar.
tools/check_private_pack.py downloads all of it and checks the hashes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
claudeandClaude Opus 5.5 committed 2026-11-09 16:49:46 +01:00
1 parent 4083791944
commit 6ace26e012
8 files changed
+139 -6

No files matched your search

+8
View File
@@ -133,6 +133,14 @@ python3 tools/jei_sources.py
```
Writes the data behind the pack's own JEI pages (Phase 8) into the data pack (`datapacks/core/data/cobblesurvival/drop_sources/pages.json`), and the server sends it to players: every Pokémon's drops and zones, guardians, the End boss, the altar, ore veins, pasture finds. Run it after changing species drops, spawns, guardians, machines, ores or Cobblebase tables, then rebuild; the self-test `drop_sources_match_the_server` fails while it's stale. Needs the Cobblemon jar in `build/server/mods` (any test-server run).
## Handing out the pack
`tools/build.py` writes `build/cobblemon-survival-pack-<ver>-private.mrpack` (about 1 MB). Send that file to players: in Prism Launcher, Add Instance > Import, then pick the file. It lists all 43 mods and the shader pack by download link, so each player's launcher fetches them from Modrinth, CurseForge or the author's own host; no third-party jar is inside. It needs Prism: Modrinth's own app and site only accept links to their listed hosts, and four mods are only on CurseForge.
`tools/check_private_pack.py` downloads every link and checks it against the pinned hashes. After handing out a pack, run `python3 tools/server_update.py --mark-client-release`, so later balance updates know what players have.
For the server, install NeoForge from its installer (`--install-server`), then put the mods in with `python3 tools/packwiz_sync.py server <server folder>`, and copy `build/world-template` in as `world`. Balance updates then go through the section below.
## Balancing on a running server
Balance lives on the server, so playtesters keep the client they have. After changing the pack's data: