20 KiB
Fremen Nexus: worm and revival contract
Primary-source and integration audit, 10 September 2026; narrow Secret Ally Revival and native Cunning prototypes integrated later. This document does not certify Fremen protection, combined-module Cunning or complete Fremen effects, and does not open a release gate. The common Nexus rules apply. No new user question was sent.
Evidence
The Fremen panel was freshly read from the photograph of the printed GF9 cards, cached as /tmp/dune-nexus-cards.jpg. Cunning permits a remote ride when a sandworm appears in a territory containing no forces: the player may take forces from one desert territory to a destination respecting storm and occupancy rules. Secret Ally offers either protection against a sandworm or a total of three free force revivals during Revival. The latter does not use Emperor's additional/beyond-limits wording. Neither option grants the absent faction's other advantages.
The base Fremen sheet, printed p.16 supplies ordinary riding after the Nexus, from some or all forces at the worm's territory, and Advanced placement of additional worms in sand. The base Spice Blow rules, p.8 ignore first-turn worm cards and associate later natural worms with the applicable discard territory. These are separate from a worm's destination after riding.
The November 2020 FAQ, pp.2–3 preserves the one-per-turn Advanced Fedaykin/Sardaukar revival cap through other revival producers. It also expressly makes the Fremen special Karama summon a Spice Blow/Nexus event with a Nexus and normal destruction/ride consequences. This supersedes the older contradictory no-Nexus answer in the base book. Publisher-indexed text was retrieved; direct PDF access returned 403, and two older locally named base/FAQ PDFs proved to be HTML rather than readable PDFs.
The E1 FAQ, p.11 describes Sandtrout's anti-Nexus and immediate replacement-card behavior. Its Karama table distinguishes destroying Fremen at a worm from stopping additional-worm placement. The E3 rules, pp.11–12 and 16, reread in the cached publisher-authored PDF text and fresh publisher-indexed excerpts, give common Nexus timing and distinguish Great Maker's reserve ride from ordinary board-origin riding. Great Maker remains a separate integration boundary.
Bounded Betrayal: movement and worm riding
An unallied non-Fremen holder of the physical Fremen Nexus card may spend it during Shipment and Movement before Fremen move to suppress their native two-territory movement advantage for the rest of that turn. This bounded path uses a clean action boundary in classic-only tables with no other optional modules. It does not suppress independent city ornithopters, Planetologist, movement cards or the ordinary one-territory move. A move-specific Karama interruption remains separate; no extra Karama response to the Nexus card is invented.
The owner-only offer binds the holder, seated Fremen target and turn. The physical card enters the Nexus discard once; a saved receipt and player turn marker preserve suppression through JSON/SQLite recovery and reject replay or malformed ownership. The public movement view shows the restriction without revealing who held the card before play. All four AI profiles can spend the card before an active Fremen bot moves; the owner control labels the currently available alternative.
The same unallied holder may instead spend that one physical card at a clean pre-first-blow Spice Blow and Nexus boundary. For the remainder of that turn, Fremen cannot take ordinary or native Cunning worm rides. Worm destruction, survival, allied protection, spice placement, additional worm appearances and Nexus negotiations still resolve. The card must be declared before any worm or spice blow, including a special-Karama summon; this conservative advance-declaration window avoids a holder-dependent hidden reaction, but is a product timing choice rather than an explicit printed priority ruling. No reactive post-appearance Betrayal is claimed.
Both alternatives use one mode-bound saved receipt, public turn marker and physical discard. A later Nexus draw may recycle that card during the same turn; even if it returns to a hand, the second alternative is unavailable. Validated six-field movement-only receipts from the previous checkpoint remain readable and executable after JSON or SQL restoration; malformed old events or signatures still reject. No game reset or public backfill is needed. Basic/Advanced natural appearances, empty-worm Cunning exclusion, actual saved worm continuation, duplicate authenticated SQL action and all four bot profiles have focused checks. The module remains release-gated; Great Maker, Sandtrout, combined expansions and after-appearance timing are separate.
Cunning: source-backed scope and implementation composition
The following are implementation consequences of the inspected text, not additional quoted rules:
- Empty means no faction's forces, at the actual appearance. Capture this fact before
devour; a worm that eliminates an enemy army must not retroactively qualify. Count all sectors, normal/starred counters, BG advisors, and a public No-Field marker as one. UsepresenceAtfromgame/force-presence.ts; never inspect its hidden denomination or infer emptiness from the forces left after destruction. Spice, Terror and Ambassador tokens alone are not forces. - Only the source must be desert. Use board territory type
sandfor one chosen source; allow a subset and multiple sectors within that single territory, retaining exact starred counts. Strongholds, rock, Polar Sink, native reserves and Homeworlds are not desert source groups. Natural worm appearances can follow a printed spice card in rock territory: do not incorrectly require every triggering territory to be sand. Existingdisaster-preflight.tsdeliberately supports that distinction. - Destinations reuse ordinary riding. This is not a two-territory move or a reserve shipment. Reuse valid Arrakis locations, storm exclusion, ally/stronghold capacity, sector checks and typed removal. Do not impose the source's desert restriction on destinations. Keep the existing Homeworld/discovery/HMS boundaries unless their own adapters explicitly support the move.
- One use must bind one actual appearance. Both Advanced spice piles and allowed additional-worm placements can produce separate events. A second-pile event must not borrow the first pile's discard territory, and identical territories do not identify identical worms. First-turn ignored cards and the current Sandtrout-suppressed branch do not call
beginWorm; creating Cunning merely when a worm-shaped card is drawn would bypass those existing rules. - Special summons are real worm appearances. The later FAQ supports applying the trigger to an empty-territory summon. Preserve its separately saved parent and after-blow Nexus ordering. A player cannot manufacture the trigger by choosing a source group first and treating that group as already at the empty worm territory.
Great Maker expressly replaces normal board-origin riding with reserve riding. Do not automatically add another board ride or allow Cunning to choose between both sources. This combination needs a separate resolution when Discovery is implemented. Likewise, Sandtrout handling should remain at the existing appearance boundary; this audit does not independently change its suppression algorithm.
Engine contract and timing hazards
beginWorm → wormSurvival → devour → afterWorm/continueSpice is the current resolution path. devour only pushes a territory into wormRides when Fremen already occupy it. nextWormRide additionally requires surviving Fremen there. Therefore adding the empty territory to that string queue cannot implement Cunning: it will be discarded, or will incorrectly demand a source at the empty location.
Recommended focused contracts:
- Create an immutable worm occurrence before destruction, recording event, turn, phase, source (
natural,additional,summoned), target, applicable pile/parent identity and original public force presence. Only accepted additional placement creates an occurrence. Never regenerate the original emptiness fact from current forces on read. - Quote Cunning from that occurrence and public board groups, plus the owner's actual card entitlement. Return eligible single-desert sources with typed per-sector counts and ordinary destination legality. Validate the selected subset again when committing; no hidden opponent hand or marker size enters the quote.
- Spend the unique Nexus card once and persist a signed result/ride obligation bound to the occurrence. Keep its source selection separate from the worm's appearance territory. Preserve the existing post-Nexus ride scheduling, including further summoned worms and both spice piles. Record progress independently enough to reject deleted decisions, source edits and replayed completed rides.
- On movement, reuse the existing worm-ride arrival chain:
intrusionandopenTerritoryEntry(..., 'wormRide', 'wormRide'), followed bynextWormRideonly after all Ambassador/Terror/BG children finish. Do not rerun devouring, spice draws, negotiations, shipment, or normal movement usage.
Two interactions need a concrete decision before treating this as a complete feature. The card triggers at appearance while ordinary riding follows negotiations: a just-drawn card must not automatically buy a retrospective ride for an earlier empty worm. Also, ordinary Karama's printed Shai-Hulud result destroys forces at the worm, whereas the remote source is elsewhere. Do not destroy that remote source, or invent a global loss of all riding, as a shortcut for cancellation. A bounded enhanced-native cancellation policy must preserve the original empty occurrence and unrelated rides.
Connected native Cunning path
game/nexus-fremen-cunning.ts captures {event, turn, territory, origin, pile?, parent?, initiallyEmpty} at the accepted appearance before destruction, using public presenceAt across players. Advisers and public No-Field markers count without revealing marker denomination. beginWorm offers the same Fremen decision for an initially empty appearance whether or not that seat holds its own card; the owner-only card view controls the spend button. The server, not the client, issues the event and later {event, turn, owner} ride authorization. The actual Fremen card moves to the Nexus discard on acceptance.
The current runtime path covers natural and accepted additional worms in Basic/Advanced, plus Fremen special-Karama summoned worms in Advanced, with seated classic factions, Nexus alone and no other optional modules. The summon mints a separate server-side parent event when its physical Karama is spent; a new empty appearance binds the Cunning occurrence to that parent before devouring. A saved offer or pending ride must still belong to the active summon. A summon occurring inside another unresolved Cunning offer or ride retains its ordinary worm path without a second Cunning offer. Great Maker is not enabled for this Cunning path; Sandtrout-suppressed and first-turn ignored drawn worms never call the appearance hook, while a real special summon still does. quoteFremenCunning checks native unallied entitlement and lists typed forces in each occupied sand territory. After spending, quoteFremenCunningRide requires the saved event authorization and spent physical card; validateFremenCunningSelection requotes one source and a subset of normal/Fedaykin counters immediately before moving. The destination uses Arrakis entry, storm and occupation rules, not the desert-only source restriction. Ordinary worm destruction and the applicable Nexus happen first; nextWormRide schedules native rides before the remote ride afterward, without consuming normal movement. BG intrusion and territory-entry continuations use the native worm-ride path. JSON normalization and rejected-action checks cover a live offer, a spent response and the post-Nexus selection.
A special summon during an existing Cunning offer or Karama response saves and restores that original control. When it interrupts a selected remote ride, the unfinished ride returns to its queue so the new Nexus and ordinary worm rides resolve first; no second Cunning offer is opened for that nested appearance.
One Karama response may cancel only this additional remote ride after the Nexus card is spent. The originally empty appearance still destroys/places spice as usual; the remote source is not destroyed, and unrelated native rides continue. This is a provisional enhanced-native cancellation composition, not an explicit publisher ruling about Nexus/Karama classification. Games requiring other modules, a second Cunning offer inside an already pending Cunning control, Great Maker reserve replacement or Sandmaster collection stay gated until their own adapters/rulings are verified. The accepted receipt is server-issued but not cryptographically signed; this path does not claim malicious-save authentication.
Secret Ally protection
With Fremen absent, wormSurvival currently proceeds directly to destruction. The protection must be committed before that destruction; it cannot revive already devoured troops, prevent removal of spice, or grant a ride. Bind it to one worm occurrence and the holder's affected physical group, including the existing No-Field reveal/capped-materialization path. Other factions remain vulnerable.
A pause offered only when the threatened player secretly holds this card would disclose possession. Do not add a holder-dependent automatic stop or an unsolicited confirmation for every victim. This intersects the existing unanswered reaction/automatic-pass policy. A saved public occurrence may support a future permitted response design, but it is not authorization to pick that design here. No source found gives the absent-faction card blanket Karama susceptibility; do not reuse a native Fremen cancellation response without establishing its classification.
Secret Ally revival
The card's total-of-three wording and the native alliance's ordinary free-three benefit support a free-rate interpretation within ordinary revival accounting, rather than three additional counters beyond the usual allowance. This is source composition, not an explicit Nexus FAQ. Preserve it as the proposed contract; do not silently apply Emperor's separate extra-return producer. The current first path is a deliberate subset of that proposed contract: with Fremen absent, an unallied base-faction holder in Basic or Advanced Revival may spend the physical Nexus card to transfer exactly three eligible forces from Tanks to reserves at zero spice cost. It is available before any ordinary force return, with no competing expansion/module revival modifier, pending response or decision. The three returned forces consume the ordinary allowance and free-force ledger; they are not Emperor-style extra returns. The Advanced one-elite-per-turn cap and physical elite census apply. The server's private offer provides the eligible elite counts; the action validates its current turn and group. A signed before/after receipt and independent event markers persist through JSON saves.
The bounded classic Tech/Advanced Stronghold composition now calls the existing Axlotl activity hook after this actual free batch; spice stays on the token until native phase-end settlement, without changing these ordinary ledgers. See the composition contract. Tleilaxu income and Homeworld arrivals remain excluded: those broader continuations require the native pending-revival pipeline, not this quiet transfer. Fewer-than-three Tanks, previous force returns and higher free rates/modifiers still remain unavailable rather than guessing a ruling. Protection remains unimplemented; Cunning's bounded path is separate.
The separate fresh classic leader-skills --nexus-cards composition preserves
the same ordinary/free-three ledgers, zero wallet cost, actual counters and
Advanced one-elite cap with all14 original skills, without Tech/Strongholds
or other overlays. It does not change physical training, grant leader revival,
reset prior returns or settle worm-protection reactions. Scope and bounded
proof
remains separate from complete Fremen/Nexus certification.
game/revival.ts already computes free rate/remaining from p.revived, typed prices and ordinary limits. Engine beginRevival/finishRevival retains pending requests and Tleilaxu prevention/income continuations. The future combined-mode adapter should be an explicit source-labelled, phase-bound free-rate entitlement consumed by an actual normal revival request, retaining previous returns and exact free/paid normal/starred allocation. Never refund earlier paid revivals or reset revived/elite counters on card play or reload.
Keep these questions visible: how the three-total interacts with a higher native free rate, prior paid/free returns, low-Homeworld bonus and Recruits; whether a partial group below three is permitted when Tanks cannot supply three; and whether the benefit survives La La La or Tleilaxu prevention. The existing revival audit and Homeworld benefit audit do not by themselves answer differently worded Nexus composition.
Tleilaxu may be present even though Fremen is absent. collectRevivalIncome uses a per-player/turn free-income marker and a separate Ghola path; do not create another payment merely because a Nexus card was played. Axlotl activation and any eligible Homeworld deployment must follow the actual returned batch. Preserve the existing revival-accounting questions, exact typed caps, and signed return/arrival continuations. No leader, Cheap Hero or foreign leader revival is printed here.
Verification and remaining boundaries
Focused pure and engine checks exercise Basic and Advanced real second-turn empty natural appearances, accepted Advanced additional placement and an actual special-Karama summon, a public offer with and without the private card, card spend, Karama allowance/cancellation, post-Nexus ride, typed source custody, owner-only card view, rejected actions, legal bot movement and JSON normalization before/after the response. Pure quotes cover originally occupied appearances that later empty, advisors/No-Fields as presence, multi-sector starred sources, storm and occupied destinations, and inherited-object-key rejection. Isolated in-memory SQLite room tests race duplicate accepted natural and summoned offers, restore private seats and parent Spice Blow context through fresh room instances and prove a canceled or completed ride settles once. Local browser fixtures rendered both natural and summoned owner/non-holder offers, Karama waiting and remote source/force/destination controls from genuine engine views; intercepted GETs and blocked POSTs did not mutate a room.
Still verify both Advanced pile identities end to end, Sandtrout suppression, nested arrival effects, wider reconnect scenarios and complete games. Great Maker, nested Cunning summons and combined optional modules are intentionally unavailable for this Cunning prototype. Fremen Secret Ally protection and the broader revival accounting above remain separate. These checks do not certify a complete Nexus module.