From 8d363b1f012a48d411cd8595a822c37ee6e6dec8 Mon Sep 17 00:00:00 2001 From: claude-re Date: Thu, 30 Jul 2026 18:54:16 +0000 Subject: [PATCH] docs/re: the game's own in-flight action list, off the disc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Decoded dat/GP_OPTIONS.pak (po_keys_btn* sprites): the OPTIONS key-config screen lists every bindable in-flight action. Two of them change the plan. 'Change Target' exists — so target selection IS an input, and the earlier probe that swept LB/X/B/A/LS/RS found nothing only because it watched the ammo counters, which those actions do not touch. 'Padlock Mode Toggle' is a view/aim lock onto the selected target: the aim-dwell problem solved by a game mechanic rather than by tuning a PD controller, and presumably how a human holds a contact long enough to lock a missile. Confirms our measured bindings (Use Nose Weapon = RB, Use Main Weapon = Y, Accelerate/Decelerate = RT/LT, Radar Map Toggle = d-pad) and adds Special Move, Maneuver, Resupply and Change Main Weapon (which would reach ASMissile, Power 5000). Also records that CONTROL SETTINGS carries a Control Type preset plus yaw/pitch/roll sensitivity, so the mapping is not fixed and any stick calibration is only valid for the save's current profile. Tutorial menu (GP_TUTORIAL.pak) names the six lessons: BASIC CONTROLS, HEADS-UP DISPLAY, RADAR, SUPPLY AND SPECIAL MOVES, RADIO ORDERS, ADVANCED CONTROLS. --- docs/re/flight-controls-runtime.md | 40 ++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/docs/re/flight-controls-runtime.md b/docs/re/flight-controls-runtime.md index ec0a471f..b1b56bcc 100644 --- a/docs/re/flight-controls-runtime.md +++ b/docs/re/flight-controls-runtime.md @@ -36,6 +36,46 @@ enough to complete a lock. The next thing worth doing is making aim *dwell* — cheapest oracle for whether a lock ever completes is the reticle itself, or finding the lock timer in the player object with the same anchoring trick used for hull. +## The game's own action list (from the OPTIONS key-config screen) + +Decoded from `dat/GP_OPTIONS.pak` (`po_keys_btn*` sprites) — this is the authoritative +set of bindable in-flight actions, straight off the disc, no probing required: + +| # | Action | Our mapping | +|---|---|---| +| 1 | Aircraft Control | LX/LY ✅ | +| 2 | View Point Control | RX/RY (unused by the pilot) | +| 3 / 4 | Left / Right Yaw Control | — (separate from pitch/roll!) | +| 5 / 6 | Accelerate / Decelerate | `RT` / `LT` ✅ | +| 7 | **Use Main Weapon** | `Y` ✅ | +| 8 | **Use Nose Weapon** | `RB` ✅ | +| 9 | Special Move | ❔ | +| 10 | Maneuver | ❔ | +| 11 | Resupply | ❔ | +| 12 | **Change Target** | ❔ — **this is the target-select the loop needs** | +| 13 | Change Main Weapon | ❔ (would reach `ASMissile`, Power 5000) | +| 14 | **Padlock Mode Toggle** | ❔ — **the aim-dwell mechanism** | +| 15 | Radar Map Toggle | d-pad 🟡 (matches the observed map overlay) | + +Two entries change the plan outright: + +- **`Change Target` exists**, so target selection *is* an input after all. The earlier + probe swept `LB/X/B/A/LS/RS` and found no ammo change — consistent with those being + exactly these non-weapon actions. The probe simply watched the wrong indicator. +- **`Padlock Mode Toggle`** is a view/aim lock onto the selected target. That is the + aim-dwell problem solved *by a game mechanic* rather than by tuning a PD controller — + and it is why a human player can hold a contact long enough to lock a missile. + +Also note `CONTROL SETTINGS` carries a **`Control Type`** preset plus **Yaw / Pitch / +Roll Sensitivity** and a separate **`Throttle`** option: the mapping is not fixed, and +the craft's response to a given stick deflection is configurable. Any calibration done +against one profile (e.g. the `ctrl_probe.py` throttle numbers) is only valid for the +save's current settings. + +**Next:** bind physical buttons to actions 9–14 by watching the *reticle and target +panel* (not the ammo counters) — and once `Change Target` and `Padlock` are identified, +re-run the missile test with a locked target. + ## Notes for the reimplementation - Two independent weapons with separate ammo pools and separate HUD counters: