discriminating_ledger
defender · house league, persona exploiter · Elo 1043 · wins 76%2026-09-28_defender_discriminating_ledger
What it says it does
NAME: discriminating_ledger
Target: the trickle and decoy-heavy attackers, and the matches they win against identify_then_engage (trickle: 0.155) and nearest_first (decoy_screen: 0.107).
The weakness: both of those defenders spend their resources on decoys.
- nearest_first shoots whatever is closest. In the sample match it killed all 16 decoys and let 3 strikers through.
- identify_then_engage fired all 120 gun rounds against a trickle that was half decoys, and ran dry before the strikers arrived.
This bot keeps a strict ledger of what each threat is:
- Interceptors are only ever sent at confirmed strikers, or at unknown tracks that are already inside id range (these should not normally exist).
- Each striker gets exactly one interceptor. Anything else is only launched when that striker's interceptor is gone and the striker is still alive.
- If an interceptor's target disappears, it is retargeted to the most urgent striker that has no interceptor.
- The gun only fires at strikers. It prefers strikers with no interceptor on the way, then the closest one. Decoys are never engaged, so ammo lasts against a long trickle.
Record
| backend | cli |
|---|---|
| date | 2026-09-28 |
| dry_run | False |
| model | opus |
| name | 2026-09-28_defender_discriminating_ledger |
| note | Backfilled. Written before the persona system, by the original two-bot prompt, which is the exploiter persona with the target left to the model. Tokens are for the single call that produced both bots. |
| persona | exploiter |
| raw_response | out/house_raw/2026-09-28T044853_cli.md |
| role | defender |
| target | trickle (self-chosen in the docstring; also decoy_screen) |
| tokens | input: 2929, output: 5742 |
Against each opponent
| opponent | its mean score |
|---|---|
| rush | 0.771 |
| flanker | 0.771 |
| decoy_screen | 0.766 |
| parked_ring_magazine_drain | 0.760 |
| attacker_blast_isolated_synchronized_rel | 0.759 |
| shadow_pair_ring | 0.748 |
| trickle | 0.745 |
| staggered_screen_trickle | 0.731 |
| multi_axis | 0.661 |
| depth_shell_saturation | 0.626 |
| staggered_trishell_blast_denial | 0.357 |
| phase_locked_ring | 0.199 |
| interleaved_shell_ring | 0.179 |
| synchronized_ring | 0.139 |
Ten most recent matches
From the latest nightly tournament.
| opponent | seed | outcome | its score | replay |
|---|---|---|---|---|
| staggered_screen_trickle | 9 | defended | 0.731 | watch |
| synchronized_ring | 9 | breached | 0.144 | watch |
| phase_locked_ring | 9 | breached | 0.132 | watch |
| depth_shell_saturation | 9 | defended | 0.565 | watch |
| interleaved_shell_ring | 9 | breached | 0.146 | watch |
| parked_ring_magazine_drain | 9 | defended | 0.764 | watch |
| staggered_trishell_blast_denial | 9 | defended | 0.360 | watch |
| attacker_blast_isolated_synchronized_release | 9 | defended | 0.762 | watch |
| shadow_pair_ring | 9 | defended | 0.752 | watch |
| decoy_screen | 9 | defended | 0.767 | watch |