Skip to content

Releases: theokyr/Project8Recomp

Project8Recomp v0.3.0

Choose a tag to compare

@theokyr theokyr released this 24 Aug 13:53

Project8Recomp v0.3.0 moves the port to ReXGlue 0.10 and carries the title-specific runtime work onto the new SDK. It substantially improves Steam Deck performance in the heaviest repeatable scene we use, restores correct Apple Silicon presentation with the current runtime, and refreshes the Windows build and portable packaging.

Steam Deck performance

The exact native Linux build was tested in a deterministic late-game Funpark view averaging about 2,665 draws per frame. Compared with v0.2.1 on the same Steam Deck LCD and fixture:

Metric v0.2.1 v0.3.0 Change
Mean frame time 25.00 ms 21.94 ms -12.2%
Effective FPS 40.01 45.58 +13.9%
p50 / p95 25.00 / 27.00 ms 22.00 / 23.00 ms lower and tighter
Process CPU 257.6% 223.1% -34.5 points

A separate six-run, cool-start comparison confirmed the complete new stack's improvement. These are uncapped heavy-scene measurements, not a locked-60 claim. The normal player setting still caps the game to preserve correct cutscene timing.

Runtime and platform changes

  • The port now targets ReXGlue 0.10. The accepted command-processing, native vertex/index, resource-residency, texture/sampler reuse, and bounded-wait paths remain enabled by the launcher's Performance preset.
  • The macOS arm64 archive now bundles MoltenVK 1.4.2, fixing the black host window seen during the first ReXGlue 0.10 test. The full marked Funpark scene rendered correctly on a 2020 Apple M1 MacBook Pro. Busy-area performance is still too slow for comfortable play, so this is a correctness result rather than a performance claim.
  • The complete Windows archive was unpacked and tested through Proton 10 in Steam Deck Game Mode. The launcher, Vulkan path, and all nine marked Funpark checkpoints worked. This mitigates issue #1, but real Windows hardware remains unverified, so Windows is still marked experimental.

Installing

Download the ZIP for your platform, unpack it somewhere writable, and run Project8Recomp (Project8Recomp.exe on Windows). On a new install it opens setup and asks for a disc image from your own Xbox 360 copy. After setup it starts the game through the launcher. Run it with --gui whenever you want the full launcher.

On Steam Deck, add Project8Recomp from the native Linux ZIP as a Non-Steam Game and do not force Proton. The four original thps_p8* executable names are still present, so existing shortcuts and installs remain compatible. The launcher also provides buttons for opening the save and log folders.

Upgrading from v0.1.x or v0.2.x

Use a new folder for v0.3.0. Do not unpack it over the old release: files that were removed or renamed between releases would otherwise remain beside the new runtime and can be loaded by mistake.

  1. Fully exit the game and launcher. Keep the old install as a backup for now.
  2. Unpack the v0.3.0 ZIP into a new folder.
  3. Copy these items from the old install into the new folder:
    • game/ so you do not need to extract your disc again.
    • saves/ to keep your progress.
    • config/settings.toml, if present, to keep your display settings.
    • logs/ only if you want to retain old diagnostic logs.
  4. Run Project8Recomp from the new folder. The launcher recognises the copied game/ directory and recreates any install marker it needs.
  5. After confirming that the game and saves work, you may delete the old folder.

Copy only the data listed above. Do not copy old executables, DLLs, dylibs, shared libraries, or assets/ into v0.3.0.

For a Steam or Steam Deck shortcut, either point it at the new Project8Recomp entry or move the verified new folder into the old folder's location. The original thps_p8* names are still shipped, so a v0.1.x or v0.2.x shortcut keeps working when its folder path stays the same.

The Linux, macOS, and Windows archives are self-contained, contain no game files, and include per-file checksums, licences, build provenance, and the full changelog. See README.md and CHANGELOG.md for full setup instructions, measurements, and known limitations.

Project8Recomp v0.2.1

Choose a tag to compare

@theokyr theokyr released this 24 Aug 08:46

What this release does

