Document original Ix Spice card policies and readable effects
Retain the current first-turn worm precedence, later Thumper/Sandtrout equivalence and sequential physical Harvester doubling under explicit provisional preview interpretations. Record photographed component and publisher-source provenance, authorized Advanced corroboration, and unresolved wider timing boundaries. No new numerical rule or publisher clarification is claimed. Warn persistently before first-turn Thumper disposal and explain waiting Sandtrout replacements. Public chronicle entries explain ignored first-turn Thumper and Sandtrout encounters. Correct stale preview gates in the relevant reference topics. Genuine public Basic/Advanced selected-Ix programmes use original setup, unopened deal and Spice lotteries, real intervening turns and actual held physical cards. Separate assertions prove phase continuation, Nexus/doubling behavior, ready reset and retained physical stock; four existing minimal profiles legally accept a harvested window. Focused tests, types/lint/build and actual GameTable rendering are recorded in docs/IX_PROTOTYPE.md. This remains bounded prototype evidence, not full native factions, optional combinations, browser/deployed or final assurance. No strategic AI refinement, state version, saved-room/database/reset/restart/deployment operation.
This commit is contained in:
1 parent
6fabe6aa62
commit
c95e294890
9 files changed
+404
-15
No files matched your search
+5
-1
@@ -12147,7 +12147,11 @@ function continueSpice(g: Game, injected?: SpiceCard) {
|
||||
}
|
||||
doubleNext = false;
|
||||
if (g.turn === 1) {
|
||||
if (!card.thumper) sequence.skipped.push(card);
|
||||
if (!card.thumper) {
|
||||
sequence.skipped.push(card);
|
||||
if (g.sandtrout)
|
||||
log(g, 'The first-turn worm rule leaves Sandtrout waiting; this ignored encounter adds no double-spice bonus.');
|
||||
} else log(g, 'The first-turn worm rule ignores this Thumper encounter; the normal Spice Card draw continues.');
|
||||
} else if (g.sandtrout) {
|
||||
g.sandtrout = false;
|
||||
g.spiceDiscard[sequence.pile].push(
|
||||
|
||||
+12
-12
@@ -1856,16 +1856,16 @@ export const RULE_TOPICS: RuleTopic[] = [
|
||||
'The expansion includes Poison Blade, Shield Snooper, Weirding Way, Chemistry, Poison Tooth, Artillery Strike, Thumper and Amal, plus the six ordinary card types below.',
|
||||
'Hunter Seeker is a projectile weapon and Basilia Weapon is a poison weapon. Normal matching defenses and Voice categories apply. Basilia Weapon belongs to this expansion; Ellaca Drug is the base-game poison card.',
|
||||
'The additional Shield and Snooper behave like their base copies, including the Shield’s lasgun interaction. Kull Wahad is a Worthless card and can be played in a battle plan or converted with advanced Bene Gesserit’s Karama advantage.',
|
||||
'The second Harvester is a separate card. Each available copy can be played while the fresh blow window remains open; the current implementation doubles that blow again, without multiplying pre-existing spice. Neither copy can restore a worm-destroyed blow or create spice in storm. Multiple-copy timing and multiplier interpretation remain under card-face audit.',
|
||||
'The second Harvester is a separate card. The provisional preview interpretation permits each available copy during the open fresh-blow window, doubling its current amount again: both copies yield four times the fresh blow without multiplying pre-existing spice. Neither copy can restore a worm-destroyed blow or create spice in storm.',
|
||||
'With this expansion the combined deck has forty-seven distinct card identities: five ordinary projectile weapons, five ordinary poison weapons, five ordinary Shields, five ordinary Snoopers, six Worthless cards and two Harvesters, in addition to the other base and special expansion cards.',
|
||||
'The local development prototype uses genuine setup with the complete deck, Sandtrout, Ixians and Tleilaxu in Basic or Advanced play. Starting cards, private choices, controls, AI and saved continuation use the normal game paths. Public expansion starts remain disabled pending complete rule and interaction acceptance.',
|
||||
'Labelled Basic and Advanced expansion previews use genuine setup with the complete deck, Sandtrout and the selected factions. Starting cards, private choices, controls and minimal legal AI use the normal paths. Preview access does not certify complete expansion rules or combinations.',
|
||||
],
|
||||
checklist: [
|
||||
{ area: 'Implementation', status: 'Partial', detail: 'Working prototype with the actual 47-card setup, both expansion factions and Sandtrout. Optional module combinations and remaining printed-card interpretations are unfinished.', evidence: ['game/cards.ts', 'game/engine.ts'] },
|
||||
{ area: 'Player controls', status: 'Implemented', detail: 'Prototype rooms use the existing private setup, faction, battle-card and special-card controls. Local development initialization preserves the normal release gate.', evidence: ['components/game-table.tsx', 'tools/start-prototype.ts'] },
|
||||
{ area: 'AI', status: 'Partial', detail: 'All four profiles share the existing legal private actions. Complete-game prototype runs exercise both expansion factions; comprehensive strength calibration remains later work.', evidence: ['game/bots.ts', 'tests/ix-prototype.test.ts'] },
|
||||
{ area: 'Implementation', status: 'Partial', detail: 'Actual 47-card setup and original Sandtrout/Thumper/Harvester mechanics retain explicit provisional first-turn precedence and sequential doubling. Wider faction/module interactions remain unfinished.', evidence: ['game/cards.ts', 'game/engine.ts'] },
|
||||
{ area: 'Player controls', status: 'Implemented', detail: 'Normal preview setup and held-card controls include persistent first-turn Thumper and waiting-Sandtrout explanations before spending. Public ignored-encounter feedback explains the result.', evidence: ['components/game-table.tsx', 'docs/EXPANSION_FACTIONS_PROTOTYPE.md'] },
|
||||
{ area: 'AI', status: 'Partial', detail: 'All four existing profiles legally accept an actual harvested window and finish the phase. Historical complete-game samples separately exercise native expansion factions; strategic refinement and strength calibration remain deferred.', evidence: ['game/bots.ts', 'tests/ix-spice-cards-engine.test.ts', 'tests/ix-prototype.test.ts'] },
|
||||
{ area: 'Documentation', status: 'Implemented', detail: 'The prototype setup record separates functional progress, source interpretations and final acceptance.', evidence: ['docs/IX_PROTOTYPE.md'] },
|
||||
{ area: 'Verification', status: 'Partial', detail: 'Genuine setup, complete prototype games, private views, physical-card custody and saved continuation have targeted checks. This does not certify every combination.', evidence: ['tests/ix-prototype.test.ts', 'tests/prototype-room.test.ts'] },
|
||||
{ area: 'Verification', status: 'Partial', detail: 'Affected4-file47/47, types/lint/build, twelve original three-classic-seat Basic/Advanced gameplay/rendering programmes and four minimal legal profiles pass. First/later Thumper, first-turn Sandtrout, replacement worms and two physical Harvesters retain original card stock. Historical native-faction samples remain separate; full combinations, browser/deployed and final assurance remain open.', evidence: ['tests/fixture-ix-spice-cards.ts', 'tests/ix-spice-cards-engine.test.ts', 'tests/ix-prototype.test.ts', 'tests/prototype-room.test.ts'] },
|
||||
],
|
||||
related: [
|
||||
'ix-battle-cards',
|
||||
@@ -2118,14 +2118,14 @@ export const RULE_TOPICS: RuleTopic[] = [
|
||||
category: 'Cards',
|
||||
coverage: 'Partial',
|
||||
summary:
|
||||
'Start the spice phase with a worm encounter without consuming the next spice card. Tested support exists; expansion decks remain gated.',
|
||||
'Start the spice phase with a worm encounter without consuming the next spice card. First-turn precedence is an explicit provisional preview policy.',
|
||||
steps: [
|
||||
'Play Thumper at the opening of Spice Blow, before the first reveal. Discard the treachery card. Resolve a Shai-Hulud encounter against the previous territory in the first spice discard pile.',
|
||||
'Fremen survival, optional allied protection, cancellation responses, Nexus and rides resolve through the ordinary worm sequence. If protection needs a decision, the actual next spice card stays in the deck until that decision finishes.',
|
||||
'Continue drawing afterward to reach a territory. In the advanced game, another worm drawn after Thumper is an additional worm and can offer Fremen placement. The second spice blow then resolves normally against its separate pile.',
|
||||
'A waiting Sandtrout suppresses the encounter. Its immediate territory replacement receives double spice; a replacement worm instead resolves normally.',
|
||||
'After the first turn, a waiting Sandtrout suppresses the encounter under the provisional preview interpretation. Its immediate territory replacement receives double spice; a replacement worm instead resolves normally.',
|
||||
'Thumper does not add a Shai-Hulud card to the spice deck. The generated encounter is remembered in the discard history for timing but disappears when the deck is reshuffled.',
|
||||
'The implementation currently treats first-turn Thumper as an ignored worm, retaining exactly the original worm-card count. The precise first-turn allowance, initial-phase timing and Sandtrout interaction remain printed-card audit items before live expansion starts are enabled.',
|
||||
'First-turn preview policy: Thumper may be spent and discarded, but its worm encounter is ignored and normal spice drawing continues. The held-card explanation warns before spending. This applies the ordinary first-turn rule by inference; it is not a separately confirmed publisher ruling. Broader phase-opening priorities remain under review.',
|
||||
],
|
||||
related: ['spice-blow', 'sandtrout', 'advanced-storm-spice', 'ix-modules'],
|
||||
},
|
||||
@@ -2135,14 +2135,14 @@ export const RULE_TOPICS: RuleTopic[] = [
|
||||
category: 'Advanced & expansions',
|
||||
coverage: 'Partial',
|
||||
summary:
|
||||
'A pending spice-card effect that can cross phases and turns. It is included in local Ix prototype setup; normal expansion starts remain gated.',
|
||||
'A pending spice-card effect that can cross phases and turns. Original selected-Ix previews retain explicit provisional first-turn and Thumper interpretations.',
|
||||
steps: [
|
||||
'Drawing Sandtrout immediately breaks existing alliances and clears pending alliance offers. It is then held aside while spice draws continue. A territory drawn before the next active Shai-Hulud receives its usual spice amount.',
|
||||
'The next active Shai-Hulud drawn is suppressed: it does not devour the previous territory, offer Fremen protection or a ride, or trigger its own Nexus. Discard the consumed Sandtrout with that suppressed worm.',
|
||||
'If the immediate replacement is a territory, double its spice. Harvester can then double that enhanced blow again. Spice still cannot appear in the storm.',
|
||||
'If the immediate replacement is another Shai-Hulud, resolve it normally and do not double a later territory. A normal worm can trigger a Nexus, and further normal worms can offer advanced Fremen placement.',
|
||||
'The pending Sandtrout effect survives until consumed, including between the two advanced spice blows and across turns. Its status is public. A still-hidden Sandtrout at the top of the deck is visible only to authorized Atreides foresight.',
|
||||
'The engine preserves first-turn ignored worms without consuming Sandtrout, and treats a summoned Fremen worm separately from drawn Shai-Hulud. Those timing interpretations and later expansion interactions still require a full printed-card audit before expansion starts are enabled.',
|
||||
'First-turn preview policy gives ignored worms precedence: Sandtrout remains waiting and no doubling is earned. Later Thumper equivalence lets Sandtrout suppress that generated encounter. Both compositions are labelled provisional. A separately summoned Fremen worm and wider module/phase-opening interactions retain their separate contracts and audit boundaries.',
|
||||
],
|
||||
related: [
|
||||
'spice-blow',
|
||||
@@ -2586,7 +2586,7 @@ export const RULE_TOPICS: RuleTopic[] = [
|
||||
steps: [
|
||||
'Play after the territory card is revealed and before the table accepts the blow.',
|
||||
'Only the new blow is doubled; existing spice is unchanged. Spice under the storm still does not appear.',
|
||||
'With the Ixian expansion there are two separate Harvester cards. The current implementation permits both on an open blow, doubling its current amount each time; multiple-copy timing and multiplier interpretation remain under card-face audit.',
|
||||
'With the Ixian expansion there are two separate Harvester cards. The provisional preview interpretation applies each physical card to the current fresh blow: both produce four times that blow, or eight times the printed amount after an immediate Sandtrout doubling. This sequential reading is not a separately confirmed publisher ruling.',
|
||||
'A worm that destroys the fresh blow closes its Harvester window. This does not increase your forces’ collection rate.',
|
||||
'A saved play preserves the doubled blow and its existing ground spice. Recovery does not add the spice again or consume another Harvester.',
|
||||
],
|
||||
|
||||
Reference in new issue
Block a user