Repository navigation
Releases: peterdk31/spellmerge
Release list
Spellmerge v0.20261021 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- Docs: C1 verdict iterate; queue the round 2 playtest report first by @spellmerge-bot[bot] in #122
- Start develop when the owner posts a command by @peterdk31 in #123
- Art direction pass (imp, telegraph, crypt room) and small isolated tests by @spellmerge-bot[bot] in #124
- Fix hitboxes: hit circles on the body and bigger (#5) by @spellmerge-bot[bot] in #125
- Foundation: art and content chosen by data, plus an architecture guide by @spellmerge-bot[bot] in #127
Full Changelog: v0.20261020...v0.20261021
Spellmerge v0.20261020 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- Aim from the hand: the shot, the reticle and the mouse line up by @peterdk31 in #119
- Muzzle flash: a small flare at the staff tip by @spellmerge-bot[bot] in #120
Full Changelog: v0.20261019...v0.20261020
Spellmerge v0.20261019 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- Weekly planning 2026-10-18: M1 status and aim polish task by @spellmerge-bot[bot] in #100
- Fix invisible shots, fire from the staff, add a dash look by @spellmerge-bot[bot] in #103
- Iterate on the placeholder art: better tiles, bolt, spark and imp; wizard idle, walk and dash strips; a drawn staff by @spellmerge-bot[bot] in #104
- Juice pass on the core loop: hit flash, squash, death puff, muzzle flash, cast kick by @spellmerge-bot[bot] in #105
- C1 juice leftovers: caster squash, aimed muzzle flash, death animation, hurt vignette; queue round-2 tasks by @spellmerge-bot[bot] in #106
- Revive: stand beside a downed wizard to bring them back, with a progress ring by @spellmerge-bot[bot] in #107
- Shots stop at walls (C1 round 2, task 2) by @spellmerge-bot[bot] in #108
- Dodge and cast feel: input buffer and a visible invulnerability window (C1 round 2, task 3) by @spellmerge-bot[bot] in #109
- Enemy readability: imp windup and hurt poses, a distinct enemy shot (C1 round 2, task 4) by @spellmerge-bot[bot] in #110
- Wave pacing: growing waves in the same room, quick restart, Wave N in the HUD (C1 round 2, task 5) by @spellmerge-bot[bot] in #111
- Cleanup: fix invalid .uid files and add a UID validity test (C1 round 2, task 6) by @spellmerge-bot[bot] in #112
- Revert #112: Cleanup: fix invalid .uid files and add a UID validity test (C1 round 2, task 6) by @spellmerge-bot[bot] in #113
- Cleanup: fix invalid .uid files and add a UID validity test (C1 round 2, task 6) by @spellmerge-bot[bot] in #114
- Docs: C1 round 2 summary (task done) by @spellmerge-bot[bot] in #115
- Fix the daily build: fighter bots walk round pillars instead of stalling by @peterdk31 in #116
- Bots dodge telegraphed shots, so the 4-bot smoke stops failing on a downed fighter by @peterdk31 in #117
- Revert bisect: handle merge commits on main by @peterdk31 in #118
Full Changelog: v0.20261018...v0.20261019
Spellmerge v0.20261018 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- Resume develop when a usage limit resets; skip late scheduled daily and weekly runs by @peterdk31 in #56
- Arena glue: the flow slice and the Play button (M1 part 15) by @spellmerge-bot[bot] in #55
- Feel: hit-stop, screen shake, hit particles and sound (M1 part 16) by @spellmerge-bot[bot] in #57
- Co-op: join/leave mid-run, friendly fire, shared camera (M1 part 17) by @spellmerge-bot[bot] in #58
- Log partial co-op verification (build.sh --quick passes) by @spellmerge-bot[bot] in #59
- Log: co-op verification still blocked (Godot run not permitted) by @spellmerge-bot[bot] in #60
- Log: co-op verification still blocked (third attempt) by @spellmerge-bot[bot] in #61
- HUD theme and player panels (M1 part 18) by @spellmerge-bot[bot] in #62
- Owner inbox; unit tests through build.sh --tests; Client ID; narrow web links by @peterdk31 in #63
- Remove single quotes from the output schemas; they broke every session by @peterdk31 in #65
- Keep work that finishes over the turn cap; raise the turn caps by @peterdk31 in #66
- Keep the work of unfinished sessions in a draft PR by @peterdk31 in #67
- Let the bot push main's workflow changes, never its own by @peterdk31 in #68
- Fixed workflow permissions by @peterdk31 in #69
- Move workflows: write to the push tokens by @peterdk31 in #70
- Make every unit test pass (19 of 19, no errors in the log) by @spellmerge-bot[bot] in #71
- Verify the HUD (M1 part 18 follow-up) by @spellmerge-bot[bot] in #74
- Make HUD corner panels translucent, assert text sizes (M1 part 18 follow-up) by @spellmerge-bot[bot] in #75
- The overlay (M1 part 19) by @spellmerge-bot[bot] in #64
- Bots and the 4-bot smoke test (M1 part 20) by @spellmerge-bot[bot] in #76
- Linux Test export preset for the 4-bot test (M1 part 21) by @spellmerge-bot[bot] in #78
- Run the unit tests in the daily build; take screenshots and post them by @peterdk31 in #77
- Stop revisions re-asking owner questions; queue the export 4-bot fix (#80) by @peterdk31 in #81
- Start the 4-bot test from the --four-bot argument in the Linux Test export by @spellmerge-bot[bot] in #82
- Keep developing when a task waits on the owner; run the 4-bot test in the export by @peterdk31 in #85
- HUD screenshots: overlays, a downed player and Coop zoom 0.5 by @spellmerge-bot[bot] in #86
- Performance probe and projectile timing benchmark (M1 part 22) by @spellmerge-bot[bot] in #88
- Bound the projectile hit test with a per-step work budget; keep the caps (M1 part 22 follow-up) by @spellmerge-bot[bot] in #89
- Move the web size and WASM timing task to Blocked by @spellmerge-bot[bot] in #90
- Web 4-bot run, game side: Web Test preset and page-args start (M1 part 23) by @spellmerge-bot[bot] in #92
- Starter kit sources and Style Guide content (M1 part 24) by @spellmerge-bot[bot] in #94
- Checkpoint C1 prep: wave balance probe, no value changes (M1 part 25) by @spellmerge-bot[bot] in #96
- Iterate on C1: aim apart from walking, turning sprite, reticle and shadow by @spellmerge-bot[bot] in #99
Full Changelog: v0.20261017.2...v0.20261018
Spellmerge v0.20261017.2 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- Fix: allow oven-sh/setup-bun (used inside claude-code-action) by @peterdk31 in #12
- Fix: install bubblewrap before Claude steps (needed for secret scrubbing) by @peterdk31 in #13
- Fix: install socat too (Claude's sandbox needs bubblewrap and socat) by @peterdk31 in #14
- Fix: test independent of NEXT.md; check.sh doesn't crash on unreadable files by @peterdk31 in #16
- Fix: reviewed SHA from the pushed commit; continue open PRs for a task by @peterdk31 in #17
- Add READMEs for the seven content areas by @spellmerge-bot[bot] in #15
- Move the hourly develop schedule to minute 23 so GitHub registers it by @peterdk31 in #18
- Record that the HUD sends player-intent events by @peterdk31 in #24
- Start the next session right away and set aside tasks that wait on someone by @peterdk31 in #25
- Fix chained sessions: allow github-actions[bot], keep revisions on the PR branch by @peterdk31 in #26
- Let sessions merge main into a PR they continue; skip sandbox placeholders in check.sh by @peterdk31 in #28
- Review an open PR that a session continued without new commits by @peterdk31 in #29
- Run develop on every push to main, since GitHub doesn't fire the schedule by @peterdk31 in #30
- Refuse conflicting PRs at once and send them back for a merge of main by @peterdk31 in #31
- Kick develop after merges, keep merge output on one line, let the bot merge its approved PRs by @peterdk31 in #32
- Merge main into a continued PR's branch before Claude starts by @peterdk31 in #33
- Area READMEs for core, hud and the 10 gameplay sub-areas by @spellmerge-bot[bot] in #19
- Add llms.txt, an index of every doc by @spellmerge-bot[bot] in #34
- Add READMEs for art/, audio/ and tests/, and list them in llms.txt by @spellmerge-bot[bot] in #27
- Mark the tools/ README task blocked (tools/ not writable) by @spellmerge-bot[bot] in #35
- Bump anthropics/claude-code-action from 1.0.239 to 1.0.248 by @dependabot[bot] in #23
- Bump actions/upload-artifact from 7.0.1 to 7.0.2 by @dependabot[bot] in #22
- Bump actions/download-artifact from 8.0.1 to 8.0.2 by @dependabot[bot] in #21
- Bump actions/create-github-app-token from 3.2.0 to 3.3.0 by @dependabot[bot] in #20
- Add tools/README.md; start daily and weekly when GitHub misses their schedule by @peterdk31 in #37
- Start M1 now; carry M0's dry runs and release streak into M1 by @peterdk31 in #38
- Add the M1 design document and M1's task queue by @spellmerge-bot[bot] in #39
- Recognise "hit your session limit" as a usage limit and back off until its reset by @peterdk31 in #41
- Add the event bus and the spell, enemy and room base classes (M1 part 1) by @spellmerge-bot[bot] in #40
- Reconcile event lists with core/events (M1 part 2) by @spellmerge-bot[bot] in #42
- Add the style document (M1 part 3) by @spellmerge-bot[bot] in #43
- Add core/input: join by button press, one device per player, virtual devices (M1 part 5) by @spellmerge-bot[bot] in #44
- Add core/ui_focus: per-player focus (M1 part 6) by @spellmerge-bot[bot] in #45
- Add core/pools and core/projectiles: pool, bulk projectile manager (M1 part 7) by @spellmerge-bot[bot] in #46
- Add core/registry: content by folder and id, demo flag, sounds by id (M1 part 8) by @spellmerge-bot[bot] in #47
- Add player movement and dodge, wizard scene (M1 part 9) by @spellmerge-bot[bot] in #48
- Add placeholder art: crypt tiles, wizard in four colours, ember imp, fire bolt, hit spark (M1 part 4) by @spellmerge-bot[bot] in #49
- Add player health, mana, downed, revive and cast (M1 part 10) by @spellmerge-bot[bot] in #50
- Add combat: damage pipeline, hurt and contact boxes, knockback (M1 part 11) by @spellmerge-bot[bot] in #51
- The enemy and its AI: chase and a telegraphed shot, ember imp (M1 part 12) by @spellmerge-bot[bot] in #52
- The fire bolt and projectile hookup (M1 part 13) by @spellmerge-bot[bot] in #53
- The crypt arena room (M1 part 14) by @spellmerge-bot[bot] in #54
New Contributors
- @spellmerge-bot[bot] made their first contribution in #15
- @dependabot[bot] made their first contribution in #23
Full Changelog: v0.20261016...v0.20261017.2
Spellmerge v0.20261017 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- Fix: allow oven-sh/setup-bun (used inside claude-code-action) by @peterdk31 in #12
- Fix: install bubblewrap before Claude steps (needed for secret scrubbing) by @peterdk31 in #13
- Fix: install socat too (Claude's sandbox needs bubblewrap and socat) by @peterdk31 in #14
- Fix: test independent of NEXT.md; check.sh doesn't crash on unreadable files by @peterdk31 in #16
- Fix: reviewed SHA from the pushed commit; continue open PRs for a task by @peterdk31 in #17
- Add READMEs for the seven content areas by @spellmerge-bot[bot] in #15
- Move the hourly develop schedule to minute 23 so GitHub registers it by @peterdk31 in #18
- Record that the HUD sends player-intent events by @peterdk31 in #24
- Start the next session right away and set aside tasks that wait on someone by @peterdk31 in #25
- Fix chained sessions: allow github-actions[bot], keep revisions on the PR branch by @peterdk31 in #26
- Let sessions merge main into a PR they continue; skip sandbox placeholders in check.sh by @peterdk31 in #28
- Review an open PR that a session continued without new commits by @peterdk31 in #29
- Run develop on every push to main, since GitHub doesn't fire the schedule by @peterdk31 in #30
- Refuse conflicting PRs at once and send them back for a merge of main by @peterdk31 in #31
- Kick develop after merges, keep merge output on one line, let the bot merge its approved PRs by @peterdk31 in #32
- Merge main into a continued PR's branch before Claude starts by @peterdk31 in #33
- Area READMEs for core, hud and the 10 gameplay sub-areas by @spellmerge-bot[bot] in #19
- Add llms.txt, an index of every doc by @spellmerge-bot[bot] in #34
- Add READMEs for art/, audio/ and tests/, and list them in llms.txt by @spellmerge-bot[bot] in #27
- Mark the tools/ README task blocked (tools/ not writable) by @spellmerge-bot[bot] in #35
- Bump anthropics/claude-code-action from 1.0.239 to 1.0.248 by @dependabot[bot] in #23
- Bump actions/upload-artifact from 7.0.1 to 7.0.2 by @dependabot[bot] in #22
- Bump actions/download-artifact from 8.0.1 to 8.0.2 by @dependabot[bot] in #21
- Bump actions/create-github-app-token from 3.2.0 to 3.3.0 by @dependabot[bot] in #20
- Add tools/README.md; start daily and weekly when GitHub misses their schedule by @peterdk31 in #37
- Start M1 now; carry M0's dry runs and release streak into M1 by @peterdk31 in #38
- Add the M1 design document and M1's task queue by @spellmerge-bot[bot] in #39
- Recognise "hit your session limit" as a usage limit and back off until its reset by @peterdk31 in #41
- Add the event bus and the spell, enemy and room base classes (M1 part 1) by @spellmerge-bot[bot] in #40
- Reconcile event lists with core/events (M1 part 2) by @spellmerge-bot[bot] in #42
- Add the style document (M1 part 3) by @spellmerge-bot[bot] in #43
- Add core/input: join by button press, one device per player, virtual devices (M1 part 5) by @spellmerge-bot[bot] in #44
- Add core/ui_focus: per-player focus (M1 part 6) by @spellmerge-bot[bot] in #45
- Add core/pools and core/projectiles: pool, bulk projectile manager (M1 part 7) by @spellmerge-bot[bot] in #46
- Add core/registry: content by folder and id, demo flag, sounds by id (M1 part 8) by @spellmerge-bot[bot] in #47
- Add player movement and dodge, wizard scene (M1 part 9) by @spellmerge-bot[bot] in #48
- Add placeholder art: crypt tiles, wizard in four colours, ember imp, fire bolt, hit spark (M1 part 4) by @spellmerge-bot[bot] in #49
- Add player health, mana, downed, revive and cast (M1 part 10) by @spellmerge-bot[bot] in #50
- Add combat: damage pipeline, hurt and contact boxes, knockback (M1 part 11) by @spellmerge-bot[bot] in #51
- The enemy and its AI: chase and a telegraphed shot, ember imp (M1 part 12) by @spellmerge-bot[bot] in #52
- The fire bolt and projectile hookup (M1 part 13) by @spellmerge-bot[bot] in #53
- The crypt arena room (M1 part 14) by @spellmerge-bot[bot] in #54
New Contributors
- @spellmerge-bot[bot] made their first contribution in #15
- @dependabot[bot] made their first contribution in #23
Full Changelog: v0.20261016...v0.20261017
Spellmerge v0.20261016 (stable)
Stable: passed the quality gate (all tests green, no known crashes or blockers).
- Play in the browser: https://peterdk31.github.io/spellmerge/play/
- Windows and Linux downloads are below. Windows builds are not signed yet, so Windows may show a SmartScreen warning.
- Check a download: compare it with
SHA256SUMS, or rungh attestation verify <file> --repo peterdk31/spellmerge.
What's Changed
- M0: complete foundation (includes #1, #2, #3, #6, #7, #8, #9) by @peterdk31 in #10
- Fix: commit ci/build/ (hidden by .gitignore), so the daily build can run by @peterdk31 in #11
New Contributors
- @peterdk31 made their first contribution in #10
Full Changelog: https://github.com/peterdk31/spellmerge/commits/v0.20261016