A native PC build of the Xbox 360 game Hydro Thunder Hurricane, produced by static recompilation with the rexglue SDK. The game's PowerPC code is translated ahead of time into native x86-64, so this is a real port rather than an emulator running the original executable.
No game content is included, and none ever will be. You supply the files from your own legally obtained copy. See Game files.
Everything here is beyond what the Xbox 360 release could do:
| Feature | Description |
|---|---|
| Uncapped frame rate | The console was locked to 30. Run it as fast as your hardware allows, or cap it to any refresh rate you like. |
| Any output resolution | 1080p, 1440p, 4K. The game's own scene render target is a fixed size, so raising the output resolution costs essentially nothing - measured identical frame times from 1080p to 4K. |
| Higher internal resolution | A separate scale for the 3D scene itself, for when you do want to spend the GPU time. |
| 16x anisotropic filtering | Sharpens the surface ahead of you. Nearly free on any modern GPU and the single best-looking change available. |
| In-game settings menu | Press F5. Display, Graphics, Audio, Input, Game and Fixes, with search and per-tab reset. No config editing. |
| Frame rate overlay | Press F6 for frame rate, frame time, a history graph and worst-frame tracking. |
| Mouse & keyboard support | Optional, alongside full controller support. |
| Modern display handling | V-Sync or tearing/VRR, letterboxing, safe-area cropping, output dithering, monitor selection. |
- Extract the release.
- Run the executable.
- It asks for your copy of the game and unpacks it. This happens once.
Settings, saves and the shader cache are all kept next to the executable, so the whole install stays portable - move the folder and everything comes with it.
You must provide the game's files yourself, from a copy you own.
The first time you run it, the game walks you through this:
- A message explains that no game content is included.
- A file picker asks for your Hydro Thunder Hurricane package. Hydro Thunder Hurricane was a digital title, so this is a single file whose name is a long string of hex characters, with no file extension.
- The package is unpacked into a
game_datafolder beside the executable. This takes a moment and only happens once. DLC is not supported yet - see Known limitations.
After that the game starts, and every later launch goes straight to the title screen.
The executable inside a retail package is encrypted and compressed, and the game cannot run it in that state - it would reach the title screen and then close as soon as you press Start.
This is handled for you. xextool.exe ships alongside the game, and the
conversion happens automatically during setup - you will just see a short
message saying it was done. The check runs on every launch, so a game_data
folder you assembled by hand gets converted too.
If you ever need to do it yourself, the command is:
xextool -c u -e u -o default.xex default.xex
The picker expects the packaged form. If your copy is already extracted into loose files, skip the prompts entirely by creating the folder yourself before first launch:
Hydro Thunder Hurricane Recompiled/
├─ hydrothunder.exe
├─ rexruntimerd.dll
└─ game_data/
├─ default.xex <- required
├─ Base.apf
├─ Audio/
├─ Video/
└─ ...
default.xex has to sit at the top level of game_data, with the rest of the
game's files and folders beside it as they are laid out in your copy. When that
folder is present the game boots straight into the title screen and never asks.
This project does not provide, and will not help you obtain, game files you do not already own.
Xbox controllers work out of the box. Mouse and keyboard can be enabled under Input in the settings menu.
| Key | Action |
|---|---|
| F5 | Settings menu |
| F6 | Frame rate overlay |
| F4 | Advanced view: every setting the engine exposes, by raw name |
| F3 | Engine debug overlay |
| ` | Console |
Key bindings are rebindable in the advanced dialog (F4) under Input/Keybinds.
- Resolution (Display) sets the output size and is effectively free. This is the one to raise.
- Internal resolution scale (Graphics) is the expensive one - it multiplies the cost of the 3D scene, and 2x measures roughly 8x the GPU time. Raise it one step at a time.
- Frame rate (Display) switches between uncapped and capped; the refresh rate is typed in directly rather than dragged on a slider.
- Anisotropic filtering (Graphics) is the best value in the panel.
Settings are written to hydrothunder.toml beside the executable when the
panel closes. The file is merged rather than rewritten, so any comments and
hand-edits you add to it survive.
Requires CMake 3.25+, Ninja, and Clang - rexglue requires Clang, so MSVC is not supported. On Windows the toolchain that ships with Visual Studio's "C++ Clang tools for Windows" component works.
cmake --preset relwithdebinfo
cmake --build --preset relwithdebinfo -- -j3The recompiled C++ is committed under generated/, so building does not
need the game. Only running it does.
Keep the job count modest. The generated translation units are large and each
one can take 1-2 GB in the compiler; an unbounded --parallel will exhaust
memory on a 16 GB machine.
- DLC is not supported yet - planned for 1.1.0. Installing it makes the game crash after booting, so the option is switched off rather than shipped broken. The base game is unaffected.
- rexglue SDK - the recompilation SDK this project is built on.
- Xenia - whose Xbox 360 research underpins much of the tooling this ecosystem relies on.
- XEXTool by xorloser - bundled with this release and used to convert the game executable during setup. All credit for that tool goes to its author; it is included unmodified.
Hydro Thunder Hurricane is the property of its respective owners. This project is an unofficial, non-commercial port and is not affiliated with or endorsed by them.