v0.2.1 pushes Steam Deck performance further in busy scenes, restores the complete Apple Silicon download, and makes setup and issue reporting clearer. It does not change the supported Xbox 360 disc release, save locations, or any existing executable name.

You still need your own copy of Tony Hawk's Project 8 for Xbox 360. These downloads contain no game data and do not download any. Unpack the ZIP for your platform, run Project8Recomp (Project8Recomp.exe on Windows), and point it at a disc image made from your own copy.

Steam Deck performance

  • The Performance preset now reuses an exactly identical adjacent Vulkan texture descriptor set. In the measured busy view, it avoided about 1,001 descriptor writes per frame and improved the controlled mean frame time by 1.16% with CPU use flat.
  • Ordinary SteamOS launches no longer attach the system RenderDoc library accidentally. That debugger path added substantial per-draw overhead and made the portable player launch slower than the path used for published measurements.
  • The exact Linux ZIP averaged 24.996 ms per frame, or 40.01 effective FPS, in a deterministic Funpark view with roughly 2,667 draws per frame. It measured 24.998 ms p50, 27.003 ms p95, and 257.6% process CPU.
  • The player-default frame cap remains recommended. Turning it off still makes in-level cutscenes run too fast.

macOS arm64 restored

The complete Apple Silicon archive is back after being omitted from v0.2.0. It bundles the Vulkan loader and MoltenVK, so Homebrew is not required. The archive was exercised on a 2020 Apple M1 MacBook Pro through a complete 2,704-draw Funpark frame.

This restores functional support, not comfortable heavy-scene performance. The 2,500-plus-draw rows averaged 236.79 ms, or 4.22 effective FPS, on that M1. The archive is ad-hoc signed but not notarized; use right-click, Open, Open once per install.

Windows remains experimental

The complete Windows ZIP was exercised through Proton 10 on a Steam Deck, including the new wrapper, launcher, supervisor, game handoff, and all nine marked visual checkpoints. The player-default path measured 33.31 / 34.49 ms p50 / p95. Uncapped, it measured 27.83 / 32.02 ms and 35.64 effective FPS.

This is useful compatibility and pacing evidence, but it is not a test on real Windows hardware. The timer and wait changes mitigate the high-CPU, below-speed mechanism reported in issue #1; that issue remains open until a current build is tested on Windows itself. The ZIP includes the required Visual C++ runtime DLLs.

Launcher and setup

  • Project8Recomp is the one new player entry point. Before setup it opens setup; afterward it starts the game. Add --gui to open the launcher home screen.
  • Every v0.1.0 executable remains under its existing name, so old shortcuts continue to work.
  • The launcher now has separate Open save folder and Open logs folder buttons.
  • Setup and error wording now states more clearly that the port contains no game content and never downloads any.
  • Paths and display names are escaped before being inserted into the UI.
  • The resolution fix from v0.2.0 remains included and tested.

See the bundled CHANGELOG.md and known issues for the complete technical detail and current limitations.

Project8Recomp v0.2.0

Choose a tag to compare

@theokyr theokyr released this 23 Aug 23:46

Project8Recomp v0.2.0 is the Steam Deck performance and portable-packaging release. It also fixes the resolution control reported in #2 and mitigates the Windows pacing/CPU mechanism reported in #1.

Download and play

Download the ZIP for your platform, unpack it into a writable folder, and run Project8Recomp (Project8Recomp.exe on Windows). It opens setup when the folder is not configured; after setup, the same entry goes through the launcher and starts the game. Run it with --gui whenever you want the normal launcher screen or settings.

On Steam Deck, use the Linux ZIP, add Project8Recomp as a Non-Steam Game, and do not force Proton.

You must own Tony Hawk's Project 8 for Xbox 360 and supply a disc image made from your own copy. These archives include the port and its runtime dependencies, but no disc image, original executable, or assets copied from the disc.

The four existing thps_p8* executable names and roles are unchanged, so v0.1.0 shortcuts and scripts continue to work. Project8Recomp is one additive wrapper over the existing launcher, not another launcher implementation.

Steam Deck performance

The launcher's Performance setting is enabled on a fresh install and selects the complete title-specific runtime configuration measured for this release.

