diff --git a/docs/re/captures/filepad-flight-stage01.png b/docs/re/captures/filepad-flight-stage01.png new file mode 100644 index 0000000..6b06d88 Binary files /dev/null and b/docs/re/captures/filepad-flight-stage01.png differ diff --git a/tools/re-capture/entities2.py b/tools/re-capture/entities2.py index 541ca03..d79abc4 100644 --- a/tools/re-capture/entities2.py +++ b/tools/re-capture/entities2.py @@ -145,7 +145,18 @@ def main(): return if cmd == "self": + # The "_Player" suffix is STAGE-SPECIFIC. Stage 02 fields + # UN_f002_TCAF_DeltaSaber_W_Player, but stage 01 fields + # UN_f001_TCAF_DeltaSaber_T with no suffix at all, and this filter then + # found nothing while the game was visibly flying. Fall back to the + # player's craft class and prefer the instance that is actually moving — + # a mission holds more than one. me = [e for e in ents if "Player" in e[1]] + if not me: + me = [e for e in ents if "DeltaSaber" in e[1] or "ArrowHead" in e[1]] + me.sort(key=lambda e: -e[3]) # fastest first: the flown one + if me: + print(f"# no *_Player entity; falling back to craft class -> {me[0][1]}") if not me: sys.exit("player entity not found") off, nm, pos, sp = me[0] diff --git a/tools/re-capture/fly_stage.sh b/tools/re-capture/fly_stage.sh index e84cf12..40cc5e5 100755 --- a/tools/re-capture/fly_stage.sh +++ b/tools/re-capture/fly_stage.sh @@ -80,8 +80,11 @@ pad tap A 0.20; sleep 3; shot 05-after-A2 # READY ROOM (TAKE OFF / BRIEFINGS / HANGAR / ...) with BRIEFINGS pre-highlighted. # A snapshot taken at the briefing yields ZERO unit-definition objects — they are # instantiated at stage load proper — so the run has to reach flight. -say "clearing the briefing" -for _ in $(seq 1 10); do pad tap A 0.20; sleep 2.5; done +# START (Skip) clears the briefing. `A` does NOT: it pages through the brief and +# ten taps still left the run sitting on a briefing screen, twice. One START press +# lands on the READY ROOM. +say "skipping the briefing (START, not A)" +pad tap START 0.30; sleep 6 shot 06-readyroom say "READY ROOM -> TAKE OFF (one up from the pre-highlighted BRIEFINGS)" pad dpad up 0.06; sleep 1; shot 07-takeoff-hl