Files
Dune/docs/RECRUITS_RUNTIME.md
Quintine 0e3d6a250e Make Fremen allied revival grants cancelable
Bind the original Fremen/ally/turn grant before Karama allowance or prevention.
A prevented grant leaves intrinsic free rates and prior payments intact. Permit
late grants under the explicit provisional Recruits current-rate policy, with
shared controls, minimal bot support and native public chronology evidence.
Complete rules and browser/deployed acceptance remain open.
2026-10-24 18:16:03 +11:00

12 KiB
Raw Permalink Blame History

Recruits development preview

14 September 2026. Prototyped, not full card-variant acceptance. The independent Ecaz & Moritani Treachery Cards variant is included before genuine Basic or Advanced faction setup. All three physical cards are present exactly once. Recruits, bounded Reinforcements and Harass & Withdraw have connected controls, AI and saved continuation; full interactions and publication remain gated.

Native Fremen grant after play — 24 October 2026

The earlier later-grant guard is replaced by the symmetric current-rate prototype: an original Fremen allied grant may be declared after Recruits. Its native Karama window settles before permission is committed. Prevention blocks only that grant for this Revival; it does not erase intrinsic free allowance, Recruits or earlier returns/payments. A successful late grant uses the same current3→6 calculation as a grant preceding play, with actual prior free usage deducted, no refund, and ordinary/native total and typed limits. The exact response scope and later-rate composition remain provisional under 14 October, not a new publisher combined ruling. Source, controls and bounded evidence.

Original Skills/phase composition — 17 October 2026

Supported classic, selected E1/E2 and standalone/paired E3 all14/card profiles retain original Tech3–6 Basic/Advanced and Advanced Strongholds2–6, without World/Nexus/Discovery. One genuine five-Tanks programme returns3 for4, then2 for2 after Recruits, preserving prior payment and free/ordinary usage. The larger allowance cannot create a third counter when only two actual Tanks remain. Axlotl accrues once/pays at phase end; normal Banker keeps its actual Bank-payer threshold and deferred Mentat grant. Native prices/caps/recipients and provisional late-paid policy remain unchanged. Current471/471 programme and limits.

Provisional late-paid activation — 8 October 2026

The content-first pass now permits Recruits after recorded paid ordinary returns, once the current transaction has finished. Provisional policy: prior payments are retained; only actual recorded free returns consume the doubled free rate, while all returns consume the total allowance. No refund, reset or retroactive reclassification is performed. This is not a numerical user ruling or a newly retrieved publisher answer.

Thus Atreides' actual two-free/one-paid return retains its two-spice payment and three total returns; after Recruits it may take two additional free forces under the seven total cap. Missing or inconsistent free-use ledgers, pending declarations, unrelated later rate changes and same-turn replay remain guarded. The owned before-play panel and public active panel name this interpretation.

Basic/Advanced before/after native smokes use a genuinely dealt card, an actual three-force return and useful allied Easy activation, then two free returns: total5/free4, unchanged paid spice and one card disposal. Live React controls in Chromium produce the same available2/remaining4 quote and preserve spice18/total3/free2 at activation. No broad suite, recovery or deployed proof.

Classic Homeworld composition — 16 October 2026

The fresh ecaz-treachery --homeworlds entry now admits Recruits during original classic2–6 Basic/Advanced Revival, with its original36-card inventory. Reuse native current free rates and typed revival deposits. No rate snapshot, new saved field, seven extra counters, automatic refund, generic module activation or played-save conversion is added. Reinforcements has a separate native-source fee composition; original Tech/Advanced Strongholds now follow the separate classic World phase contract. Selected E1/E2 Worlds use the native setup contract and original phase-module composition; other rosters and overlays remain separate.

Publisher Ecaz & Moritani printed pp11/16 specifically gives low Fremen4, doubled but capped at7. Under the standing choose-recommended instruction, compose the existing native separate-request population rule: quote against current population when each request is accepted, retaining that group's accepted free/paid classification. Later separate requests observe the resulting population and actual recorded free usage. This changing-threshold timing is visibly provisional, not a new publisher worked example or answer to the earlier late-rate question.

Thus low Fremen at2 native counters can accept7 free together. If it accepts1 first, reaching high3, the next native rate is3→6 and only5 free remain. With Tleilaxu absent it cannot buy a seventh after those six. The total card cap is still7, not an independent paid-revival permission. Original special-force limits remain: Advanced one Fedaykin/Sardaukar per turn; Basic preserves physical star identities without adding the Advanced one-per-turn rule. Original destination/deployment eligibility remains native, not guaranteed merely because Recruits increased a rate.

Atreides with actual3 prior returns (2 free/1 paid) can accept2 further free after play, even if already ready while phase4 remains open. Its payment stays2 spice, total5/free4. A native mixed Emperor return deposits normal on Kaitain and Sardaukar on Salusa in Advanced; Basic retains its primary World. The new panel names the provisional current-rate policy. An actual Advanced Fedaykin return exposed an enabled repeat with stale selected elite1 against remaining0: the button now disables that over-cap selection and explains the remaining special limit, without altering authoritative revival rules.

