diff --git a/web/js/flight/tuning.js b/web/js/flight/tuning.js index 2c48f60..73003d5 100644 --- a/web/js/flight/tuning.js +++ b/web/js/flight/tuning.js @@ -68,9 +68,18 @@ export const TUNING = { // --- movement inside the cross-section disc --------------------------------------- disc: { - accel: 78, // u/s² - maxSpeed: 13, // u/s — crosses the ~16 u tube in ~1.2 s: dodgeable, not twitchy - damping: 6.5, // /s exponential drag => coasts to rest in ~0.3 s + // PLAYTEST FIX (round 3): "ship movement feels sluggish", and it measurably was. + // `damping` is applied every step AFTER accel, so the real cap is not `maxSpeed` at all — + // it is accel/damping. At 78/6.5 that made terminal 12 u/s in theory and a MEASURED 10.16, + // so the old maxSpeed 13 was unreachable and a full tube crossing took 1.95 s. Two seconds + // of lateral travel against 12-20 u/s of forward flow means you cannot answer anything you + // read late — which is exactly what "sluggish" feels like from the cockpit. + // Now: accel 155 with maxSpeed 19 makes maxSpeed the ACTUAL cap (155/6.5 = 23.8 > 19), + // reached in 0.12 s, and the crossing drops to ~1.0 s. Damping is untouched on purpose — + // it is what makes the ship stop crisply, and precision was never the complaint. + accel: 155, // u/s² + maxSpeed: 19, // u/s — a full tube crossing in ~1 s + damping: 6.5, // /s exponential drag => still coasts to rest in ~0.3 s }, // --- arena / 6DOF: in a room, the anatomy stops carrying you ----------------------- @@ -79,8 +88,10 @@ export const TUNING = { // a room (s is the axial one, x/y are the cross-section) — it is that YOU own the forward // axis. You can stop. You can reverse. Nothing is shoving you at the boss. arena: { - thrust: 44, // u/s² axial. Softer than disc accel 78: a room is read, not strafed - maxSpeed: 11, // u/s — under the esophagus's 12-20 flow on purpose (GDD: "slower") + thrust: 90, // u/s² axial. Still softer than the disc: a room is read, not strafed + maxSpeed: 16, // u/s — under the esophagus's 12-20 flow on purpose (GDD: "slower"), + // but raised with the disc so a room does not feel like treacle + // next to the corridor that leads into it. damping: 2.2, // /s — a long coast (no gravity), but it does come to rest }, @@ -96,7 +107,9 @@ export const TUNING = { // --- attitude: bank into lateral motion ------------------------------------------- bank: { - gain: 0.055, // rad of roll per u/s of lateral disc velocity + gain: 0.04, // rad of roll per u/s. Rescaled for the faster disc: 19 u/s now + // lands right at `max`, so full deflection = full roll and + // everything below it still reads proportionally. max: 0.75, // rad (~43°) rate: 7, // /s spring toward target roll pitchGain: 0.03, // rad of pitch per u/s of vertical disc velocity