Connect native Homeworld Ecaz Arrakis coalition battles

This commit is contained in:
Quintine committed 2026-10-17 18:24:11 +11:00
1 parent 210aa04811
commit 7ef3377218
10 files changed
+310 -22

No files matched your search

+13 -1
View File
@@ -9588,7 +9588,10 @@ export function initializeHomeworldOccupationGameForAudit(state: Game, leaderSki
g.homeworldTupileState = createOccupiedTupileState();
g.pendingHomeworldTupileCleanup = null;
}
if (byFaction(g, 'ecaz')) g.homeworldEcazVictoryPreview = true;
if (byFaction(g, 'ecaz')) {
g.homeworldEcazVictoryPreview = true;
g.ecazOccupyPreview = true;
}
return g;
}
/** Shared classic/supported-native Nexus setup; existing composition guards apply. */
@@ -10523,6 +10526,15 @@ function ecazOccupyCompositionSupported(g: Game): boolean {
g.players.some(p => p.faction === 'ecaz')) return true;
if (g.discoveries && nativeDiscoveryLeaderSkillsProfile(g) &&
g.players.some(p => p.faction === 'ecaz')) return true;
// Native World reserve/threshold rules do not replace the ordinary Arrakis
// coalition. Reuse that battle only within the original Ecaz/classic setups.
if (g.homeworlds && g.expansions.length === 1 && g.expansions[0] === 'ecaz' &&
g.players.some(p => p.faction === 'ecaz') &&
g.players.every(p => p.faction === 'ecaz' || CLASSIC_FACTIONS[p.faction]) &&
((g.homeworldOccupationPreview === true && !g.leaderSkills &&
!g.nexusCards && !g.techTokens && !g.strongholdCards && !g.discoveryEnabled) ||
(g.ecazOccupyPreview === true && !!g.leaderSkills && homeworldLeaderSkillsProfile(g))))
return true;
return typeof g.advanced === 'boolean' && Array.isArray(g.expansions) &&
g.expansions.includes('ecaz') &&
g.expansions.every(id => ['ecaz', 'ix', 'choam'].includes(id)) &&
+1 -1
View File
@@ -2176,7 +2176,7 @@ export const RULE_TOPICS: RuleTopic[] = [
area: 'Implementation',
status: 'Partial',
detail:
'Base setup enforces prediction, traitors, forces and automatic dealing in order, with private choices and preserved saved tables. Advanced starting advisors and elite forces share the same setup logic. The normal lobby now starts selected expansions and the Leader Skills, Ecaz Treachery Card, Nexus, Discovery, Homeworld, Tech and Stronghold modules through their existing genuine setups as labelled previews; each module still rejects unsupported combinations at start, and Ecaz with Homeworlds alone remains unavailable.',
'Base setup enforces prediction, traitors, forces and automatic dealing in order, with private choices and preserved saved tables. Advanced starting advisors and elite forces share the same setup logic. The normal lobby now starts selected expansions and the Leader Skills, Ecaz Treachery Card, Nexus, Discovery, Homeworld, Tech and Stronghold modules through their existing genuine setups as labelled previews; unsupported combinations still reject at start. Fresh native Ecaz/classic World games retain ordinary Arrakis Occupy, with or without supported Skills.',
},
{
area: 'Player controls',