287 lines
17 KiB
Markdown
287 lines
17 KiB
Markdown
# Sandmaster movement collection
|
||
|
||
13 September 2026. **Prototyped**, with **Partial** rules coverage. Ordinary
|
||
ground movement now connects the normal band through explicit routes, optional
|
||
collection, player controls, all four AI profiles and saved continuation.
|
||
This does not open public Leader Skills starts or publication.
|
||
|
||
## Flight and concealed-marker routes — 26 October 2026
|
||
|
||
Sandmaster's physical normal band applies when moving owned forces into or
|
||
through a territory with spice; it excludes none of the three flight sources.
|
||
The [physical Ornithopter](RICHESE_ORNITHOPTER_ENGINE_AUDIT.md#authority) changes
|
||
range or grants two different normal movements, and Discovery E3p13 changes
|
||
range for one later movement action. Neither removes route collection. The
|
||
[No-Field contract](RICHESE_NO_FIELD_RULES.md#verified-lifecycle) counts a
|
||
concealed marker as one force, including0. Compose these effects under existing
|
||
14 October authority; no joint publisher FAQ is claimed.
|
||
|
||
Physical range3 and carried Discovery use a maximum of3. Physical twoGroups
|
||
uses each group's current normal range. Each accepted movement gets its own
|
||
one-per-entered-territory opportunity under the existing provisional reset
|
||
policy, so a second different group can collect there again if spice remains.
|
||
The source territory grants no bonus without actually re-entering it. Each
|
||
territory selects one current positive pile or declines, retaining the existing
|
||
provisional sector-allocation policy. Declining collection does not decline
|
||
movement or preserve a spent card/token entitlement.
|
||
|
||
The original chosen route is authoritative, including a legal detour longer
|
||
than the shortest path. Current route bounds, storm/entry and typed force/marker
|
||
cohorts still apply. A physical flight fingerprint binds original card, event,
|
||
mode and completed-group index; Discovery binds token/acquisition turn alongside
|
||
its original parent receipt. The signed Sandmaster order retains exact source,
|
||
range, route, pile amounts, trainer and move. Legacy ordinary orders add no new
|
||
fields. No circular signature or public receipt is required in the action.
|
||
|
||
Marker-only routes remain concealed and do not materialize or debit reserves.
|
||
Selected physical counters at the same marker sector share one declared route.
|
||
Its value supplies no extra range or collection. First-flight arrivals do not
|
||
enlarge the remaining original cohort, and spice income adds no counters or
|
||
movement credit. The second movement requotes current piles. Original card/
|
||
token disposal and earned allowance occur once through their existing flow.
|
||
|
||
The form offers ordinary/card/token transport before validating its source
|
||
route, keeps route editing and selected-pile/decline controls, and guards the
|
||
actual callback with current transport and signed quote. Minimal policy adds
|
||
the same deterministic legal route choice while retaining original candidates
|
||
and destination priority. Other normal-band skills and special relocations
|
||
retain separate adapters. No saved root field, action kind or module gate opens.
|
||
|
||
**Frozen evidence:** v3 passes14 files,130/130, types/lint/build and18 engine/
|
||
GameTable SSR/actual selected-props callback paths. Eight genuine public physical
|
||
paths earn cache card1, four-counter shipment8 and actual produced Spice,
|
||
using Basic73 / Advanced79 source actions. Four public Discovery paths earn
|
||
original Collection acquisition and a later real Spice blow, using Basic65 /
|
||
Advanced71 actions. Two-to-four continuations finish Collection, with45 physical-
|
||
family or33 classic Treachery,14 Skills and15 Traitors retained. Six explicitly
|
||
controlled marker paths supplement the12 native paths; no played positions,
|
||
shipment or blow provenance is claimed for those supplements. Eight physical,
|
||
seven Discovery, fifteen control and thirteen marker cases cover the slice and
|
||
minimal policies. Positive source-pile exclusion in the Discovery seam is a
|
||
controlled supplement; native source spice is preserved at its actual value,
|
||
including0. Feedback corrects that earlier remainder assumption, projection
|
||
narrowing and a reserved test variable.
|
||
|
||
Report/logs: private `20261026-sandmaster-flight-proof-v3/` under
|
||
`/home/quintine/.local/share/dune/checkpoints/`; journeys/HTML: adjacent
|
||
`20261026-sandmaster-flight-runtime/`. No saved-room/D1/server, reset/restart,
|
||
deployment or recovery operation. SSR/selected-props callbacks do not certify
|
||
DOM/hydration, browser/mobile/deployed acceptance, full combinations or modes.
|
||
|
||
## Owned ground-route pile selection — 9 October 2026
|
||
|
||
Ordinary ground movement now offers every existing positive pile in each
|
||
entered territory. The owner selects at most one pile per territory, or
|
||
declines that territory's collection. Choosing another pile deselects the
|
||
previous one; clearing the selected checkbox declines the whole territory.
|
||
The source grants one spice per territory but does not specify the debit
|
||
sector, so owner selection is explicitly a provisional allocation policy.
|
||
|
||
The shared `sandmasterCollectionPiles` quote groups offered keys by entered
|
||
territory. Human controls and legal AI start with one deterministic choice
|
||
per group; authoritative validation rejects two selected sectors from the
|
||
same territory before forces or spice move. Signed original route and pile
|
||
receipts retain their existing continuation behavior.
|
||
|
||
Both mode engine smokes choose South Mesa sector5 instead of sector4,
|
||
collect once there and once in Cielago East, preserve the unselected pile,
|
||
and move three physical forces. All four profiles produce legal collected
|
||
routes. An isolated 390px Chromium control smoke switches the sector,
|
||
declines/reselects the territory, and commits the same move: personal
|
||
spice10→12, South Mesa4 remains4, South Mesa5 becomes1, Cielago East3
|
||
becomes3, and three forces arrive in Cielago East.
|
||
|
||
Destination relocation choices are separate from these ground-route controls;
|
||
physical Fremen Ambassador allocation is recorded below and worm collection
|
||
in [its own contract](SANDMASTER_WORM.md). Native HMS relocation now has
|
||
the owned-pile control described below. No public start or broader source
|
||
adjudication is opened by this ground-route change.
|
||
|
||
|
||
## Owned native HMS pile allocation — 9 October 2026
|
||
|
||
Storm relocation and Advanced Ixian special Karama now offer one Sandmaster
|
||
debit pile per entered territory, or an independent decline of that bonus.
|
||
The global collection opt-out still declines all collection. The shared
|
||
quote requires a living native Ixian trainer and actual interior passengers.
|
||
Explicit `sandmasterPiles` declarations preserve the exact chosen keys
|
||
through native cancellation and special-Karama preparation/reconstruction.
|
||
Ambiguous undeclared or duplicate-territory selections reject before cost.
|
||
|
||
Sandmaster debits first, then the unchanged native collection uses the
|
||
traversed sectors and two-spice-per-passenger cap. The route preview follows
|
||
the same order, including repeated sector visits. With six passengers,
|
||
Arsunt11 holding12 and Arsunt12 holding5, choosing11 earns12 total;
|
||
choosing12 earns13, leaves Arsunt12 at4 and drains Arsunt11. Native
|
||
cancellation moves neither pointer nor spice. Older queued moves without
|
||
the new selection retain their original unambiguous-pile behavior.
|
||
|
||
Owner sector allocation is provisional, not publisher adjudication; the
|
||
7 October user eligibility/order ruling is unchanged. Basic/Advanced
|
||
native smoke, selected-key JSON continuation, cancellation, all four legal
|
||
policies and a labelled Advanced special-Karama seam pass. At390px,
|
||
the real control changes the preview12→13, declines/reselects the bonus
|
||
and completes the native route with personal spice10→23.
|
||
|
||
## Physical Ambassador owned-destination allocation — 9 October 2026
|
||
|
||
Physical Fremen Ambassador relocation now offers every existing positive
|
||
destination-territory pile and collects at most one spice from exactly one
|
||
chosen sector before physical arrival and its reactions. The checkbox remains
|
||
optional. With multiple legal piles, the real relocation control shows their
|
||
sector quantities as before→before−1, defaults to the first legal pile, and
|
||
allows another sector. Changing source or destination resets the selection;
|
||
an unavailable selection cannot strand the draft. Declining sends no pile key
|
||
and transfers no spice.
|
||
|
||
`sandmasterCollect: true` with multiple positive piles requires an explicit
|
||
`sandmasterPile` key. A single-pile boolean declaration remains valid. Native
|
||
validation rejects missing, malformed, foreign, unknown or exhausted selections
|
||
before force or spice mutation. The shared `sandmasterDestinationCollection`
|
||
quote supplies the legal piles and the selected quantity; `ambassadorSandmaster`
|
||
retains the exact native trainer, key and original quantity as its frozen proof.
|
||
Stored continuation revalidates that same key, not a fresh default; a committed
|
||
arrival interruption resumes without collecting twice.
|
||
|
||
Choosing the debit sector is **provisional owner allocation**, not a publisher
|
||
ruling: the source grants one spice for entering the territory but does not
|
||
name its sector. Same-territory moves, living-native skill eligibility,
|
||
concealed-marker restrictions, typed forces, ordinary allowances and the
|
||
original Ambassador event remain unchanged. This does not change ground-route
|
||
or native HMS eligibility, add spice or invent intervening sectors.
|
||
|
||
Focused native-engine cases now cover Basic/Advanced alternate-pile allocation,
|
||
decline, invalid declarations without mutation, living-trainer restrictions and
|
||
collection before a JSON-restored Intrusion continuation. Integrated native
|
||
smoke in both modes chooses South Mesa5 (2→1), preserves Mesa4 at4,
|
||
lands two forces in Mesa4 and credits spice20→21 without ordinary
|
||
shipment/movement use. At390px, the actual control changes destination,
|
||
resets the pile selection, opts out/reselects and commits the same result.
|
||
The 8 October rejection evidence below remains a dated checkpoint, not
|
||
the current multi-pile policy.
|
||
|
||
## Physical Fremen Ambassador relocation — 8 October 2026
|
||
|
||
The Ambassador expressly relocates a board force group. The normal
|
||
Sandmaster movement band now optionally collects one spice at its entered
|
||
destination, before arrival reactions. No intervening route is implied.
|
||
Moving between sectors of the same territory earns none. The existing
|
||
living native trainer, supported-profile and unique positive pile rules
|
||
remain; concealed-marker relocation is still separate.
|
||
|
||
`sandmasterDestinationCollection` is shared by this direct relocation and
|
||
the existing worm adapter. Human controls expose a checked, optional
|
||
destination collection choice; bots attach it only to an eligible physical
|
||
relocation. Native quoting records the trainer and exact pile in
|
||
`ambassadorSandmaster`, distinct from ordinary ground-route receipts.
|
||
Suspended CHOAM movement revalidates that receipt through the original
|
||
Ambassador event. Cancellation collects nothing; commit transfers one
|
||
board spice once before the original arrival continuation.
|
||
|
||
Basic and Advanced direct smokes cover collection, decline, same-territory
|
||
and multiple-pile rejection. A bounded owned-destination Easy candidate
|
||
reaches the real relocation engine. The adjacent native Advanced worm
|
||
still transfers one spice and moves four forces. In Chromium, live React
|
||
controls ran against the native engine: Basic collection produced
|
||
spice21/board1, Advanced opt-out spice20/board2, both with destination2
|
||
forces, unchanged ordinary allowances and completed Ambassador events.
|
||
This is an isolated component/engine smoke, not HTTP or deployed acceptance.
|
||
No broad suite or recovery campaign was run.
|
||
|
||
|
||
## Source contract
|
||
|
||
The physical card and [Jack Reda's designer walkthrough, 15:48–16:08](https://www.youtube.com/watch?v=XT_azRVLq_0&t=948s)
|
||
allow immediate collection of one spice when forces move into or through a
|
||
territory containing spice, once per territory. The [GF9 CHOAM & Richese rules,
|
||
pages 8–9 and 12](https://www.gf9games.com/dune/wp-content/uploads/2021/11/CHOAM-Rulebook-low-res.pdf)
|
||
require a living native trainer for this normal band; a captive supplies only
|
||
the lower battle band. Common skill resolution precedes faction abilities.
|
||
The [existing source archive](LEADER_SKILLS_RULES.md#sources-and-local-evidence)
|
||
contains the checked physical face and timestamped designer transcript.
|
||
|
||
The route's initial territory earns nothing merely for being the source.
|
||
Crossing into an intermediate or final territory qualifies, independently of
|
||
the number of moving forces. A later legal re-entry into the source can qualify;
|
||
each distinct entered territory still grants at most one collection. Moving
|
||
between sectors without leaving the source territory earns nothing. The card
|
||
says territory, so the route need not touch the spice pile's particular sector.
|
||
Storm and stronghold passage restrictions still apply.
|
||
|
||
**Recorded scope inference:** the once-per-territory limit belongs to the
|
||
movement that triggers it. A distinct Hajr movement starts another collection
|
||
opportunity. No publisher or designer clarification specifically discussing
|
||
Hajr was located; this follows the card's movement-triggered grammar rather
|
||
than introducing a once-per-phase limit that the card does not state.
|
||
|
||
Collection commits when the legal move completes, before arrival reactions.
|
||
Canceled or rejected declarations move neither forces nor spice. With
|
||
several positive sector piles, ordinary ground routes now use the
|
||
provisional owner selection above. The once-per-entered-territory limit
|
||
does not become one collection per pile.
|
||
|
||
## Implementation and verification boundary
|
||
|
||
The optional movement choice declares a connected sector route from every
|
||
selected source sector and the individual territories to collect from. The
|
||
engine validates the exact paths against actual range, storm and occupancy.
|
||
It records the native skilled leader, original movement and pile quantities.
|
||
The same shared helper supplies default routes and collection choices to humans
|
||
and bots. Players may edit each route and decline any or all collection;
|
||
ordinary Move retains its existing behavior with no Sandmaster collection.
|
||
|
||
A Fremen route using its two-territory advantage keeps the choice in the saved
|
||
movement response, even when a shorter direct route reaches the same endpoint.
|
||
The response is bound to the original choice across interruptions. Changing or
|
||
removing the commitment, response or original board spice fails validation.
|
||
Internal proofs are excluded from player projections. Existing versioned writes
|
||
settle the physical board-to-player transfer once, with automatic explanatory
|
||
history. Legacy declarations without a choice continue as ordinary movements.
|
||
|
||
Focused tests cover Basic/Advanced collection, per-territory opt-out, malformed
|
||
and blocked routes, custody, Fremen cancellation and recovery, saved corruption,
|
||
private views and legal candidates across four AI profiles. SQLite checks include concurrent final allowance, exact payment, canceled
|
||
declarations and legacy movement. Two genuine four-profile Basic/Advanced
|
||
samples finished in 196/89 actions with 6/3 JSON restorations and no rejected
|
||
candidates; neither encountered Sandmaster collection. Targeted tests establish
|
||
that effect. A fresh browser room assigned the offered skill through genuine
|
||
setup, then used a conserved staged movement. The player edited the route from
|
||
Red Chasm through South Mesa to Pasty Mesa, exercised per-pile opt-out and moved
|
||
three forces. Both selected piles lost one spice; own spice rose from five to
|
||
seven. Refresh retained three Pasty Mesa forces, one Arrakeen force, sixteen
|
||
reserves, no Tanks and the same private Crysknife and Caid. Movement completion
|
||
awaited the human. This is targeted browser evidence, not a complete human game.
|
||
Broad checkpoint results are recorded with the checkpoint. These checks do not certify every skill or combined module.
|
||
|
||
The [worm-ride follow-up](SANDMASTER_WORM.md) connects native Fremen destination
|
||
collection, including saved arrival reactions. Physical Fremen Ambassador
|
||
relocation is connected above. Other nonordinary relocations, special cards,
|
||
concealed-marker collection and wider interaction/strategy acceptance remain.
|
||
The lower battle band is in
|
||
[the battle-effects contract](LEADER_BATTLE_EFFECTS.md).
|
||
|
||
## 21 September: native HMS relocation eligibility
|
||
|
||
The [Basic Ixian integration](IX_LEADER_SKILLS.md) connects ordinary force entry
|
||
and exit through the current HMS pointer. Native relocation is a different event:
|
||
it changes the stronghold's pointing sector while its forces remain in the
|
||
separate interior territory. Calling a further Sandmaster collection a known
|
||
missing bonus was too strong; eligibility is unresolved.
|
||
|
||
The [publisher-authored Ix rules, pages 9 and 11](https://cdn.1j1ju.com/medias/20/16/31-dune-ixians-tleilaxu-rulebook.pdf)
|
||
give native collection of two spice per force from traversed spice-containing
|
||
sectors, including departure, and prohibit movement into, out of or through the
|
||
storm. Sandmaster instead requires forces moving into or through a territory
|
||
and grants one total spice per entered territory. The
|
||
[official November FAQ, page 7](https://www.gf9games.com/dune/wp-content/uploads/2020/11/Dune-FAQ-Nov-2020.pdf)
|
||
allows Karama to prevent HMS relocation and collection together.
|
||
|
||
The checked card, designer walkthrough and available official rules did not
|
||
clarify whether passengers staying in the interior count as entering outside
|
||
territories. **Resolved 7 October 2026 by user ruling:** interior passengers
|
||
**do count as entering** the outside territories the stronghold points into, so
|
||
the Sandmaster skill collects one spice per entered territory before the
|
||
faction's own traversed-sector collection. The 9 October owner-allocation
|
||
prototype above extends the earlier unambiguous-pile path; it does not
|
||
change the user ruling. Full combined compliance remains unverified.
|