Repository navigation
MTG farm volunteer client v16
Superseded by client-v17, which adds the bootstrap.ENGINES row for engine 2.0.14+139b268b780 (accepted 2026-09-07). On v16 the Install Forge button refuses that engine by name and the farm hands you no work -- update to v17. The v16 asset below stays downloadable and its digest stays correct for it.
One-zip Windows volunteer client for the MTG sim farm. Unzip, double-click run-client.bat, enter the farm URL and your runner credential on the first-run page, click Add, pick your work, and go.
New in v16: workers are yours to keep. Adding and removing a worker are now separate from starting and stopping it.
- Add creates workers and starts them (on an idle client it starts the runner too).
- stop on a row keeps that worker on the table. Press start and it runs again with the same work it was created with.
- x removes a worker from the table. It is refused while the worker runs, so a row and its game count never disappear in one misclick.
- Start All and Stop All do the whole table.
- Your workers and their game counts survive a restart of this client -- after an update or a reboot they come back stopped, waiting for you to press start. Nothing starts playing on its own.
Already on v12 or later? Your client shows a banner with an Update button; stop the workers and press it.
From v15: the column order (slot, mode, games, deck 1, deck 2, activity, for). From v14: the relaunched console closes with the client. From v13: the for column counts the whole wait. From v12: the client updates itself. From v8: Backfill chosen decks, a work mode with a deck picker and a scope.
Headless: farmrunner.py --mode backfill --decks REF[,REF...] [--scope within], a ref being a deck's label, its hash, or a unique hash prefix.
Ships Windows embeddable Python 3.12.10 and the client with its harness pin baked in; the Forge engine (~205 MB) is downloaded on demand. Knows both fork engines (2.0.14+77f7277a301, 2.0.14+71c2d284cee). Requires a farm advertising active_engine (post-de63260); choosing decks needs a farm listing deck_filter in its hello.
sha256(mtg-farm-client-v16.zip) = 23544c19de8fcd9617583a4060c86b8f1446dc7a6624a775b042b7a63911a175