Integrate exact Ixian Nexus purchased-card replacement
This commit is contained in:
1 parent
c43ab64872
commit
a2b04dbfba
26 files changed
+4588
-34
No files matched your search
@@ -12,6 +12,7 @@ import {
|
||||
initializeRicheseBetrayalGameForAudit,
|
||||
initializeNexusKullGameForAudit,
|
||||
initializeGuildBetrayalGameForAudit,
|
||||
initializeIxianNexusReplacementGameForAudit,
|
||||
viewGame,
|
||||
type Game,
|
||||
} from '../game/engine';
|
||||
@@ -29,6 +30,7 @@ export const PROTOTYPE_PROFILES = [
|
||||
'richese-betrayal',
|
||||
'nexus-kull',
|
||||
'guild-betrayal',
|
||||
'ixian-replacement',
|
||||
] as const;
|
||||
export type PrototypeProfile = (typeof PROTOTYPE_PROFILES)[number];
|
||||
export function isPrototypeProfile(value: string): value is PrototypeProfile {
|
||||
@@ -94,6 +96,11 @@ export function startPrototypeRoom(
|
||||
...initial,
|
||||
nexusCards: initial.nexusCards ?? { cards: null, phase: null },
|
||||
})
|
||||
: profile === 'ixian-replacement'
|
||||
? initializeIxianNexusReplacementGameForAudit({
|
||||
...initial,
|
||||
nexusCards: initial.nexusCards ?? { cards: null, phase: null },
|
||||
})
|
||||
: profile === 'factions'
|
||||
? initializeFactionExpansionsGameForAudit(initial)
|
||||
: profile === 'nexus'
|
||||
|
||||
@@ -20,7 +20,7 @@ async function main() {
|
||||
});
|
||||
if (values.help) {
|
||||
console.log(
|
||||
'Usage: node --import tsx tools/start-prototype.ts --profile ix|discovery|leader-skills|factions|nexus|moritani-assassinate|ecaz-treachery|semuta|kull|richese-betrayal|nexus-kull|guild-betrayal --db PATH --room CODE --version NUMBER --out /private/new-directory\nStarts only a fresh ready lobby for the selected development prototype. Nexus enables the existing private Nexus setup. Moritani-assassinate explicitly opts into the bounded Advanced assassination preview. Semuta opts a fresh Richese roster into bounded clean-discard reactions; an included Ix deck supplies physical Thumper without opening public starts. Kull opts a fresh eligible CHOAM roster into the user-selected Karama interception preview. Richese-betrayal opts a fresh paired CHOAM/Richese Nexus roster into cache-purchase veto and sale-bank diversion. Nexus-kull opts a fresh CHOAM-plus-classic roster with CHOAM/Ix decks and Nexus into source-aware printed or any-Treachery-fueled Cunning Kull. Guild-betrayal opts a fresh classic roster with native Guild into full funded shipment-payment replacement; it preserves an explicitly enabled Homeworld module for Junction routes. Backs up all rooms first, preserves sessions and existing games, and rejects stale versions. Normal game-start and publication gates remain closed.',
|
||||
'Usage: node --import tsx tools/start-prototype.ts --profile ix|discovery|leader-skills|factions|nexus|moritani-assassinate|ecaz-treachery|semuta|kull|richese-betrayal|nexus-kull|guild-betrayal|ixian-replacement --db PATH --room CODE --version NUMBER --out /private/new-directory\nStarts only a fresh ready lobby for the selected development prototype. Nexus enables the existing private Nexus setup. Moritani-assassinate explicitly opts into the bounded Advanced assassination preview. Semuta opts a fresh Richese roster into bounded clean-discard reactions; an included Ix deck supplies physical Thumper without opening public starts. Kull opts a fresh eligible CHOAM roster into the user-selected Karama interception preview. Richese-betrayal opts a fresh paired CHOAM/Richese Nexus roster into cache-purchase veto and sale-bank diversion. Nexus-kull opts a fresh CHOAM-plus-classic roster with CHOAM/Ix decks and Nexus into source-aware printed or any-Treachery-fueled Cunning Kull. Guild-betrayal opts a fresh classic roster with native Guild into full funded shipment-payment replacement; it preserves an explicitly enabled Homeworld module for Junction routes. Ixian-replacement opts a fresh classic Basic/Advanced roster with base Treachery and Nexus only into the optional exact normal-auction purchased-card replacement; native Ixians, Harkonnen buyers and special purchase sources remain unsupported. Backs up all rooms first, preserves sessions and existing games, and rejects stale versions. Normal game-start and publication gates remain closed.',
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user