Input: split the V key -- look-behind stays, view toggle moves to F1

'V' was double-bound: the authentic look-behind (held) AND the cockpit/chase
view toggle (edge), so a single press flipped the camera while also looking
behind. Move the view toggle to F1 (unused); V is now look-behind only.

The view toggle is a desktop-only convenience (no RIO equivalent) so it stays
on `focused`, always live -- including under PadRIO. Look-behind keeps the
BT_DEVKEYS `gfocus` gate (a RIO device's binding owns it when engaged).

Dist README/environ.ini corrected to match reality: under L4CONTROLS=PAD the
default keyboard driving is the NumPad (WASD are MFD-bank buttons in the default
bindings.txt), the controller left stick drives, F1/backtick/V-hold are the
always-live desktop keys, and BT_DEVKEYS=1 re-enables the built-in quick keys.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Cyd
2026-07-17 10:47:47 -05:00
co-authored by Claude Opus 4.8
parent 6a302f3aed
commit abeb7727e9
2 changed files with 32 additions and 11 deletions
+11 -6
View File
@@ -2684,17 +2684,22 @@ void
const int xNow = gfocus && (pAsync('X') & dn) ? 1 : 0;
if (xNow && !sPrevX) gBTDrive.allStop = 1; // edge -> one all-stop
sPrevX = xNow;
// V: toggle the view between the authentic COCKPIT eyepoint
// (the pod's only view) and the external chase camera.
static int sPrevV = 0, sViewInside = 0;
const int vNow = focused && (pAsync('V') & dn) ? 1 : 0;
if (vNow && !sPrevV)
// F1: toggle the view between the authentic COCKPIT eyepoint
// (the pod's only view) and the external chase camera. Moved
// off 'V' -- which is the authentic look-behind (held) above --
// so the two no longer collide (pressing V used to also flip
// the camera). Desktop-only convenience with no RIO equivalent:
// stays on `focused` (not the BT_DEVKEYS `gfocus` gate), always
// live even under PadRIO.
static int sPrevViewKey = 0, sViewInside = 0;
const int viewKeyNow = focused && (pAsync(0x70 /*VK_F1*/) & dn) ? 1 : 0;
if (viewKeyNow && !sPrevViewKey)
{
sViewInside = !sViewInside;
extern void BTSetViewInside(int inside);
BTSetViewInside(sViewInside);
}
sPrevV = vNow;
sPrevViewKey = viewKeyNow;
// RETICLE = SCREEN CENTER (task #58 correction, supersedes the
// task #39 "body-mounted view" model): the CAMERA yaws with
+21 -5
View File
@@ -132,6 +132,12 @@ BT412STEAM=1
# ---- Optional --------------------------------------------------------------
# The engine also has built-in WASD / 1-4 / M / etc. quick keys that OVERLAP the
# bindings.txt layout, so under L4CONTROLS=PAD they stand down automatically (the
# pad + keyboard bindings own the controls). Set to 1 to force them on ALONGSIDE
# the bindings (hybrid keyboard-drive); 0 to force off. Unset = auto.
#BT_DEVKEYS=1
# Mission-length override, integer seconds (short test missions). The menu's
# LENGTH choice sets this; uncomment to force it.
#BT_MISSION_SECONDS=120
@@ -179,12 +185,22 @@ green MFD surfaces with the pod's RIO button banks (click them with the mouse;
they light as the game commands their lamps). At the chosen length the mission
stops and a MISSION COMPLETE scoreboard shows, then it returns to the menu.
Controls (XInput controller and/or keyboard) - rebindable in bindings.txt:
Left stick / WASD drive (throttle holds; A/D steer)
X all stop
Space / A fire
Controls -- under L4CONTROLS=PAD (the shipped default) input comes from the
XInput controller + keyboard through bindings.txt; edit that file to rebind.
Controller left stick drive (throttle holds position; steer)
Controller triggers pedals; A / bumpers / face buttons = fire + hat
Keyboard (default profile) NumPad 8/2/4/6 = stick, 7/9 = pedals, 0 or Space =
fire, Shift/Ctrl = throttle up/down; the number and
letter rows are the MFD bank buttons and the F-keys
the Secondary columns (full layout in bindings.txt)
mouse click the on-screen cockpit buttons
(see bindings.txt for the full default layout)
Always-live desktop keys (not rebindable):
F1 toggle cockpit / external chase camera
` (backtick) hide / show the secondary displays (MFDs + radar)
V (hold) look behind (rear view; rear-mounted weapons fire)
(The engine's built-in WASD / 1-4 quick keys overlap the bindings, so they
stand down under PAD -- set BT412 env BT_DEVKEYS=1 in environ.ini to force
them on alongside.)
MULTIPLAYER - please read