Prototype Planetologist movement and Special-card battles

Connect capped extra range, two-origin gathering, Fremen cancellation and
saved replacement choices. Add human controls and actual first-choice AI
paths for all four profiles. Admit the exact nine base green Specials in
the actual skilled leader's weapon slot for +2 on survival, with mandatory
physical discard and no native utility effect. Reject stale dead-disc plans.

Independent movement/battle review closed after the saved-dead-disc fix.
84 focused tests passed. Two four-profile Basic/Advanced samples completed
(194/186 accepted actions, six JSON restorations each, zero rejected actions).
Basic used both movement branches; Advanced used added range. Browser genuine
setup/gather/refresh and a separate targeted Special/traitor-loss fixture passed.

Required verification: types, lint, 4435 offline tests, build and 43 HTTP tests
passed. First attempt stopped at missing explicit test promise markers;
corrected before the successful broad run. Final check/build/HTTP durations:
144157/6638/25048 ms. Source fingerprint (1260 files):
bb7be69cf3e925bf7338ea444f77279ed7b37faadc3c44ed7db01b941f27b861
Private report: checkpoints/20260913-planetologist/checks-final/report.json.

Preserved all 325 opening games and all original application/seat/recovery
records; 359 rooms after 34 new QA/HTTP rooms. SQLite quick_check ok and zero
foreign-key violations. Healthy existing server reused; no reset/restart.

Boundaries: eight other Leader Skills, enemy-only mixed BG gather response,
expansion roster/green-card/optional-module combinations remain unfinished.
Winning traitor caller discard remains a documented card-specific inference.
No mode or publication gates opened.

Efficiency measure: aggregate goal counter 67321978 -> 68710948 (1388970),
including context and coordination; not billing tokens or a savings claim.
One skill's three connected effects, selective implementation/research/review,
one interrupted lint attempt followed by the required complete verification.
This commit is contained in:
Quintine committed 2026-09-13 18:16:36 +10:00
1 parent 6e6fecc9d4
commit 5082c81353
22 files changed
+2473 -93

No files matched your search

