Teams
Blue Foundryblue-defender (defender), blue-harvester (harvester)
Red Relayred-defender (defender), red-harvester (harvester)
Event timeline
- t=0match_startedMatch starts.
- t=0decision_pointblue-u1 is asked for an order.
- t=0action_startedblue-u1 begins move → (5.000, 4.000) (completes t=2)
- t=0decision_pointblue-u2 is asked for an order.
- t=0action_startedblue-u2 begins gather → rn-home (completes t=8)
- t=0decision_pointred-u1 is asked for an order.
- t=0action_startedred-u1 begins move → (5.000, 4.000) (completes t=10)
- t=0decision_pointred-u2 is asked for an order.
- t=0action_startedred-u2 begins take_post → cp-crossing (completes t=10)
- t=0seat_latencyblue-u1 seat latency recorded
- t=0message_sentblue-defender: Rushing cp-crossing to contest/hold it (red harvester already there, red defender far at 9000,7000). Harvester: run rn-home -> ms-supply deliveries, I'll anchor the hold mission.
- t=0plan_declaredblue-defender plan: u1 holds cp-crossing for ms-hold; u2 farms rn-home and delivers to ms-supply.
- t=0seat_latencyblue-u2 seat latency recorded
- t=0message_sentblue-harvester: On it — gathering at rn-home now, will deliver to ms-supply next.
- t=0plan_declaredblue-harvester plan: Defender holds cp-crossing/ms-hold; harvester runs rn-home gather -> ms-supply deliveries for economy points.
- t=0seat_latencyred-u1 seat latency recorded
- t=0message_sentred-defender: rn-home arrival for me is t=20 (time limit, useless). red-u2: you're already sitting on cp-crossing at t=0 — claim/hold it now, you beat blue-defender's t=2 arrival. I'm inbound to cp-crossing (arrive t=10) to reinforce the hold.
- t=0plan_declaredred-defender plan: red-u2 claims and holds cp-crossing immediately (already on-site, beats blue's t=2); red-defender reinforces cp-crossing arriving t=10; we contest the hold mission directly rather than splitting into economy, since blue is committing both units (defender to hold, harvester to ms-supply).
- t=0seat_latencyred-u2 seat latency recorded
- t=0message_sentred-harvester: Holding cp-crossing now (already here, complete t=10, beats blue's earliest possible completion t=12). rn-home is lost to blue-harvester already gathering since t=0 — don't chase it. Reinforce the hold at t=10 if you can.
- t=0plan_declaredred-harvester plan: red-u2 locks cp-crossing/ms-hold; red-u1 reinforces hold on arrival; concede ms-supply race to blue.
- t=2unit_movedblue-u1 moves to (5.000, 4.000)
- t=2action_completedblue-u1's action completes.
- t=2decision_pointblue-u1 is asked for an order.
- t=2action_startedblue-u1 begins take_post → cp-crossing (completes t=8)
- t=2seat_latencyblue-u1 seat latency recorded
- t=2message_sentblue-defender: Taking cp-crossing now — my take_post completes at t=8, beating red-u2's t=10. Their claim I can't win the race is wrong for a defender's take_post speed. Harvester: keep gathering/delivering, I've got the hold.
- t=8post_takenblue's blue-u1 TAKES cp-crossing.
- t=8action_completedblue-u1's action completes.
- t=8action_failedred-u2's action fails — post taken by a faster agent
- t=8decision_pointblue-u1 is asked for an order.
- t=8decision_pointred-u2 is asked for an order.
- t=8action_startedred-u2 begins take_post → cp-crossing (completes t=18)
- t=8resource_gatheredblue-u2 gathers 3 from rn-home
- t=8action_completedblue-u2's action completes.
- t=8decision_pointblue-u2 is asked for an order.
- t=8action_startedblue-u2 begins deliver → blue (completes t=14)
- t=8seat_latencyblue-u1 seat latency recorded
- t=8message_sentblue-defender: cp-crossing is ours (owner=blue). Holding position here to bank ms-hold — red-u1 (defender) is inbound, ETA t=10. I'm staying put to defend the post rather than chase rn-home. Harvester: you're free at t=8, start hauling to ms-supply.
- t=8seat_latencyred-u2 seat latency recorded
- t=8message_sentred-harvester: rn-home/ms-supply is a dead end for me — node has exactly 3 remaining matching blue's delivery amount, so it's almost certainly already claimed by the time I'd arrive at t=18. Re-taking cp-crossing as backup instead: your defender take_post should be faster than mine and land before t=18, so you should flip it first — I'm just insurance in case you get interrupted.
- t=8seat_latencyblue-u2 seat latency recorded
- t=8message_sentblue-harvester: Delivering ms-supply now, done at t=14.
- t=10unit_movedred-u1 moves to (5.000, 4.000)
- t=10action_completedred-u1's action completes.
- t=10decision_pointred-u1 is asked for an order.
- t=10action_startedred-u1 begins take_post → cp-crossing (completes t=16)
- t=10seat_latencyred-u1 seat latency recorded
- t=10message_sentred-defender: rn-home is empty (remaining=0, blue-harvester already cleared it) — not worth chasing. Taking cp-crossing myself: my take_post completes t=16, beating your t=18, so I should flip it first. Even if blue already banked ms-hold's reward while uncontested, owning cp-crossing at match end (t=20) still scores control-point points for us — 4 time units of held ownership before the clock runs out beats ceding it to blue for the whole match.
- t=13mission_completedMission ms-hold completed by blue.
- t=14resource_deliveredblue-u2 delivers 3 to blue
- t=14action_completedblue-u2's action completes.
- t=14mission_completedMission ms-supply completed by blue.
- t=14match_finishedMatch finished — winner: blue.
Scorecard — per-unit grades
MVP: blue-u2 (blue, grade 1200) · LVP: red-u2 (red, grade 0)
| unit | role | grade | race_hold | economy | eyes |
|---|
| blue-u2 MVP | harvester | 1200 | 0 | 1200 | 0 |
| blue-u1 | defender | 1150 | 1100 | 0 | 50 |
| red-u1 | defender | 250 | 0 | 0 | 250 |
| red-u2 LVP | harvester | 0 | 0 | 0 | 0 |
How the grade is computed: each unit's grade sums three purposes — race_hold (winning a take_post race earns 300 points; a banked hold mission credits its reward ×100 to the holder), economy (each resource gathered or delivered earns its amount ×100; a banked deliver mission credits its reward ×100 to the delivering unit), and eyes (100 points per whole board-unit moved). The bold cell is the unit's own role's purpose and earns full credit; off-role work earns 1/2 credit — more than zero, never full. MVP is the highest grade, LVP the lowest; ties break by (team_id, unit_id).