Smash Up: fusion playAs + Tricksters POD (Pixie) + atlas fixes#2
Merged
Conversation
Made-with: Cursor
Made-with: Cursor
Made-with: Cursor
Made-with: Cursor
Made-with: Cursor
Track scored bases in a base discard pile and rebuild the base deck from it when empty, ensuring long games can always replace scored bases deterministically. Made-with: Cursor
Tighten CARDS_DISCARDED to only discard from hand and add CARDS_MILLED for moving cards from deck to discard. Update zombie abilities and action log to use the new semantics. Made-with: Cursor
Introduce a TriggerInstance queue and reaction ordering interaction to align with Wiki simultaneous trigger rules. Enqueue onMinionMoved triggers with witness gating and resolve via a global reaction chooser. Made-with: Cursor
Route onMinionAffected through the global reaction queue and apply base-scoped witness gating, aligning affected reactions with the new simultaneous trigger ordering model. Made-with: Cursor
Split onMinionDestroyed into replacement vs reaction phases. Keep prevention (Drone/Nine Lives) immediate, queue confirmed-destroy reactions via triggerQueue with minimal LKI, and auto-resolve single queued triggers. Made-with: Cursor
Annotate replacement-style onMinionDestroyed triggers (Buccaneer, Escape Hatch) and implement Frankenstein Grave Situation as a true replacement return-to-hand so destroy reactions only fire on confirmed destroys. Made-with: Cursor
When onMinionDestroyed replacement effects redirect a minion to deck top/bottom (e.g. Tar Pits), suppress the original MINION_DESTROYED and keep only the redirect event, preventing double-zone outcomes. Made-with: Cursor
Add ENGINE_GUIDE.md documenting destroy replacement vs reaction pipeline, reaction queue ordering, witness/LKI, and event semantics. Link it from wiki-rules-coverage.md for future faction expansions/AI workflows. Made-with: Cursor
Stop auto-mulliganing opening hands with no minions. Instead queue a one-time keep/mulligan interaction per eligible player and resolve it via HAND_SHUFFLED_INTO_DECK + CARDS_DRAWN, recording STARTING_HAND_MULLIGAN_USED. Made-with: Cursor
Collect onMinionPlayed ongoing triggers into the global reaction queue for Wiki-style simultaneous ordering. Add a unit test ensuring multiple mandatory onMinionPlayed triggers open an ordering interaction. Made-with: Cursor
Queue ongoing beforeScoring/afterScoring triggers via triggerQueue for Wiki simultaneous ordering. Persist rankings on TriggerInstance for afterScoring triggers and resolve queued reactions inside scoreOneBase so scoring can halt on created interactions. Made-with: Cursor
Queue ongoing onTurnStart and onTurnEnd triggers via triggerQueue so simultaneous triggers follow Wiki ordering. Resolve queued turn triggers immediately so flow can halt on created interactions. Add a unit test covering onTurnStart ordering. Made-with: Cursor
Queue onMinionDiscardedFromBase triggers via triggerQueue so simultaneous discard reactions follow Wiki ordering, and resolve queued triggers immediately so scoring can halt on created interactions. Add a unit test covering ordering prompt. Made-with: Cursor
Made-with: Cursor
Made-with: Cursor
Made-with: Cursor
Made-with: Cursor
Adds fusion card play-as selection, completes Tricksters POD (incl. Pixie fusion + Hideout talent), updates POD zh-CN power wording to 战斗力, and fixes POD/TTS atlas rendering and Pixie card art mapping. Made-with: Cursor
Align Giant Ants (POD) ids, stats, ability tags, and en/zh-CN texts with the provided card list. Standardize zh-CN Special wording to '特殊' and add regression tests. Made-with: Cursor
Align Miskatonic University (POD) card ids/atlas keys and en/zh-CN texts with the provided card list. Implement POD-only behaviors (Those Meddling Kids OR mode, Field Trip draw+1, Psychologist choice, Librarian talent) while preserving base faction behavior. Made-with: Cursor
- Apply Elder Thing errata: add Ongoing wording/tags and register full protection (destroy/move/affect). - Fix Unfathomable Goals destroy execution source to match rules/FAQ. - Add engine-level removed-from-game zone/event; make Insanity POD remove itself after resolving; add tests. Made-with: Cursor
Power of Madness (POD) now names an action from a full action list (including Madness) before revealing the target hand, then discards named copies and reshuffles discard into deck. Made-with: Cursor
Limit Power of Madness (POD) naming choices to actions from factions present in the current match (plus Madness), sorted by localized name for easier selection. Made-with: Cursor
Replace vampires_pod card pool, add Wolf Pact fusion and Stakeout, update EN/ZH i18n, and add a focused POD test. Includes a small engine event/reducer path to persist Stakeout's temporary base play restriction. Made-with: Cursor
Implement base-level buried cards, start-turn uncover flow, and base-cleared discard behavior. Refine Vampires POD: make Fledgling bury use CARD_BURIED and add played-from tracking for its +1 counter trigger; align Buffet/Mad Monster Party data to after-destroy special behavior. Made-with: Cursor
- Blitzed: allow removing 0 counters and still destroy eligible minions - Uberserum: start-turn counters follow action controller - Grave Situation (POD): update EN/ZH text to errata wording - Add regression tests Made-with: Cursor
- Fix onPlay chain for fromBuried/fromDiscard by reducing MINION_PLAYED before triggers - Pass destroyerId through reaction queue for 'after you destroy' checks - Allow Mi-go POD counter to target any minion - Treat _pod cthulhu factions as cthulhu expansion for madness deck init Made-with: Cursor
- Remove Shoggoth POD play constraint - Clear leaked afterScoringInitialPowers at startTurn to prevent unintended base clear/replace Made-with: Cursor
Update atlasId/index for multiple Smash Up cards (Dinosaurs POD, Killer Plants, Ghosts, Bear Cavalry, Cthulhu, Elder Things, Vampires POD, Ninjas, Werewolves, Frankenstein). Made-with: Cursor
deathcats4
added a commit
that referenced
this pull request
Apr 11, 2026
Smash Up: fusion playAs + Tricksters POD (Pixie) + atlas fixes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test plan