Enforce Atomics shipment ban across transport
Verify and publish checkpoint container / container (push) Successful in 10m7s

This commit is contained in:
Quintine committed 2026-10-29 03:03:18 +11:00
1 parent 4feb418488
commit 0f8e0b4153
17 files changed
+477 -19

No files matched your search

+5 -2
View File
@@ -13,6 +13,7 @@ import {
shipmentPaymentBounds,
} from './shipment-price';
import { quoteSmugglerShipment } from './smuggler-shipment';
import { atomicsShipmentBlocked } from './moritani-atomics';
/**
* Known arrival support for ordinary owner-view candidates, plus the public
@@ -23,6 +24,10 @@ import { quoteSmugglerShipment } from './smuggler-shipment';
* are never treated as rejected candidates.
*/
export function botArrivalBlock(g: GameView, action: Action): string | null {
if (g.status === 'playing' && g.phase === 5 && g.active === g.me &&
(action.type === 'ship' || action.type === 'guildShip') &&
typeof action.territory === 'string' && atomicsShipmentBlocked(g.moritaniAtomics, action.territory))
return 'Atomics Aftermath permanently blocks shipments into this territory.';
if (g.status === 'playing' && g.phase === 5 && g.active === g.me &&
action.type === 'guildShip' && action.nexus === undefined && g.guildTransportCanceled)
return 'Karama prevents native Guild cross/return transport for this shipment opportunity.';
@@ -49,8 +54,6 @@ export function botArrivalBlock(g: GameView, action: Action): string | null {
paidBox: g.decision?.kind === 'nullentropy',
};
let order: CompletedMovementArrivalInput['order'];
if (action.type === 'ship' && g.moritaniAtomics?.territory === to)
return 'Atomics Aftermath permanently blocks shipments into this territory.';
if (action.type === 'guildShip') {
if (
action.forces !== undefined ||