Connect Tleilaxu income to committed Ambassador revivals

Positive free force/leader returns share the existing beneficiary/turn free-income ledger under the explicit provisional source composition. Actual Ghola remains separately rewarded. Decline earns nothing. Bind a distinct revival-income response to the completed physical return and original Ambassador; allow/cancel finishes once and cancellation preserves the return and spent entitlement.

Add persistent preselection and income guidance. Admit the bare Basic Ecaz+Ix native Tleilaxu composition through existing coalition/Face Dance mechanics, retaining unsupported faction/module guards and existing start/battle assertions.

Verify focused tests, types/lint/build, four original public Basic native/copy allow/cancel programmes, actual control rendering and eight existing legal policies. Exact frozen evidence and boundaries are in docs/TLEILAXU_AMBASSADOR_RULES.md. Full rules/modes, wider combinations, assurance and deployed acceptance remain unfinished. No strategic calibration, saved-room operation, reset, restart or deployment.
This commit is contained in:
Quintine committed 2026-10-24 13:07:08 +11:00
1 parent f9e204c301
commit 6d30e7c5e1
15 files changed
+1125 -30

No files matched your search

+4 -1
View File
@@ -285,7 +285,10 @@ export function EcazEntry({
<p className="m-0 text-sm leading-6">
Revive one eligible leader or return up to {entry.revival?.maximum ?? 0}
{' '}physical forces for free. This independent grant leaves ordinary
allowances and income unchanged provisionally. Ordinary leaders and
allowances unchanged provisionally. When Tleilaxu is seated, a
positive return can earn it one bank spice, sharing the beneficiary’s
once-per-turn free-revival reward. Canceling income keeps the return.
This income interpretation is provisional. Ordinary leaders and
Atreides’ Kwisatz Haderach retain their first-death restriction.
Other revival interactions remain under development.
</p>
+9
View File
@@ -2611,6 +2611,15 @@ export function GameTable({
response.
</p>
)}
{g.response.source === 'ambassadorRevival' && (
<p className="notice">
The free Ambassador revival is already complete. Canceling
Tleilaxu’s bank income leaves the revived pieces in play.
Provisional rule: one free-revival reward per beneficiary
per turn, shared with ordinary free revival. Ghola cards
retain their separate income.
</p>
)}
{g.response.source === 'ambassador' && (
<p className="notice">
The Richese Ambassador purchase is already paid and its card