LInk's Awakening HD Switch Recomp
Hello,
I’ve made, admittedly with almost exclusive use of AI, a static recompilation port of the Nintendo Switch version of Link’s Awakening.
I know AI usage is controversial. I do some of my own Swift macOS development, but something like this is way beyond my skill set and wouldn’t have been possible without AI. I’m guiding it as responsibly as I can. It is what it is. If you disagree with the use of AI, I understand your position and likely agree with many of the points you could bring up, but this is a fan project of a game I love. I made it to have the ultimate way of enjoying the game myself, and sharing it is just a courtesy. AI or not, I’m committed to making this awesome for the love of the game, and contributions are welcome.
Another big disclaimer: this release includes NO Nintendo game files, assets, keys or fonts. No XCI/NSP, no prod.keys, no textures, models, music or text. You must provide your own dump of the game (v1.0.0) and your own keys to play. That even includes fonts, since the game uses a few proprietary ones: you can dump them from your own Switch for an authentic experience, or use the reasonable substitutes I’ve picked that look okay in game. You can also choose your own, though I probably won’t add support for fonts that don’t work; the option is there if you want to play around with it.
Enough about that, let’s talk about the game!
First and foremost, this is a 0.1 release, basically an early alpha/beta. Bugs are likely, especially with the randomizer, and some graphical glitches are still present. I know about some of them already (there’s a Known issues list on GitHub though it's already behind what I know about); I’m not pretending this is perfect yet. But the game should be...... knocks on wood ... 100% beatable in Vanilla and run well while doing so.
For the randomizer logic, I’ve done a lot of testing, including scripts that check seeds are beatable, but there’s no guarantee. Due to the nature of randomizers, it needs a broader set of players to truly find every oddity. Simpler settings should be mostly bug-free, but the crazier settings, like decoupled entrance rando, bushsanity, digsanity, and dungeon room shuffling, could still produce softlocks. Room shuffle especially: go in expecting to find bugs and help make it great by reporting them, not expecting to beat it.
GitHub: https://github.com/peiikai/LASRecomp
Project Discord: https://discord.gg/DhrgdYqdcY
Install:
macOS: open the .dmg and drag LAS Recomp into Applications. The app isn’t notarized yet, so you'll have to allow Gatekeeper to run it anyways for now. I do have an Apple Developer ID and will notarize the 1.0 release, but for now, with rapid changes, it’s not.
Windows: unzip and put the “LAS Recomp” folder wherever you like. No installer; your saves and game files live in that folder.
On first launch you’ll get a start screen where you select your game dump and keys to extract them. Once extracted, the game is ready to launch. The in-game LAS Recomp menu (settings, randomizer, cosmetics and more) opens with F1 / Esc, or your controller’s Home / PlayStation / Xbox button.
Platform support:
macOS: macOS 15 or newer, Apple Silicon only, Metal graphics backend with MetalFX upscaling options.
Windows: Windows 10 or newer, x86-64, a CPU with AVX2 and a GPU with Vulkan 1.3.
More platforms will likely come with time, but this is the starting point.
Features:
- Native Windows and macOS execution of Link’s Awakening.
- Optional unlocked aspect ratio. Ultrawide and super ultrawide work (tested up to 32:9), though some graphical glitches are still being worked on.
- Custom in-game menus for recomp-specific settings.
- Full controller support with button remapping, and Xbox / PlayStation button prompts.
- Built-in randomizer (see GitHub for the full list of randomizer features, it’s a lot).
- Internal resolution adjuster: upscale or downscale the graphics as you like. macOS builds support MetalFX upscaling and use it by default.
- Built-in save editor.
- Built-in cheats.
- Built-in difficulty adjustments.
- Cosmetics editor and randomizer.
- Honestly more I just haven't remembered to mention.
There’s a lot I’m still working on, but I’m choosing to release now to grow the sample size and find bugs. I’m committed to making this the best it can be, and additional contributors are welcome.
I hope you enjoy it, and feel free to hop in the Discord!
Have fun!