Files
SirRoboGarage/tools/ab/panel_movement.txt
T

72 lines
6.0 KiB
Plaintext

# ─────────────────────────────────────────────────────────────────────────────
# panel_movement.txt — THE FROZEN MOVEMENT PANEL (Batch 1, 2026-09-26)
#
# DO NOT ADD, REMOVE OR REORDER AN OPPONENT without starting a new batch number
# in docs/movement_campaign.md. Every later job in the movement campaign must
# measure against THIS list: the unit of evidence is the number of opponents, so
# changing the panel changes what "better movement" means.
#
# Format (one opponent per line):
# <bot dir or name> | <style group> | <why it is in the panel>
# A bare `Name` is expanded to /tmp/tr_bots/Name. Blank lines and #-comments are
# ignored.
#
# `style` is INFERRED (from the bot's name / docs in
# tools/robocode_shim/robots.json, not from decompilation — robots.json says so
# explicitly). The style group is used ONLY to explain a result, never to decide
# one. The bot dirs come from tools/robocode_shim/robots.json (28 battle-validated
# legacy champions, see LEGACY_BOTS.md) except SpinBot, which is the tank-royale
# sample bot shipped with the project.
#
# Panel design (15 opponents, one axis each):
# * numbers matter, style does not: 5-6 opponents per family so a single
# weird bot can never carry an arm's mean;
# * the anchors (DrussGT/Diamond/Dookious) are the only opponents with older
# movement data, so they keep the new numbers comparable to the old ones;
# * every opponent must be able to DAMAGE us (WORKS in robots.json, not
# WORKS_WEAK): an opponent that lands 0 hits cannot reveal a movement
# regression, and an opponent that cannot dodge cannot reveal a range win.
#
# dodger — wave-surfing / adaptive evasion: punish our bullets AND our
# movement at the same time (the hard axis)
# pattern — pattern-matching guns: punish PREDICTABLE movement, which is
# exactly what a pure perpendicular strafe is
# wallfollower — wall-following / wall-avoiding blockers: punish movers that
# do not manage walls and let a corner-camper's corner matter
# cornercamper — corner camper / low bot
# spinner — periodic circle mover with a head-on gun: the classic
# "did you do anything obviously stupid" control
# rammer — closes to point blank: punishes a mover whose range
# preference cannot be enforced (and rewards damage output)
# brawler — micro/close-range brawler: same axis as the rammer, different
# gun quality
# aggressive — strong aggressive 1v1 megas: the best all-round stress test
# ─────────────────────────────────────────────────────────────────────────────
# ── dodger (5) ───────────────────────────────────────────────────────────────
/tmp/tr_bots/DrussGT | dodger | THE anchor. Our only opponent with prior data (docs/surfer_wiring_ab.md, j107, j113) — keeps new results comparable to the old ones.
/tmp/tr_bots/Diamond | dodger | Voidious top-tier: pattern-matching gun + wave-surfing movement.
/tmp/tr_bots/Dookious | dodger | Voidious: wave-surfing movement + pattern/GF gun.
/tmp/tr_bots/GresSuffurd | dodger | Surf gun + surf movement; the most "modern" of the surfers here.
/tmp/tr_bots/CassiusClay | dodger | Pattern-matching gun + surf movement (different gun family from Diamond).
# ── pattern (3) ──────────────────────────────────────────────────────────────
/tmp/tr_bots/RetroGirl | pattern | Perceptual pattern matcher — the strongest pattern gun in the panel (26 hits in 2 rounds in the validation).
/tmp/tr_bots/TripHammer | pattern | Pattern matcher (19 hits in 2 rounds — strong).
/tmp/tr_bots/Coriantumr | pattern | Mini pattern matcher: small/simple bots stress the same axis at low complexity.
# ── wall follower / corner camper (2) ────────────────────────────────────────
/tmp/tr_bots/WallAvoider | wallfollower | Micro wall-avoider, classic blocking-Robot style: the "wall management" control.
/tmp/tr_bots/HawkOnFire | cornercamper | Corner camper / low bot: punishes movers that let the enemy own a corner.
# ── spinner (1, NOT from robots.json — see the note) ─────────────────────────
/home/davide/Projects/tank-royale/sample-bots/java/build/archive/SpinBot | spinner | The tank-royale sample SpinBot: the only true periodic circle-mover available (there is NO spinner among the 28 legacy champions). It is the same bot every legacy validation used, so it is a known quantity; it is the control for "obviously stupid" movement, not a hard test.
# ── rammer / brawler (2) ─────────────────────────────────────────────────────
/tmp/tr_bots/DiamondStealer | rammer | Rammer / close-range brawler: the only pure rammer validated (12 hits at point blank in the validation).
/tmp/tr_bots/BlitzBat | brawler | Micro brawler: close-range aggression with a weaker gun.
# ── aggressive mega (2) ──────────────────────────────────────────────────────
/tmp/tr_bots/YersiniaPestis | aggressive | Strong aggressive 1v1 mega (never defeated in the 2-round validation) — the generalist stress test.
/tmp/tr_bots/Ascendant | aggressive | Aggressive 1v1 mega on a team-derived pattern base — the second generalist.