Connect native Fremen Nexus effects across selected modules

Retain actual Cunning appearances, paid Karama and typed remote riding with optional Sandmaster collection and source-parent HMS entry. Preserve Betrayal movement sources and apply its declared worm restriction to Great Maker reserve riding without suppressing votes or casualties. Completed Maker history no longer blocks a later ordinary offer.

Validation: frozen 14-file86/86, types/lint/build, nine finite original-action/rendered-control programmes, four minimal legal policies. Discovery destination proof remains focused quotes pending actual arrival; full combinations, assurance and deployed acceptance remain required. No saved-game, restart or deployment operation.
This commit is contained in:
Quintine committed 2026-10-18 11:35:59 +11:00
1 parent bb9d292c4c
commit b4157aaa9b
20 files changed
+1349 -41

No files matched your search

+59
View File
@@ -2,6 +2,58 @@
Primary-source and integration audit, 10 September 2026, with dated Secret Ally revival, protection and native Cunning prototypes. These bounded paths do not certify complete Fremen/Nexus effects or open a release gate. The [common Nexus rules](NEXUS_CARD_RULES.md) apply.
## Native modules, remote riding and Great Maker — 18 October 2026
**Prototyped / Partial.** Native Fremen Nexus
effects now use the original initialized card module and registered selected
roster rather than a classic-only configuration gate. Original host setup and
module prerequisites still apply; no played game is converted or given a card.
Worlds, training, phase modules and selected independent decks retain the same
actual appearance, physical card cost, Betrayal declaration and typed ride.
An ordinary initially empty worm offers the same public native Cunning choice
whether Fremen holds the card or not. Actual entitlement controls spending;
the original worm, applicable Nexus and ordinary rides finish before the
authenticated remote ride. All selected normal/Fedaykin counters come from one
printed desert; reserves, Homeworlds and Discovery strongholds are not desert
sources. Room-local revealed Discovery destinations use their actual locations.
HMS entry requires its actual pointer's parent to match the chosen source
territory; its structure is not moved by the ride. Hidden/unplaced destinations,
storm and occupancy retain their own entry restrictions.
A living available native Sandmaster can collect one spice at the remote ride's
destination. Collection is optional and uses the original shared destination-
pile quote; multiple source sectors do not multiply it. No source or imagined
intermediate territory supplies spice. The same multi-pile choice convention
as ordinary worm riding remains provisional. This still uses neither ordinary
movement nor a reserve shipment.
The [publisher E3 rules, printed12](https://www.gf9games.com/dune/wp-content/uploads/EcazMoritani-Rulebook-LOWRES.pdf#page=12)
and supplied revision physical23/logical21 replace ordinary board-origin
riding with Great Maker reserve riding; native Karama killing the board group
does not cancel that reserve ride.
Under the recommended source composition, predeclared turn-long Fremen Nexus
worm-riding prevention therefore also suppresses the reserve ride; votes,
destruction, spice and the actual Nexus continue. This is not a newly located
Nexus/Great Maker FAQ or a Karama cancellation. The replacement encounter itself
does not invent another Cunning board ride. Its completed historical frame does
not suppress a later ordinary empty-worm appearance.
Source and pure helpers: `game/fremen-nexus-profile.ts`,
`game/nexus-fremen-cunning.ts`, `game/nexus-fremen-betrayal.ts`,
`game/sandmaster-worm.ts`. Original-action fixtures and focused module cases
accompany these helpers; complete combinations, comprehensive assurance,
full AI and deployed acceptance remain open.
The owner-frozen **14 files86/86**, types/lint/build and nine finite original-
action/table-SSR programmes pass. Original paid Karama supplies a real response;
typed World/all14 riding, Sandmaster, HMS and both Betrayal modes use actual
setup/actions. A genuine Maker/second-pile sequence proves the completed-frame
fix. Four legal policies retain Cunning and both declarations. Discovery
destinations have focused pure quote evidence; their genuine arrival and
comprehensive combinations remain due. [Shared checkpoint](NEXUS_CARD_RULES.md#native-fremen-nexus-modules--18-october-2026)
records counts, fixture corrections and render/deployment limits.
## Evidence
The Fremen panel was freshly read from the [photograph of the printed GF9 cards](https://boardgamegeek.com/image/7767032/dune-ecaz-and-moritani), 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.
@@ -14,6 +66,10 @@ The [E1 FAQ, p.11](https://www.gf9games.com/dunegame/wp-content/uploads/2020/09/
## Bounded Betrayal: movement and worm riding
The initial classic-only envelope below is historical; the native module
extension above supersedes it. Its advance-declaration timing remains a
prototype boundary rather than a universal reactive-priority ruling.
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
@@ -79,6 +135,9 @@ Two interactions need a concrete decision before treating this as a complete fea
### Connected native Cunning path
The initial module exclusions below are historical; the native extension above
supersedes them. Original appearance, cancellation and ride ownership remain.
`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 and Nexus, optionally retaining original Tech Tokens3+ and/or Advanced Stronghold Cards2+. Skills, Homeworlds, Discovery and expansion factions/decks stay outside this Cunning boundary. 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.