Expanding Wild — Presentation Module

Optional module for slot-presentation-flow-template.md. The backend determines the selected/landed Wild, expansion footprint, wins and payout. The client presents those receipts and never re-evaluates money. Every unique phase below must link to a Visual Ref ID defined by the base template.

1. Feature flow

flowchart TD
    A["Authoritative grid stops"] --> B{"Expanding Wild receipt?"}
    B -- "No" --> C["Ordinary result presentation"]
    B -- "Yes" --> D["Highlight source Wild/selected symbol"]
    D --> E["Expand through authoritative reel/cells"]
    E --> F["Hold expanded final state"]
    F --> G["Present authoritative line/ways wins"]
    G --> H{"Another expansion in this round?"}
    H -- "Yes" --> D
    H -- "No" --> I["Round/FS total"]
    I --> J["Next FS step, feature outro, or base Ready"]

2. Game contract placeholders

[GAME TODO] Trigger: landed WILD | selected expanding symbol | other
[GAME TODO] Available in: base | Free Spins | both
[GAME TODO] Expansion axis: full reel | row | explicit cells
[GAME TODO] Multiple expansions order:
[GAME TODO] Sticky duration: current win | current spin | entire FS series
[GAME TODO] Expansion affects evaluation or is presentation of an already evaluated grid:
[GAME TODO] Retrigger interaction:
[GAME TODO] Wild has own pay / substitution exceptions:
[GAME TODO] Visual refs for reveal, expansion, multi-Wild order and terminal pose:

3. Phase sheet

PhaseAuthoritative trigger/dataRequired presentationAnimation / audio commentSkippableCompletion/fallback
Source revealReceipt identifies source cell/symbolEmphasize exact source before expansion[GAME TODO] Source pulse/voice/SFX:YesSnap source highlighted
ExpansionExplicit affected reel/cellsGrow/replace only those cells[GAME TODO] Direction, duration, stagger:YesSnap every affected cell to final Wild state
Expanded holdExpansion completeHold long enough to read the transformed grid[GAME TODO] Wild idle/loop:After minimum holdPreserve final expanded grid
Win highlightAuthoritative wins after expansionHighlight exact lines/ways/cells[GAME TODO] Line/symbol win animation:YesSnap to authoritative total
Multi-expansion handoverMore than one receipt/sourceRun sequentially or together as declared[GAME TODO] Ordering/parallel rule:YesEvery expansion finalizes once
FS step handoverCurrent FS step settledKeep/clear sticky state according to receipt[GAME TODO] Transition to next spin:YesNever carry Wild beyond authoritative lifetime
Feature outroLast FS step closesClear feature-only Wild state after total[GAME TODO] Outro/clear animation:YesRestore base grid/state

4. Ordering rules

  • Reel stops complete before expansion begins unless the game-specific design explicitly overlaps them and still preserves readability.
  • The source reveal precedes expansion.
  • Expansion reaches its terminal visual state before dependent wins are highlighted.
  • Multiple sources use stable backend order or an explicit simultaneous group; never use incidental array/object iteration order.
  • Big Win presentation begins only after required expansion and contributing wins are readable.

5. State rules

  • Expansion coordinates come from the server contract or a deterministic presentation mapping explicitly approved in the GDD.
  • The frontend does not search the grid and decide which symbol expands.
  • A sticky Wild persists only for the lifetime stated by backend state.
  • Reconnect restores the latest authoritative expanded/sticky grid without replaying the monetary award or an already completed selection.
  • A stale completion from a previous FS step cannot clear or release a newer expansion.

6. Anticipation and popup comments

[GAME TODO] Does near-miss anticipation exist before an expanding symbol lands?
[GAME TODO] Does the selected expanding symbol receive a pre-FS reveal popup?
[GAME TODO] Is there a persistent HUD portrait/icon for the selected symbol?
[GAME TODO] What happens when the same selected symbol appears on multiple reels?
[GAME TODO] What presentation is used when expansion produces no win?

An expansion with no authoritative win may still animate, but it must not use win audio, count-up or award language.

7. Skip, cancellation and failure

  • Skip immediately applies every affected cell and finalizes the displayed authoritative amount.
  • Cancellation prevents late animation continuations from rewriting the next round/FS step.
  • Failure fallback is a synchronous snapExpanded(receipt)-equivalent visual operation.
  • If the final expanded state cannot be established, park/reconcile rather than enable a new wager.

8. Deterministic DEV scenarios

  • No expanding Wild.
  • One source expands one reel.
  • Expansion produces no win.
  • Expansion produces one and multiple line/ways wins.
  • Multiple sources with verified ordering.
  • Sticky Wild across the intended lifetime.
  • Retrigger plus expanding Wild, if supported.
  • Reconnect before source reveal and after expansion.
  • Skip/cancel during expansion and win handover.