Commit Graph
22 Commits
Author SHA1 Message Date
spoopyghosty0 26ef64ebf9 bHaptics: skip the Android 12 Bluetooth permission request (frame.bhaptics_permission, #235)
bHaptics' vest SDK asks for BLUETOOTH_CONNECT at start; on Lepton's Android 11 the permission screen takes the
foreground for a moment and the game pauses (Yupitergrad froze on its loading screen in the reporter's session).
PermissionUtils.requestBluetoothPermission returns at once (Dex.return_early). Suggested by analysis
bhaptics_permission (ANALYSIS_VERSION 14) and triage bhaptics-permission-prompt. On the dev Frame the prompt is gone;
whether it was the whole cause of the freeze is for the reporter to confirm.
2026-10-12 22:40:49 -04:00
spoopyghosty0 6419295a00 Merge PR #245 (Star Wars: Tales from the Galaxy's Edge: splash bypass, multiview depth, SideQuest layout)
# Conflicts:
#	docs/PATCHES.md
#	src/frameport/sources/quest_dump.py
#	tests/test_quest_dump.py
#	tests/test_triage.py
2026-10-12 21:48:22 -04:00
spoopyghosty0 c29cef5f97 FrameBridge: fade_quad draws colour-scale fades as a black quad over the picture (#197)
Opt-in game setting (Picture -> Draw fades over the picture). Batman: Arkham Shadow fades by dimming its projection
layer with XR_KHR_composition_layer_color_scale_bias; with fade_quad=1 FrameBridge adds a black, alpha-blended quad
right after the dimmed layer (VIEW space, 1 m ahead), opacity = 1 - scale in 16 steps. One 8x8 swapchain, refilled
only when the step changes (Vulkan clear on the app's queue / GLES clear in its context); one swapchain per step hit
XR_ERROR_LIMIT_REACHED. fade_quad=2 also removes the layer's own scale. Device (headless, Batman): swapchain created,
level 16/16 on the first frame, no xrEndFrame errors, 72 fps.
2026-10-12 21:40:01 -04:00
Nick Leach 34d00efe0a Fix The Climb CryEngine content detection and VrApi rendering 2026-10-12 16:28:22 -06:00
spoopyghosty0 7202d6ae41 Vermillion 1.7.2: canvases are painted in the scene, so the hand and brush stay visible (frame.vermillion_scene_canvas, #200)
The game showed a canvas being painted as its own compositor layer, which the Frame draws in front of everything.
PaintableMesh.HasCompositorLayerAvailable and ShouldUseCompositorOverlay return false (Cpp2IL), so the game's own
fallback draws the canvas in the scene (Klownicle's finding). Catalog recipe, PLAYBOOK row, test.
2026-10-12 18:23:56 -04:00
Nick Leach 2fe932a50f Fix Tales loading stall, clipped eye rendering, and missing backup assets 2026-10-12 16:21:23 -06:00
spoopyghosty0 4cd7a2b5e8 Docs: patch list regenerated after merging the round's patches 2026-10-12 18:09:49 -04:00
spoopyghosty0 375a9d9fe2 Wander 0.3570: Unity's thread keys share one real key (frame.unity_tls_key_pool, #198)
Bionic allows 128 pthread keys per process. Unity 6 takes about 40, and with Gecko, Firebase and the Frame's own
libraries Wander 0.3570 ran out: Firestore aborted at start ("cannot create thread specific key for
__cxa_get_globals()", #198, #202). Opt-in patch, suggested for Unity 6 with Firebase C++ or Gecko: libunity.so's
pthread_key_create/_delete and pthread_get/setspecific imports are renamed in place to fp_tkey_* (new
elf.rename_imports: undefined symbols only, shared names refused, versions set global) and libfp_tkeys.so
(native/tlskeys) is added to its DT_NEEDED; keys without a destructor become generation-tagged slots behind one
real key, everything else keeps real keys. Approach and the first helper by Klownicle (#198), reimplemented here.
Triage signature pthread-keys-exhausted, PLAYBOOK row, Wander's recipe updated to 0.3570.
2026-10-12 18:06:59 -04:00
spoopyghosty0 401fbed1d5 Games on drives with a space in their name start again; EOS keychain loop patch; Climb's CryEngine detected
- Agent 83: Valve's Lepton pastes the game's paths unquoted into shell commands (liblepton mounting.sh), so a game on
  a card named "Steam Frame 512g" never got its internal storage (no saves, no SharedPreferences). The Quest launcher
  now links the game folder to ~/.local/share/frameport/lepton-paths/<pkg> at every start and gives Lepton that path;
  upgrade_launchers converts existing launchers, move and uninstall handle the link (#213, #214, #215, #221).
- frame.eos_keychain_loop (opt-in, offered by triage): Epic Online Services' resetKeychain returns at once, so a
  keychain it can't write no longer loops forever (Beyond Sandbox, #214).
- Triage lepton-data-link-failed and eos-keychain-loop.
- CryEngine also from libAndroidLauncher.so + a .cryproject (Climb 1, #238); ANALYSIS_VERSION 12.
2026-10-12 17:55:03 -04:00
spoopyghosty0 9bfb2ddd3b Catalog: 15 new working recipes, Beat Saber and Waltz of the Wizard re-verified
Ladder, Munkr Funkr, MacacoVR, Vampire Survivors, Dance Central, NFL PRO ERA II, Swarm 2, Totally Baseball,
Drunkn Bar Fight, Drunkn Bar Fight 2, Fruit Ninja, Kill It With Fire VR, Superfly, FrenzyVR, Dungeons of Eternity.

Closes #243, closes #241, closes #236, closes #234, closes #228, closes #226, closes #224, closes #223,
closes #222, closes #220, closes #207, closes #219, closes #218, closes #217, closes #216, closes #211,
closes #210, closes #206
2026-10-12 17:09:20 -04:00
spoopyghosty0 4863035a05 catalog: Robo Recall gets sync_guard (vrclient xrSyncActions crash on the splash after the intro, GitHub #188) 2026-10-11 13:31:20 -04:00
spoopyghosty0 a30162ea63 Fixes from reports: update dialog links open again (#194), a relaunched update no longer inherits the old app's Flet/Python environment (black window, #195), report form says to attach the zip in a comment if the box won't take it (#196), Job Simulator and Vacation Simulator without Lepton's Android window (frozen hands, #193/#163) 2026-10-11 13:27:18 -04:00
github-actions[bot] 10e7669f70 catalog: com.drawandcode.TaskmasterVR (from #183) 2026-10-11 16:29:18 +00:00
spoopyghosty0 3a851e911f frame.ovr_stable_user: games keep the same Meta user id between starts (OVRPort made up a new one each time, so saves filed under it were lost; GitHub #182) 2026-10-11 12:22:02 -04:00
spoopyghosty0 5c070ccf23 Merge catalog recipe from #181
# Conflicts:
#	docs/PATCHES.md
2026-10-11 10:11:56 -04:00
spoopyghosty0 b979067215 Merge catalog recipe from #176
# Conflicts:
#	docs/PATCHES.md
2026-10-11 10:11:41 -04:00
spoopyghosty0 4440b459e5 Merge catalog recipe from #175
# Conflicts:
#	docs/PATCHES.md
2026-10-11 10:11:31 -04:00
github-actions[bot] 867b9977d5 catalog: com.SchellGames.DieScreaming (from #176) 2026-10-11 14:10:09 +00:00
github-actions[bot] 80092098e0 catalog: com.schellgames.ieytd3 (from #181) 2026-10-11 14:10:06 +00:00
github-actions[bot] feab03e049 catalog: com.innerspacevr.afishermanstale (from #175) 2026-10-11 14:10:06 +00:00
github-actions[bot] 9713da222a catalog: com.WhiteDoorGames.Cosmodread (from #174) 2026-10-11 14:10:05 +00:00
spoopyghosty0 9149eaecd7 Patch reference: scripts/patch_docs.py generates docs/PATCHES.md (every patch and game setting, anchors per id) and the site's id map; --check test, catalog PRs regenerate it 2026-10-11 00:58:51 -04:00