Four actual390px GameTable journeys cover Basic bulk7, Advanced typed1+5, already-ready paid Atreides and Advanced mixed Emperor revival. Native low→high quotes, physical custody, no refund and exact once-only discard are observed. Sixteen fresh programmes/four minimal policies accept104 card/Revival/readiness actions through original phase5, including useful activation by an already-ready Atreides. Real setup/shipments/zero-dial losses produce the dead counters; only physical hands/unopened first-Blow cards are positioned, with the existing Recruits moved to the selected holder explicitly. These are not unstaged full-game card draws. Eight startup Vite dependency aborts and a corrected QA-only middleware ordering issue precede successful surfaces; no overflow or application exception. Owned hosts/tab/scaffolds removed; proof outside Git.

Final checks:10 new cases pass, related18 offline files167/167, types/lint and app build pass. A test-only nullable-view narrowing is followed by a passing 10-case rerun; production behavior is unchanged. CLI help executes and guide import resolves207 unique evidence paths/source anchor, with both coverages Partial. Existing build register/large-chunk/route-classification warnings remain; no HTTP/DB boundary changed or new recovery assurance ran.

Rules contract

The source audit records publisher Ecaz & Moritani pages 11 and 16, the base and faction revival rules, and designer Jack Reda's explanation at 8:25–8:48. The card plays during Revival, doubles every current free rate, raises the normal force limit to seven for this turn, and is discarded after use. The publisher's four-to-eight example is capped at seven by the ordinary limit. Fresh publisher/designer-linked PDF fetches on 14 September returned HTTP 403; this follow-up uses the earlier recorded primary-source audit and independent source review. No newly retrieved late-paid ruling is claimed.

The scope permits activation before returns or after consistently recorded free/paid normal returns, once priority windows and transactions finish. Unknown legacy usage, unrelated late-rate changes, same-turn replay after recovery and other optional modules remain guarded, apart from clean classic Homeworlds above or the separate clean classic/Ix/CHOAM Tech/Advanced Stronghold composition. These are boundaries, not printed timing rules. Already-ready players retain their Revival opportunity while phase four is open.

Atreides doubles two to four, Fremen three to six, and Guild one to two. Native CHOAM and Tleilaxu retain their unlimited allowance with free rates zero and four. Paid prices, prevention and separate elite caps remain in force. A Fremen grant settled before play doubles the ally's replacement rate three to six.

The seven-force allowance remains an independent global card effect when a CHOAM or Tleilaxu faction advantage is canceled. This is an implementation inference from independent effects, not a direct combined publisher FAQ. A Tleilaxu limit response is not opened merely for crossing three under Recruits; other qualifying price/prevention responses retain their original purposes.

The earlier user question about one versus two further free Atreides returns remains unanswered. The 8 October first version uses the visibly provisional two-further-free policy above; it does not claim that question was adjudicated. The source audit retains the alternatives and later changing-rate ambiguity.

Connected path and persistence

initializeEcazTreacheryGameForAudit composes the complete three-card inventory with the selected ordinary deck before shuffle/deal. The local ecaz-treachery prototype-room profile accepts only a fresh ready lobby and uses the existing version/state compare-and-swap. It preserves seats and other rooms.

The holder's existing inspector shows the complete original-language card guide. The Revival panel submits the shared recruitsPlayAction; rivals receive no held card offer. A successful action discards the physical card once and saves its player, turn and identity. Every player then sees the same effective public rates and force limits. No rival hand, private spice or revival-use ledger is added.

Authoritative shared revival quotes use the effect. Exact free usage is separate from total normal returns only while Recruits is active; inactive/legacy games retain their previous arithmetic. Active receipts and ledgers are validated on action and projection. JSON and SQLite restoration retain the same allowance; the next turn clears the effect. Rejected actions leave the supplied state intact.

All four AI profiles use the same legal owned offer when their faction or ally can benefit, then ordinary quoted revival choices. The late Fremen grant is excluded from bot candidates as well as server and UI controls. This is a legal first strategy, not completed Recruits difficulty calibration.

Verification

Focused engine, component, AI, genuine prototype-room and authenticated SQLite recovery suites are maintained alongside the pure arithmetic and inventory tests. Independent review passes a 37-case related union; four authenticated SQLite cases cover restored free/paid returns, malformed saves, stale/duplicate actions and competing writes. Eight fixed-seed six-seat Basic/Advanced samples across all four AI profiles finish in 7,995 accepted actions with no rejected candidates. Recruits is genuinely played three times. Physical cards, Traitors, safe force/elite pools, 212 periodic all-seat JSON restores and terminal private views pass. Undefined object properties are normalized through JSON on both sides of the comparison; defined values are retained. Earlier harness attempts remain in private artifacts.

A separate conserved browser Revival fixture verifies the full inspector, actual play/discard, public Atreides four/Fremen six rates, four free returns, automatic chronicle and active/resolved refresh. Exact state comparison preserves the seat, cards, forces and unchanged spice. This staged browser position does not establish naturally reached card use. Final broad checks, source fingerprints, saved-game preservation and Git delivery are recorded with the checkpoint. These samples do not certify the unfinished three-card variant or every combined configuration.

See current status, decision index and the reference checklist, topic card-recruits, for the remaining boundaries. Final polishing, other two effects and valid optional-module combinations remain required work.