spoopyghosty0
d2c72264be
Screenshots tab: Steam screenshots on the Frame, matched to games by play session
...
Agent v45: list_screenshots (screenshots.vdf + folders, every account; the Frame files headset shots under SteamVR
250820, so launch.sh now logs start/end to <anchor>/plays.log and upgrade_launchers adds it to existing launchers) and
delete_screenshots (only images in userdata/<id>/760/remote/<appid>/screenshots, links refused, vdf left to Steam).
PC: install/screenshots.py (thumbnail/full-image cache under screenshots-cache/<frame>, cancellable download).
GUI: Screenshots nav item (grid by day, game filter, viewer with prev/next, multi-select download/delete), game menu
entry; ui_smoke --fake-frame sample shots.
2026-10-04 23:47:08 -04:00
spoopyghosty0
fd478f4c70
Notes: space warp findings (Into The Radius 2), PR #34 , heuristics evaluation baseline
2026-10-04 23:28:06 -04:00
spoopyghosty0
d834ffac42
Heuristics: suggest AC Nexus's 90 Hz no-AppSW patch whenever it applies; Unreal Engine 5 games with Meta's plugin show hide_space_warp as an option (off) with the flicker hint
2026-10-04 23:27:14 -04:00
spoopyghosty0
3e11175001
Audio metadata fix: look for Meta's audio library at most once a second and stop once a different build was found (it rescanned every loaded library on every xrPollEvent in games without it)
2026-10-04 23:26:41 -04:00
spoopyghosty0
85a11061d0
Merge PR #34 : Meta XR Audio metadata lifetime fix for Batman: Arkham Shadow smoke bombs (Lucas-Mathieu); adapters rebuilt here
2026-10-04 23:26:27 -04:00
spoopyghosty0
e26cb8b0db
FrameBridge hide_space_warp (per game, off by default): hides XR_FB_space_warp and removes space warp info from the eye images; for games whose picture flickers with Application SpaceWarp (Into The Radius 2 under test; OVRPort's patch_disable_space_warp doesn't reach UE5)
2026-10-04 23:22:27 -04:00
spoopyghosty0
208d7bb4dd
Close SteamVR's dashboard once a FramePort game shows its first VR frames (it was open at every start, also over Lepton's 2D launcher): launch.sh starts the agent's dashboard helper, which uses Steam's UI (CEF devtools); existing launchers get it in place (agent v44)
2026-10-04 23:08:41 -04:00
spoopyghosty0
cf1a2c9181
launch.sh ends the game when Steam's reaper is gone (GitHub #36 : Exit game left Lepton running); existing launchers get the watchdog in place (agent v44); PLAYBOOK rows for the Steam library fallback and Exit game
2026-10-04 23:03:02 -04:00
spoopyghosty0
ba9ccc3606
FramePort 0.8.0
v0.8.0
2026-10-04 21:39:55 -04:00
spoopyghosty0
83a614d645
Steam library fallback (GitHub #21/#30): when the Frame's Steam doesn't know FramePort's shortcut (Play: AppError_9), the game is added through Steam's devkit interface, live and without a restart, with its art; uninstall/purge remove it. Play reads Steam's AppError lines; diagnostics include Steam's shortcut log and devkit games (agent v43)
2026-10-04 21:38:50 -04:00
spoopyghosty0
5734c1fdee
Use your own artwork: choose an image file for a game's cover, wide cover, banner, logo or icon (game menu, or from Find artwork), checked and stored as the user's pick so automatic fetches keep it
2026-10-04 20:31:09 -04:00
spoopyghosty0
af791a45b4
FramePort 0.7.2
v0.7.2
2026-10-04 20:23:58 -04:00
spoopyghosty0
11c8802b07
Remember the window position and maximized state (GitHub #32 ); diagnostics for Steam refusing FramePort's games (GitHub #21/#30): Play reports what Steam's log says about the launch, diagnostics include the Steam library state and Steam's launch log lines (agent v42)
2026-10-04 20:22:47 -04:00
Lucas-Mathieu
70d519a5a9
Fix Meta XR Audio metadata lifetime during Batman smoke effects
2026-10-05 01:50:57 +02:00
spoopyghosty0
4e00c88949
FramePort 0.7.1
v0.7.1
2026-10-04 19:24:49 -04:00
spoopyghosty0
1b62d643f3
Notes: language packs verified with Deadpool VR (English dialogue with the patch on)
2026-10-04 19:23:33 -04:00
spoopyghosty0
6bd4eb523f
One job queue per process (Flet builds a new app per window session: an old session's job ran unseen and the same game was built twice at once in one work folder, both failed) and one build per game at a time
2026-10-04 19:23:32 -04:00
spoopyghosty0
d22123c657
Language packs: lint (line length, imports)
2026-10-04 19:23:32 -04:00
spoopyghosty0
0137cd993b
Language packs: ship libfp_langpack.so (built here), drop the dispatcher's late asset-list answer once we answered after the timeout (one answer per request), per-thread skip list, and games already in a library get their packs listed after an app update
2026-10-04 19:23:32 -04:00
yzfsoldier
7b8e7c2c5d
Opt-in frame.langpacks: serve <tag>.lang language packs from the game's files (PR #20 )
...
Some Quest games ship voice-over languages as <tag>.lang files and ask the Meta Platform SDK for them; overport's
platform loader answers with nothing, so every language but the built-in one stays greyed out. libfp_langpack.so
answers the language-pack and asset-file calls from the packs already on the device (Metadata = the game's
versionName, the /storage/emulated/0 path spelling Unreal uses). Tested in the headset with Deadpool VR (German
dialogue), AC Nexus and Asgard's Wrath 2.
2026-10-04 19:23:29 -04:00
spoopyghosty0
990331e5b6
WiiCompiled VR recipe: how to add a game (upload the .wcgame to its Import folder with the Files tab)
2026-10-04 18:32:29 -04:00
spoopyghosty0
56b370f582
WiiCompiled VR recipe: works with issues (no document picker in Lepton: manual .wcgame import; right eye jitters in races, inside the game's own OpenXR path)
2026-10-04 18:29:53 -04:00
spoopyghosty0
ac628cd284
FrameBridge: per-eye diagnostics (eye_debug: submitted vs fresh eye poses, eye-to-eye relation, release timing; also logged to framebridge.log because some games end Lepton's logcat early) and release_wait (wait for the game's GPU work before an image is released; 2 = A/B after 60 s)
2026-10-04 18:24:15 -04:00
spoopyghosty0
c12b2f6992
Steam art: games whose only art is the library's generated cover/banner get the placeholder set again (they got no Steam art at all, e.g. WiiCompiled)
2026-10-04 18:19:03 -04:00
spoopyghosty0
a110e8573f
QuestCraft recipe: works with issues (Java runtime missing on first start; Minecraft's graphics then fail with OpenGL error 1282)
2026-10-04 18:11:37 -04:00
spoopyghosty0
4fdeeaf829
FrameBridge emulates Android video panels (XR_KHR_android_surface_swapchain: I Am Monkey's intro, surface_emul); the launcher repairs save folders without group write (SUPERHOT quit at start, agent v41); SUPERHOT (Quest) and I Am Monkey recipes; Lucky's Tale's out-of-memory diagnosis
2026-10-04 18:07:22 -04:00
spoopyghosty0
dbabb37343
FramePort 0.7.0
v0.7.0
2026-10-04 17:08:34 -04:00
spoopyghosty0
7afee4bf59
FramePort on the Frame: Play in Desktop Mode says the game will be in the Steam library back in Gaming Mode (was an error: the waiting library update read as 'no answer'); a second request for a game whose library update already waits doesn't start another (agent v39)
2026-10-04 16:53:47 -04:00
spoopyghosty0
7367a35176
Library rescans find new downloads: a folder with a stray APK next to game folders counted as one game (the scan stopped there), and games more than two folders down (a download manager's <library>/data/downloads/<game>/) weren't searched; now 5 levels, collections vs game folders told apart, PC program folders and code checkouts skipped
2026-10-04 16:50:33 -04:00
spoopyghosty0
9948f946c5
Remove from library offers the same 'also delete this game's files on this PC' option (off by default)
2026-10-04 16:39:35 -04:00
spoopyghosty0
3870500972
Uninstall asks whether to also delete the game's files on this PC (off by default): the APK and data folder (or a PC VR game's folder) and FramePort's converted copies, listed with their size; never signing keys or files another library entry uses; the game then leaves the library
2026-10-04 16:36:17 -04:00
spoopyghosty0
a7b02c00ee
On the Frame itself the app keeps its data in ~/.local/share/frameport-app: ~/.local/share/frameport is the agent's folder, which its purge removes (with the game signing keys)
2026-10-04 16:31:54 -04:00
spoopyghosty0
09c7bb6ea7
SDL / LÖVE apps start on the Frame (GitHub #24 ): Lepton's Android has no clipboard service and SDLClipboardHandler's constructor crashed on it; frame.sdl_clipboard skips that one call with an in-place classes.dex edit (apk/dex.py), verified with LÖVE for Android 11.5 (crash without, runs with). Android apps without VR keep every suggested non-VR patch
2026-10-04 16:29:45 -04:00
spoopyghosty0
3761dfd62d
FramePort on the Frame itself: on SteamOS ARM64 it remembers 'This Frame' (127.0.0.1) and authorizes its own key (no pairing; Developer Mode for sshd, explained if off). Steam library changes wait while Desktop Mode is open (a Steam restart would end it, and FramePort with it; agent v38). Recipe: Beat Saber co-existence build ( #29 , without the repack's branding)
2026-10-04 16:17:24 -04:00
spoopyghosty0
f86d9021f9
Steam library fixes (GitHub #4 , #21 , #27 ): shortcuts go to every Steam account, the agent waits for Steam's helpers before writing and checks the entries survived Steam's restart (writes once more, else reports it; agent v38); Play's add-to-library repair no longer crashes (TypeError since 0.6.3). Uploads resume after a transient OSError (Windows Errno 22). Recipes: Riven ( #26 ), SUPERHOT VR Rift version ( #28 )
2026-10-04 16:03:38 -04:00
spoopyghosty0
83e901a682
Accounting+: works with issues (VR starts with frame.unity_oculus_check + the frame-wait shim; stuck at 'press any button' although its OVRInput gets clean input). The shim's input wrappers (logging, input focus, stuck-button release) stay behind INPUT_PROBE (off); per-hand interaction profiles and input counters in layer_debug
2026-10-04 15:50:00 -04:00
spoopyghosty0
246e5fc5ee
Accounting+ runs: with the frame-loop shim Unity 2017's built-in Oculus support submits frames (~71 fps in the launch test, was a frozen dashboard); frame.unity_oculus_check is suggested again
2026-10-04 15:03:49 -04:00
spoopyghosty0
17403779cb
Accounting+ / Unity 2017 built-in Oculus: native/ovrpshim (libfp_ovrp.so) adds the frame wait Unity's legacy loop never makes (fpov_Update2 = ovrp_WaitToBeginFrame once per frame, then ovrp_Update2); frame.unity_oculus_check renames the lookup in libunity.so and links the shim into libOVRPlugin.so. Still opt-in until a launch test shows frames
2026-10-04 14:58:01 -04:00
spoopyghosty0
0e03e061a4
Recipes FramePort derived (not the user's own) are derived again once after every app update, so new automatic fixes reach games already in a library (e.g. the Vulkan shim for own-engine games); a changed recipe shows Update on Frame
2026-10-04 14:52:26 -04:00
spoopyghosty0
d8cf19fb20
Owner's verdicts: Blade & Sorcery works, BattleGlide works, Myst and I Am Cat work with issues, Roblox unsupported; Myst keeps application space warp (turning it off didn't help). PLAYBOOK: symptom rows and debugging techniques from these sessions (headset-only failures, linker log via LEPTON_GFXRECON_FP_PROPS, Unity's own tombstone, wear-sensor focus losses in vrserver.txt, inlined getters, catalog YAML)
2026-10-04 14:43:49 -04:00
spoopyghosty0
7cd9a38eaf
Headset round 3: Blade & Sorcery's freezes are the headset's wear sensor flickering off while worn (SteamVR 'HMD off' 0.5-2 s), which only this game pauses on: new adapter setting focus_hold_ms (default 1000; 2500 in its recipe). Installs no longer restart Steam when the game's shortcut is unchanged (a reinstall ended a game being played), and wait while a game runs when Steam has to restart (agent v37). frame.vk_sanitize also covers own-engine libraries that load libvulkan.so by name (Roblox's crash is on Fossilize's recording thread). Myst: app space warp off (object glitches). frame.unity_oculus_check is opt-in (Unity 2017's frame loop never waits: dashboard freeze). focus_hold: 1 s focused / 1 s dips by default
2026-10-04 14:15:50 -04:00
spoopyghosty0
4f3593192f
Recipes from the second headset round: BattleGlide works (focus_hold), Myst works with minor glitches (sync_guard confirmed), Blade & Sorcery still jumps/freezes now and then. GAMES.md is generated from the repo's recipes only (a local user catalog hid Myst), and a test parses every catalog file (a broken one was skipped silently)
2026-10-04 12:03:53 -04:00
spoopyghosty0
974426d1d0
Headset round (2026-10-04): frame.unity_oculus_check (Unity 2017-2018 built-in Oculus starts VR only with Meta's com.oculus.systemactivities; Accounting+ now creates its OpenXR instance instead of running as a hidden 2D app); adapter sync_guard (the Frame runtime's xrSyncActions race right after focus, Myst); recipes: Myst, BattleGlide and Blade & Sorcery: Nomad (focus_hold for the Frame's brief focus dips) as works with issues, Roblox and BONELAB unsupported with what was found; triage + PLAYBOOK rows
2026-10-04 11:45:52 -04:00
spoopyghosty0
b7a0e0cb5b
Notes: device results for the requested games (BONELAB, Roblox, Accounting+ findings)
2026-10-04 11:14:57 -04:00
spoopyghosty0
38edc26092
Cpp2IL: a build it can't read (e.g. Unity 2017) is cached as such, so each Unity patch doesn't run it again, and the error names Cpp2IL's exception instead of a stack trace; the controller-profile triage line no longer suggests profile_remap (it's on by default)
2026-10-04 11:14:43 -04:00
spoopyghosty0
e96e25bade
Controller profiles (0.7.0 D): the adapter suggests bindings for Meta's newer Touch profiles (Touch Plus/Pro), which the Frame's runtime rejects, again as oculus/touch_controller (setting profile_remap, default on; triage info signature). unity_no_msaa: games with several MSAA quality levels failed ('bytes not found in place'), and pre-2019 Unity names the field blendWeights
2026-10-04 10:27:53 -04:00
spoopyghosty0
67c991ca4f
Fixes from user reports, round 2: VR4 campaign hang (one shader reads an uninitialized loop counter; the Vulkan shim's new vk_shader_fix setting inserts the zeroing stores, matched by size + SHA-256, from #10 's capture); I Am Cat multipass (the getter is inlined: the field read in OculusLoader.Initialize is rewritten, verified on a Frame); builds remember their recipe (recipe_fp, Patch.revision) so changed recipes show Update on Frame; a Frame that got a new address is found again by its SSH host key; packaged apps show library artwork ( #16 ); diagnostics include this boot's kernel log; the Game settings dialog keeps text settings; recipes from #13 , #14 , #15 , #17
2026-10-04 10:21:30 -04:00
spoopyghosty0
d2017194f3
Catalog recipes reach games already in the library: recipes remember the catalog entry they came from (catalog_rev) and are derived again when it changes (never the user's own edits); a maintained entry updated after the user's shared copy wins. Recipes: I Am Cat (issues: frame.unity_multipass), Lucky's Tale (issues: frame.unity_runtime_msaa_off), VR4 works with the no-ForceQuit build
v0.6.3
2026-10-04 01:31:16 -04:00
spoopyghosty0
7a11706b3a
FramePort 0.6.3: Unity patches frame.unity_runtime_msaa_off (OVRManager turns 4x MSAA on at runtime: Lucky's Tale restarted the headset, #9 ) and frame.unity_multipass (Oculus XR Plugin multiview: I Am Cat's grey right eye, #8 ), sharing one Cpp2IL run per build; triage signature for runtime MSAA; VR4 installs the no-ForceQuit build ( #10 )
2026-10-04 01:22:47 -04:00
spoopyghosty0
76d4390b19
Steam library entries (issues #4 , #5 : 'Game configuration unavailable', no shortcuts): agent v35 adds shortcuts for the signed-in Steam account (loginusers.vdf), else every account, instead of failing when the Frame has several; Play launches the shortcut's own id and says when a game isn't in the library, and the app then adds it and starts the game; an install whose library entry isn't confirmed says so. Triage: OVRPlugin's routine 'Unavailable OpenXR extension: XR_FB_scene' no longer suggests scene emulation
2026-10-04 01:10:52 -04:00