Added support for games that store their URLs at memory addresses that are not 32-bit aligned. In all my testing I hadn't encountered any games that do this, but apparently they exist. Go figure.
Unfortunately, the custom compression scheme used in WfcReplay v0.5 onwards only works when the URL addresses are 32-bit aligned. So WfcReplay now internally generates two codes; one using the compression from v0.5 onwards (if possible!) and one without any compression, and will output the shorter one of the two.
- Improved support with particular NDS games.
Support for a more flexible patching system was added in this version, which increases compatibility with certain problem games that have an extreme number of URLs, such as the Japanese version of Pokémon Black 2. In fact, I'd be surprised if any other game required it...
Additionally, thanks to @bjoern-r, WfcReplay should now be compatible with the Mono runtime on Linux (and maybe other operating systems?). I haven't personally tested this, though. You will probably need to compile BLZ yourself in order for it to work.
- Now properly generates codes for specific problem games.
- Mono compatibility.
This version uses a whole new ASM URL patcher that produces much smaller codes. As a result, games that previously did not have suitable code caves are now compatible, such as Pokémon Black 2 & White 2.
- URL patcher now uses compressed string addresses.
- Various other URL patcher optimizations.
Fixes an issue introduced in the previous version when using games with uncompressed ARM9 binaries or overlays.
- Fixed "BLZ decompression failed" error when ARM9 binary or overlay is not compressed.
This release contains various bugfixes for a number of games, such as Zelda: Phantom Hourglass and Planet Puzzle League. It also corrects some other issues. Antipiracy-protected games remain unsupported.
- Fixed code output issue for games with invalid characters in their title IDs, fixes various games.
- Fixed code cave address alignment issue, fixes various games.
- Fixed "Could not find ARM9 hook" error when the temporary folder path contained spaces.
- Fixed crash when no HTTPS URLs were found.
WfcReplay is a command-line Windows utility written in C# that automatically generates an Action Replay DS code for a Nintendo DS game that will make it use HTTP instead of HTTPS for connections to Nintendo Wi-Fi Connection. This is done by pre-finding all URLs in the ROM and patching them in-memory. This can be used to connect to any custom Nintendo Wi-Fi Connection server.
To run this program, the .NET Framework 4.0 or higher must be installed on your computer.
The program is still in an early state, so the code is a mess and it will not work with all games.
To use WfcReplay, pass it the file path of an NDS ROM. You can also drag-and-drop the ROM file onto the WfcReplay executable. WfcReplay will then analyze the ROM and produce a text file containing the Action Replay DS code, which will be written to the current working directory.
WfcReplay should work with most older NDS games. It does not yet support some of the newer games, such as Pokémon Black 2 and White 2, that use particular forms of anti-piracy protection.
- Action Replay DS codes generated by WfcReplay may interfere with certain Action Replay DS codes from other sources, such as cheat database.
WfcReplay (c) 2014
- Prof. 9
BLZ (c) 2011
This project is licensed under the terms of the MIT license. See license.txt for more information.
WfcReplay includes BLZ v1.4 by CUE, which is covered by the GPLv3 license. As such, the source code for this program is included and can be found in blz.c. The full terms of the license can be found in blz_license.txt.