+2 -1
View File
@@ -4,7 +4,8 @@
now have sourced names and complete paraphrased normal/battle text, shared
inspectors, private two-card offers and one-card assignment custody. Five role
bonuses, public skilled capture, death return and own revival are connected;
nine effects remain missing. This supersedes the historical missing-inventory
Planetologist now also has movement and base green-Special battle controls;
eight effects remain missing. This supersedes the historical missing-inventory
rows below only for Leader Skills. See [source inventory](LEADER_SKILLS_RULES.md),
[capture interpretation](LEADER_SKILLS_CAPTURE.md) and [prototype evidence](LEADER_SKILLS_RUNTIME.md).
+9 -2
View File
@@ -4,6 +4,13 @@ Updated 13 September 2026. This is the short navigation dashboard; detailed evid
## Evidence and source of truth
- [Planetologist](PLANETOLOGIST_RULES.md) now has bounded movement and Special-card
battle prototypes. Independent review and **84 focused tests** pass. Two genuine
four-profile Basic/Advanced samples finished with saved continuations and no
rejected actions; the Basic sample used both movement alternatives. Browser
gather, Special substitution and refresh were exercised in a new isolated room.
All 325 opening games remain preserved. The existing server was healthy after
the outage report, so it was reused. Broad results are in the checkpoint commit.
- [Juice of Sapho](JUICE_OF_SAPHO_RUNTIME.md#13-september-first-at-a-later-clean-movement-boundary)
now connects first among remaining unstarted movement turns after earlier
turns finish, including after Advanced Guild completes its turn. Existing
@@ -12,8 +19,8 @@ Updated 13 September 2026. This is the short navigation dashboard; detailed evid
review and focused checks pass; broad results are in the checkpoint commit.
- The [first Leader Skills prototype](LEADER_SKILLS_RUNTIME.md) connects all
fourteen physical cards, private setup, five battle disciplines, skilled capture,
death and own revival through controls, legal AI and saved choices. The other
nine effects remain **Missing**. The user-requested [capture search](LEADER_SKILLS_CAPTURE.md)
death and own revival through controls, legal AI and saved choices. The [Planetologist follow-up](PLANETOLOGIST_RULES.md) adds movement and
Special-card battle controls; the other eight skills remain **Missing**. The user-requested [capture search](LEADER_SKILLS_CAPTURE.md)
resolves publicity through the known physical card; captured replacement and
broader combinations remain pending. No mode gate is opened.
- Following the reported power outage, the existing server responded normally,
+41
View File
@@ -1,5 +1,46 @@
# Dune implementation status
## 13 September 2026 — Planetologist movement and green-Special battle prototype
[Planetologist](PLANETOLOGIST_RULES.md) now connects capped extra range, a single
movement from two territories to one destination, and the surviving skilled
leader's +2 green-Special battle substitution. Fremen cancellation preserves the
independent skill bonus and both saved origins. Human controls, all four bot
profiles and authoritative saved continuations use shared eligibility/range rules.
The exact nine base Specials retain physical custody and never activate their
normal effects through the battle slot. Mandatory discard includes traitor wins;
that later-card-specific reading remains explicitly identified as an inference.
Independent review fixed stale saved battle plans accepting an already-dead skill
leader; the original reproducer now rejects without mutation. Another integration
check found appended skill moves were bypassed by ordinary candidates: they now
share the existing public destination ordering. All four profiles actually choose
and legally execute range and gather moves in targeted first-choice fixtures.
The final focused union passed **84 tests**. The first broad run stopped at
lint because six new test declarations lacked the required explicit promise
marker; those declarations were corrected before repeating the checkpoint check. Two four-profile sample games finished:
Basic seed 20260916, 194 accepted actions and six JSON restorations (range and gather
both executed); Advanced seed 20260917, 186 accepted actions and six restorations
(range executed). Neither rejected a proposed action. These are bounded samples,
not AI calibration or complete module/combination acceptance.
Fresh browser room `TQWK5AEY` used genuine Fremen/Emperor setup and selected
Planetologist/Stilgar. The range-three control became available, then a real gather
moved two Sietch Tabr forces and one False Wall West force to Wind Pass using one
movement. Refresh restored 5/2/3 forces, the private Crysknife/Burseg and the skill.
A separate targeted battle fixture in this new QA room relocated one physical
Family Atomics from the deck and placed Emperor reserve forces. The actual weapon
selector, plan reveal, traitor loss and mandatory discard were exercised. The
Shield Wall remained intact; dead Stilgar returned the skill, and refresh preserved
the remaining hand and losses. This fixture is not a naturally reached full game.
The server remained healthy after the user's outage report; no restart was needed.
All 325 opening rooms were privately backed up and unchanged after browser QA;
one new test room was added. Required broad checks and final preservation counts
are recorded in the checkpoint commit and source-bound private report. Eight
other skill effects, enemy-only mixed BG gather arrival, expansion rosters/cards
and optional-module combinations remain unfinished. No public gate is opened.
## 13 September 2026 — Leader Skills setup, five disciplines and skilled capture
The [first connected prototype](LEADER_SKILLS_RUNTIME.md) adds all fourteen
+19 -3
View File
@@ -18,7 +18,7 @@ Human controls show each permitted card's normal and battle text, select its
leader, choose battle posture, and handle an optional own-leader revival draw.
An undrawn revival offer shows no preview; drawing obliges a selection. All four
AI profiles follow the same private offers and legal actions, prioritizing the
five connected disciplines and hiding the assigned leader for battle. This
five battle disciplines during skill selection and hiding the assigned leader for battle. This
simple policy is not calibrated skill strategy.
Warmaster, Master of Assassins, Swordmaster of Ginaz, Killer Medic and
@@ -61,8 +61,24 @@ Foreign gholas, expansion rosters and combined optional modules remain gated.
Before enabling them, add response-driven automatic revival continuation
coverage; the current before/after revival observer does not certify deferred
Tleilaxu response chains. The other source-contract timing questions also remain
open. Skill-specific movement, payments, information, rescues and retreats need
their own connected controls and saved choices.
open. Planetologist now has bounded movement and battle controls as described below.
The other eight skills still need their payments, information, rescues, retreats
and other effects connected.
## Planetologist follow-up
[Planetologist](PLANETOLOGIST_RULES.md) connects the explicit capped range bonus,
two-origin movement to one destination, Fremen cancellation/replacement and a
surviving skilled leader's +2 green-Special substitution with mandatory discard.
The movement panel and weapon selector expose those choices; all four AI profiles
can use the same physical action paths. Pending movement receipts survive JSON
continuation and revalidate source custody before a response is spent.
Six base factions remain the supported roster. Mixed BG origins are supported
where ordinary rules determine the destination stance. Enemy-only mixed arrival
still needs a combined flip response. Expansion faction/card/module combinations
and full integrated acceptance remain unfinished. Eight other skill effects are
still missing; this is partial prototype coverage.
## Local prototype entry and evidence
+216
View File
@@ -0,0 +1,216 @@
# Planetologist rule contract
Updated 13 September 2026. This note audits the movement and battle effects of the
Planetologist Leader Skill against its physical card, the common Leader Skills
rules, the GF9 base battle rules and designer Jack Reda's walkthrough. The connected prototype is described below; other Leader Skill effects remain separate work.
## Printed effect and legal card role
The physical Planetologist card instructs its owner to reveal one green
Special card, other than a Cheap Hero, as part of the Battle Plan “in place of
a weapon.” It adds 2 to that skilled leader disc and says to discard the
Special after the battle. The card therefore creates a distinct legal role for
the physical Special card:
- it occupies the Battle Plan's weapon slot;
- it is revealed as a Special used in place of a weapon, rather than converted
into a Weapon Treachery Card;
- it supplies no projectile, poison, lasgun or other attack and does not satisfy
a skill or rule that requires an actual named Weapon type;
- its printed utility effect is not activated; and
- the exact physical card is committed to that plan and cannot also be spent
for its ordinary effect, Karama, Truthtrance or another pending use.
The designer gives Hajr and Thumper as examples, then specifically describes
using Family Atomics for +2 without blowing the Shield Wall. This confirms
that Planetologist grants an alternate battle use despite the Special card's
ordinary phase or trigger. [Jack Reda walkthrough,
10:36–11:05](https://www.youtube.com/watch?v=XT_azRVLq_0&t=636s)
The substitution is available only when the assigned Planetologist leader is
the leader actually used in the Battle Plan. Moving the skilled leader and
skill card behind the shield as a bluff, then selecting another leader, turns
off both skill bands. The other leader cannot place a green Special in the
weapon slot through Planetologist. [GF9 *CHOAM & Richese* rulebook,
p. 9](https://www.gf9games.com/dune/wp-content/uploads/2021/11/CHOAM-Rulebook-low-res.pdf)
## Current base-deck inventory
The current 33-card base deck contains these eligible printed green Special
cards:
| Printed card | Physical copies | Current identities |
|---|---:|---|
| Family Atomics | 1 | `effect: atomics` |
| Weather Control | 1 | `effect: weather` |
| Hajr | 1 | `effect: hajr` |
| Tleilaxu Ghola | 1 | `effect: ghola` |
| Harvester | 1 | `effect: harvester` |
| Karama | 2 | `effect: karama` |
| Truthtrance | 2 | `effect: truthtrance` |
All nine physical copies may take the Planetologist weapon-slot role. Their
ordinary timing does not need to be legal because that printed effect is not
being played. A pending or already committed physical card remains unavailable
because Planetologist does not create a second copy.
Cheap Hero and Cheap Heroine are printed green Special components but are
excluded. “Cheap Hero” is the rules' generic component class for both named
copies; each instead occupies the leader position with strength zero. The base
FAQ also says a Cheap Hero cannot substitute for a weapon or defense.
[GF9 base rulebook and Q&A, pp. 10,
23](https://www.gf9games.com/dunegame/wp-content/uploads/Dune-Rulebook.pdf)
For today's `baseDeck()`, `kind === 'special'` happens to select the nine
eligible non-Hero copies. That coincidence is not the printed rule. Eligibility
should be bound to a canonical printed-green-Special classification or explicit
physical identities, because the code's generic `special` kind is also used by
later expansion modules. The designer's Thumper example proves that expansion
cards can qualify, but it does not make every future card encoded as `special`
green or eligible.
## Survival and scoring
The common Leader Skills rule says a skill applies in the current battle unless
its assigned leader is killed in that battle. Planetologist adds 2 to the leader
disc, so the receipt is conditional on that exact leader surviving weapon,
traitor and explosion resolution. If the leader dies, neither its printed
strength nor the Planetologist +2 contributes to the battle total.
[GF9 *CHOAM & Richese* rulebook, p.
9](https://www.gf9games.com/dune/wp-content/uploads/2021/11/CHOAM-Rulebook-low-res.pdf)
A captured skilled leader follows the expansion's general Harkonnen Q&A: the
captor has only the lower battle band and only while actually using that
captured leader. A surviving captured Planetologist may therefore use the same
green-Special substitution and +2; the original faction has no normal movement
band while the leader and skill are captured.
## Mandatory discard
The Special card's own final instruction is unconditional once it is revealed
through this substitution: discard it after the battle. This is more specific
than the base rule allowing an ordinary winner to keep cards played in its
plan. The physical outcome is:
| Battle outcome | Planetologist Special disposition |
|---|---|
| Ordinary win | Discard; the winner has no retention choice for this card. |
| Ordinary loss | Discard under both the base loser rule and the skill card. |
| Opponent reveals the Planetologist leader as a traitor | Discard with the traitored player's played cards; the leader dies and supplies no +2. |
| Both leaders are traitors | Discard with the played cards; the Planetologist leader dies and supplies no +2. |
| Lasgun–shield explosion | Discard after the battle; a killed Planetologist supplies no +2. |
| Planetologist owner reveals the opposing leader as a traitor | Discard under Planetologist's later, card-specific instruction even though the base traitor winner ordinarily loses nothing. |
The last row is a rules-specificity inference. No located publisher Q&A asks
about Planetologist versus a successful traitor call. The physical Leader Skill
plainly says to discard after the battle and prints no winner or traitor
exception, so retaining it would require adding an exception absent from the
later card. The [GF9 November 2020
FAQ](https://www.gf9games.com/dune/wp-content/uploads/2020/11/Dune-FAQ-Nov-2020.pdf)
confirms the general winner-retention rule, while the Planetologist card supplies
the narrower override.
“Unused bluff” needs a physical distinction. A green Special actually revealed
in the weapon slot through Planetologist has been used in that alternate role
and is discarded even when +2 cannot affect the result or the winner is decided
by a traitor. A Special merely carried behind the shield but omitted from the
Battle Plan remains in hand; no rule reveals or discards it. A plan using a
different leader cannot legally commit the Special in Planetologist's role.
## Persistent evidence
The source archive at `/home/quintine/.local/share/dune/sources` contains:
- `leader-skills-tabletopfinder-all-upscaled.png`, on which the complete
Planetologist face is readable;
- `leader-skills-designer-video-auto-transcript.txt`, with the Planetologist
explanation at transcript seconds 594–666;
- `choam-richese-rulebook-en.pdf` and its layout-preserving text extraction;
and
- `dune-rulebook-gf9-mirror.pdf` and its extraction, preserving the common
battle disposition and traitor rules.
The designer's [official expansion
page](https://futurepastimes.com/dune-choam-richese) links the GF9 rulebook.
The full local source hashes and retrieval URLs are recorded in
`leader-skills-source-provenance.txt`.
## Implementation boundary
A focused implementation can expose the nine base physical copies as weapon
slot choices only for the selected, concealed Planetologist leader. It should
record the selected physical identity and alternate role in the sealed plan,
apply +2 only after confirming that leader survives, suppress the card's native
effect, and force exactly one discard after every revealed outcome. Rejected or
canceled plan changes must release the reservation without discarding the card.
Expansion eligibility should be added from each component's printed category,
not inferred from the shared TypeScript `special` bucket. The traitor-winner
discard row should remain documented as the explicit later-card reading because
the sources contain no direct Q&A for that collision.
## Normal movement and supported prototype
The first band gives a choice for one movement: add one to normal range with a
maximum of three, or gather physical forces from exactly two different territories
to one shared destination using each group's ordinary range. These alternatives
do not stack. Moving multiple selected sectors of the same territory remains one
origin. Both groups retain normal storm, path, occupancy and force-selection rules;
the combined move spends one movement. Hajr can provide another normal movement.
See the [physical-card contract](LEADER_SKILLS_RULES.md) and the designer's
[example](https://www.youtube.com/watch?v=XT_azRVLq_0&t=1153s).
Fremen's native range and Planetologist are independent. With the range alternative,
a distance-two move needs only ordinary range one plus Planetologist. Distance
three without city ornithopters uses the Fremen advantage and opens its real
Karama response. Cancellation leaves forces and the movement opportunity in place;
the replacement may still use Planetologist. A gather using Fremen range two also
retains that response, with both origins saved and revalidated before continuation.
This applies the [existing cancellation contract](FREMEN_MOVEMENT_KARAMA_RULES.md),
not a new phase-wide restriction or an automatic shortened destination.
The [November 2020 FAQ, p. 4](https://www.gf9games.com/dune/wp-content/uploads/2020/11/Dune-FAQ-Nov-2020.pdf)
and [base rules, p. 18](https://www.gf9games.com/dunegame/wp-content/uploads/Dune-Rulebook.pdf)
determine a common Bene Gesserit arrival stance when no other faction is present,
or when existing BG forces determine the stance. The prototype supports mixed
advisor/fighter origins in those cases, and uniform origins generally. Source
advisor locks carry forward. Mixed origins entering an enemy-only territory need
a combined advisor-flip/cancellation continuation and remain explicitly guarded;
this is an implementation gap, not a rule that forbids every mixed move. No source
was found granting a chosen group order that makes fighters arrive as advisors.
The current runtime supports only the six base factions and the nine base green
Special copies above. Expansion rosters, other optional modules, No-Field and
Discovery/Richese flight combinations remain gated. Before enabling Ix, calculate
range for each selected origin's own cyborgs and extend its cancellation trigger
for Planetologist's added range. Aggregate elite counts must not lend one group's
cyborg speed to a separate suboid-only origin. The expansion green-Special inventory
must also be audited before admitting those physical cards.
The movement control builds ordinary authoritative actions with an explicit range
or gather choice. Bots use the same range helper and submit physical source/elite
counts. Saved Fremen continuations bind the selected skill leader, choice and exact
two-origin list; stale custody or receipts reject before spending a response card.
The weapon selector exposes eligible Specials only for the selected skilled leader
and explains +2 and mandatory discard. Bot candidates use that same eligibility and
pair validation. This is a connected prototype with partial combination coverage,
not complete Leader Skills compliance or a publication gate.
## Verification evidence, 13 September 2026
The final focused union passes 84 cases, including the 24-case Planetologist
union and existing skills, Fremen cancellation and battle quote regressions.
Independent movement and battle review closed after the stale already-dead disc
reproducer was fixed. First-choice tests prove all four bot profiles actually use
both alternatives in suitable fixtures. Two source-bound full-game samples finish
with zero rejected actions and six saved restorations each; Basic executes both
movement choices, Advanced executes boosted range. These do not establish full
combination acceptance or calibrated difficulty ordering.
The browser journey verifies genuine setup, range availability, physical gather,
private refresh and the weapon selector's Special role. A separately staged battle
in that new QA room verifies traitor-loss cleanup, one Special discard, skill death
return and the unchanged Shield Wall. [The checkpoint record](IMPLEMENTATION_STATUS.md)
separates those fixtures from the complete-game samples. Required broad check
results, source fingerprints and saved-game comparisons are retained privately
outside the checkout and reported in the verified commit.
+1 -1
View File
@@ -16,7 +16,7 @@ Updated 13 September 2026. This is the authoritative navigation index for existi
| Expansion Nexus families | Source audit coverage does not imply every panel is playable; consult later runtime records in the status log. | [Ixian Cunning](NEXUS_IXIAN_CUNNING_RULES.md), [Ixian replacement](NEXUS_IXIAN_REPLACEMENT_RULES.md), [Tleilaxu](NEXUS_TLEILAXU_RULES.md), [CHOAM](NEXUS_CHOAM_RULES.md), [Richese](NEXUS_RICHESE_RULES.md), [Ecaz](NEXUS_ECAZ_RULES.md), [Moritani](NEXUS_MORITANI_RULES.md) |
| CHOAM Secret Ally | Absent-faction Collection trade spends one actual Worthless card and the Nexus for two bank spice. It is separate from native Cunning and Auditor; the battle inspection alternative remains missing. | [Prototype contract](NEXUS_CHOAM_SECRET_ALLY.md) |
| Sapho movement | At a clean boundary, first reorders only remaining unstarted turns; completed turns stay completed. Advanced Guild must have finished or be absent. Last retains existing protection after Guild. | [Existing source contract](JUICE_OF_SAPHO_SOURCE_UPDATE.md#movement-firstlast), [runtime](JUICE_OF_SAPHO_RUNTIME.md) |
| Leader Skills | Fourteen physical cards, variant setup order, public/hidden assignment, death return, own-leader revival and captured lower-band effects are sourced. Five battle disciplines and common lifecycle are prototyped; nine effects and combinations remain missing. Known skilled capture identifies the leader through its unique public card. | [Source contract](LEADER_SKILLS_RULES.md), [capture inference](LEADER_SKILLS_CAPTURE.md), [runtime](LEADER_SKILLS_RUNTIME.md) |
| Leader Skills | Fourteen physical cards, variant setup order, public/hidden assignment, death return, own-leader revival and captured lower-band effects are sourced. Five battle disciplines, Planetologist movement/Special substitution and common lifecycle are prototyped; eight skills and combinations remain missing. Known skilled capture identifies the leader through its unique public card. | [Source contract](LEADER_SKILLS_RULES.md), [capture inference](LEADER_SKILLS_CAPTURE.md), [runtime](LEADER_SKILLS_RUNTIME.md), [Planetologist](PLANETOLOGIST_RULES.md) |
| Discoveries | Preserve seven sourced Spice Cards and eight physical tokens, private faction peeks and Collection choices. Revealed locations are separate territories; only Jacurutu counts toward stronghold victory. Next-turn free entry, sole-occupant Cistern income and later-turn Ornithopter spending are prototyped; Jacurutu income, Testing Station and Shrine have bounded prototypes; Orgiz and contested/mixed cases remain pending. | [Component authority](DISCOVERY_COMPONENTS.md), [prototype boundary](DISCOVERY_PROTOTYPE.md) |
| Guild Secret Ally | One explicit Guild-priced ordinary shipment; borrowed prices/routes preserve native identity. Free Fremen reinforcement remains a separate choice. | [Route contract](NEXUS_GUILD_SECRET_ALLY_RULES.md), [verified runtime](NEXUS_GUILD_SECRET_ALLY_RUNTIME.md) |
| Homeworld custody and mobility | Physical home/visitor groups, population thresholds, tariffs and transport permissions retain distinct sources; Homeworld immunity is not universal immunity. | [Homeworld rules](HOMEWORLD_RULES.md), [benefits](HOMEWORLD_BENEFITS_RULES.md), [mobility](HOMEWORLD_MOBILITY_RULES.md), [invasion](HOMEWORLD_INVASION_RULES.md), [Guild transport](GUILD_HOMEWORLD_TRANSPORT_RULES.md) |