Gameplay testing on 0.4.9d returned six reports. Five are fixed; the sixth could not be reproduced and is written up in TODO.md with the two questions that would pin it down. TWO TRAINS AT ONE PLATFORM ANSWERED TO ONE BUTTON. `porter.board` and `porter.detrain` carried no tray, so there was one button per platform however many trains stood at it and the reducer filled the first empty coach on the A/D tracks. `check` and the reducer were not even asking the same question: `check` skipped a train whose card refuses passenger work and the reducer did not. Both intents now carry an optional `trayId`, one function resolves the train and the coach for check/execute/reduce alike, `legal.ts` offers one candidate per train, and the label names it. A LOAD COULD BE MADE AND BROKEN WITHOUT GOING ANYWHERE. A Freight House could unload the boxcar it had just loaded; a platform could detrain the passengers it had just boarded. Full Revenue at both ends for a movement that never happened. Jesse's rule: a load made anywhere in an Office Area may not be broken anywhere in that Office Area, ever — it has to be carried to another district. The load carries the seat that made it (`RollingStock.origin`), stripped by `pooled` at every yard push. Measured at -0.60 +/- 0.10 Revenue a game (t = -6.1) over 400 paired deals: 78 worse, 3 better, 319 unchanged — free Revenue coming off the board, not a nerf. THE GROCER'S WAREHOUSE SHIPPED AND THE REFINERY RECEIVED. Both were `flow: 'both'` on the reading that "Freight House" was a collective term for exactly those two, and therefore what §9.3 described. The engine has dealt a Freight House CARD since before v0.4.9, so §9.3 names it and the argument goes. The card set agrees: all three Refinery modifiers grant +1 outbound. Refinery outbound-only, Grocer's inbound-only, Freight House the one two-way industry — which leaves exactly the one same-district pairing the rule above refuses. NOT REPRODUCED: cars left behind when backing up over them. Five layouts tried, including cars spotted at an industry; every one couples the lot. Three are pinned in `apply.test.ts`. One way to create such cars was closed anyway — `flyingSwitch` wrote its cut past `carsOn`. Both published replays that had gone dead were re-recorded; a rules change retires a save, and `harness.test.ts` is what catches it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011nbvwWMef8CuEP6t5cgkTv
1429 lines
19 KiB
JSON
1429 lines
19 KiB
JSON
{
|
|
"seed": 927523,
|
|
"title": "11 Revenue · seed 927523",
|
|
"note": "11 Revenue over 5 Days · 2 train(s) on the timetable · 21 cards down · no collisions · played by developer",
|
|
"rules": {
|
|
"startingHand": "threeRandom",
|
|
"revenue": {
|
|
"passengerPerCoach": 1,
|
|
"freightPerLoad": 1,
|
|
"trainPerTransit": 0
|
|
}
|
|
},
|
|
"history": [
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c125",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": 1
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c187",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": -1
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c182",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": -1
|
|
},
|
|
"variant": 1
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c57",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": 0
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c152",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": 1
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c174",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": -2
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c154",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": -2
|
|
},
|
|
"variant": 1
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c4"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c23"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c31"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c35"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.stockOutbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"carType": "coach"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.stockOutbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"carType": "coach"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.stockOutbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"carType": "coach"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "coach",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "coach",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c9"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "reefer",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "reefer",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "reefer",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "caboose",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "porter.detrain",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray3"
|
|
},
|
|
{
|
|
"type": "porter.board",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray3"
|
|
},
|
|
{
|
|
"type": "porter.detrain",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray3"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.stockOutbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"carType": "coach"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c184",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": 2
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c114",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": 3
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c54",
|
|
"toSlot": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromDepartment",
|
|
"slot": 0
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c50",
|
|
"toSlot": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromDepartment",
|
|
"slot": 0
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c33",
|
|
"toSlot": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "coach",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "coach",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c147",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": 2
|
|
},
|
|
"variant": 1
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c54",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "reefer",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "reefer",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "hopper",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "caboose",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "porter.detrain",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray2"
|
|
},
|
|
{
|
|
"type": "porter.board",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray2"
|
|
},
|
|
{
|
|
"type": "porter.detrain",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray2"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c88",
|
|
"toSlot": 1
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": -1,
|
|
"col": 2
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray3",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray3",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"reverse": true
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": -1,
|
|
"col": 2
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray3",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray3",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"reverse": true
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c128",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": -3
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c39",
|
|
"placement": {
|
|
"row": -1,
|
|
"col": 4
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c133",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": -4
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c144",
|
|
"placement": {
|
|
"row": -2,
|
|
"col": 1
|
|
},
|
|
"variant": 1
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c50",
|
|
"toSlot": 2
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromDepartment",
|
|
"slot": 2
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c60",
|
|
"toSlot": 2
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromDepartment",
|
|
"slot": 2
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c34",
|
|
"toSlot": 2
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c117",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": 4
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "coach",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "coach",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.discard",
|
|
"cardId": "c85",
|
|
"toSlot": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "hopper",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "hopper",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "hopper",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray2",
|
|
"carType": "caboose",
|
|
"loaded": true
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c111",
|
|
"placement": {
|
|
"row": 0,
|
|
"col": 5
|
|
},
|
|
"variant": 0
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "porter.board",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray3"
|
|
},
|
|
{
|
|
"type": "porter.board",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"trayId": "tray3"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "draw"
|
|
},
|
|
{
|
|
"type": "draw.fromHomeOffice"
|
|
},
|
|
{
|
|
"type": "card.play",
|
|
"cardId": "c162",
|
|
"placement": {
|
|
"row": -2,
|
|
"col": 2
|
|
},
|
|
"variant": 1
|
|
},
|
|
{
|
|
"type": "draw.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray2",
|
|
"to": {
|
|
"row": -1,
|
|
"col": 2
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray2",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray2",
|
|
"to": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray2",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray2",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.dropCars",
|
|
"trayId": "tray2",
|
|
"count": 1
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.beginUnload",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"carIndex": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 2
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 1
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "laborer.beginUnload",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"carIndex": 1
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 2
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "coach",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "newTrain.placeCar",
|
|
"trayId": "tray3",
|
|
"carType": "coach",
|
|
"loaded": false
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 1
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "laborer.beginUnload",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"carIndex": 2
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 1
|
|
},
|
|
"reverse": true
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 1
|
|
},
|
|
"reverse": true
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 1
|
|
},
|
|
"reverse": true
|
|
},
|
|
{
|
|
"type": "switch.move",
|
|
"trayId": "tray3",
|
|
"to": {
|
|
"row": 0,
|
|
"col": 0
|
|
},
|
|
"reverse": false
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 2
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 1
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "laborer.advanceLoad",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"box": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "freightAgent"
|
|
},
|
|
{
|
|
"type": "freightAgent.clearInbound",
|
|
"at": {
|
|
"row": -1,
|
|
"col": 3
|
|
},
|
|
"index": 0
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
},
|
|
{
|
|
"type": "localOps.choose",
|
|
"option": "switch"
|
|
},
|
|
{
|
|
"type": "switch.end"
|
|
},
|
|
{
|
|
"type": "loadUnload.end"
|
|
}
|
|
]
|
|
} |