In the deterministic late-game Funpark fixture on a Steam Deck LCD, the uncapped three-run promotion median covered roughly 2,667 draws per frame at 25.307 ms mean, 25.000 ms p50, 27.015 ms p95, 39.51 effective FPS, and 257.1% process CPU. With player-default frame capping, the release candidate held the intended 30 FPS presentation mode in the same severe view at 33.34 ms p50 / 33.52 ms p95.

This is a heavy-scene frontier, not a locked-60 claim. Smaller, correctness-preserving improvements are included even where their individual gains are modest.

Resolution control — fixes #2

Choosing a window size now uses windowed mode when Fullscreen remains at Game default, so the runtime no longer discards the requested dimensions in borderless fullscreen. Explicit Fullscreen still wins. Named 16:9 modes continue through the runtime's resolution option, while 1280x800 also sets the Deck's host-window and guest video-mode dimensions directly.

Windows — #1 mitigated, hardware verification still needed

The Windows runtime now keeps SDL's timer resolution enabled, waits on a high-resolution deadline timer, catches up a bounded number of elapsed vblanks after a late wake, and blocks or correctly rounds several hot guest waits. The Windows ZIP also includes the app-local Visual C++ runtime, so it does not depend on a separately installed redistributable.

The complete Windows archive was exercised through Proton 10 on a Steam Deck. It held the same player-default 30 FPS mode as native in the 2,600-plus-draw Funpark view at 33.30 ms p50 / 34.45 ms p95. Uncapped, it measured 28.00 / 32.15 ms p50 / p95 versus native Linux at 25.00 / 27.99 ms. Windows-under-Proton used roughly 319–349% process CPU in those heavy runs, versus 253–256% natively.

That is meaningful compatibility-layer evidence, but it is not a test on Windows. The Windows build remains experimental, and #1 remains open for reports from real Windows hardware.

Packaging and compatibility

  • Linux and Windows are complete portable ZIPs with the player entry, the four existing components, runtime libraries, UI assets, licences, build provenance, and internal per-file checksums.
  • The Linux archive requires at most GLIBC 2.38 and GLIBCXX 3.4.32 and was unpacked and smoke-tested in Steam Deck Game Mode.
  • The exact Windows archive was unpacked and exercised through Proton, including its default entry, --gui, launcher handoff, game start, and supervisor cleanup.
  • The macOS v0.1.0 package remains available from the previous release. There is no v0.2.0 macOS package yet.

See CHANGELOG.md for the complete technical summary and docs/SETUP.md for setup details.

Verify downloads with Project8Recomp-v0.2.0-SHA256SUMS.txt attached below.

Project8Recomp v0.1.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 06:59

A native port of Tony Hawk's Project 8 (Xbox 360, 2006), built by static recompilation.

You must own a copy of the game. These archives contain no game assets, no disc image, and no copyrighted game content. The launcher reads a disc image you supply from your own copy. Nobody here has one to give you.

Getting started

  1. Download the archive for your platform and unpack it anywhere you can write.
  2. Run thps_p8_gui.
  3. Point it at a disc image of your own copy. It checks the disc before copying anything, extracts the game into the same folder, and starts it.

Everything lives in that one folder — game data, saves, settings. Nothing is written anywhere else.

Platforms

Platform Status
Linux x86_64 Verified on hardware
macOS arm64 Verified on Apple Silicon. Correct but slow — see known issues
Windows x86_64 Experimental

On Windows: everything is cross-compiled from Linux and exercised under Wine — the launcher, a real disc identification and extraction, and the game booting and rendering. It has never run on Windows itself, because nobody on the project has a machine to try it on. If you run it, please tell us what happened either way; there is an issue template for exactly that.

Neither macOS nor Windows binaries are signed. macOS: right-click → Open. Windows: More infoRun anyway.

Known issues

Leave the frame rate cap on — it is the default. With it off, in-level cutscenes run three to five times too fast. Full list in docs/KNOWN_ISSUES.md.

Verifying your download

Checksums are in SHA256SUMS.txt.