Ultimate IPS Patching for Hacks/Translations in ZSNES

Got a question? Read here first. Failure to read this forum beforehand may result in you getting chewed out by the forum regulars.

Moderators: ZSNES Mods, ZSNES Doc Team

ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Ultimate IPS Patching for Hacks/Translations in ZSNES

Post by Deathlike2 »

Note: Hacks/Translations can be used interchangably.

1) Rename the translation patch (it has an extension .ips) to match the name of the ROM.
For example, let's say you want to use a translation of FF5.

Let's assume "FF5.smc" is the name of your FF5 rom, and "FF5trans.ips" is your translation patch name. Make sure you rename the translation patch to mirror the original ROM's name with an .ips extension (FF5trans.ips -> FF5.ips)

2) If you have defined a save folder in ZSNES (Config -> Path -> Saves), then you need to put the FF5.ips file in the defined save folder, otherwise you place it in the same folder the FF5 rom is in. When in doubt, just put a copy of the ips file in both folders.

3) Then, you should be able to run ZSNES and the game should be autopatched (in recent WIPs, you will see 'IPS' at the bottom of the screen when loading a ROM signifying that you autopatched it)

If the game doesn't work properly, the ROM isn't correct for your patch.
To verify, download NSRT. It doesn't matter if you use the GUI version or not (I will use the command line version for simplicity).

Load up the command line (cmd for Win2k/XP users) and change to the directory NSRT is in:
Type "cd c:\nsrt" w/o the quotes (this assumes that NSRT is in C:\NSRT)

Copy the FF5.smc ROM to the NSRT folder via Windows Explorer or whatever.

Type in "nsrt -safetrim -deint -remhead -fix FF5.smc" then "nsrt -loginfo FF5.smc" w/o the quotes. This will, if needed, cut useless data, deinterleave the ROM, remove its header and fix some issues for specific dumps.
If you didn't understand the last line, it means it did magic voodoo to make your ROM better.

You can now check the NSRT folder to find nsrtlog.txt... open it and read it (this is the kind of info the ZSNES forum needs when posting bug reports).

First check the ROM revision. It must be the correct revision for the patch. Read the readme file accompanying the ips file to know which revision is the correct one. A patch made for revision 1.0 will probably not work with revision 1.1 and vice versa.
If your ROM revision doesn't match, you'll have to find the correct one.

If your ROM is the right revision, find the Database results. If NSRT tells you it is "Not Found In Database", then you have a crappy dump. Try to find a better copy of the ROM.

If the database entry seems correct, try to use the ROM with your patch and see if it works. If it still doesn't work, it may be because the patch is made for a ROM with a header (this is often mentionned in the readme file coming with the patch). You have 2 ways to fix this issue:

A- Alter the patch so it works with a ROM without header using ipsedit. To do this, copy the IPS patch to the NSRT directory.
Type in "ipsedit -rem FF5.ips" w/o the quotes.

B- Add a header to the ROM so it works with the patch. To do this, type in "nsrt -addhead FF5.smc" w/o the quotes.

Use only one of these 2 ways. Then move the ROM back to your ROM folder, and the altered patch to where it belongs if needed. It should now completely work. If it doesn't, restart from the beginning and make sure everything fits as mentionned here.

Mod Edit: Rewritten a bit for less useless steps, more clarity and more RTFM - grin
You know the drill about giving fishes and teaching how to fish.

My Edit: I think it's easier beating them over the head with the fish if they don't plan to use their brain.
Last edited by Deathlike2 on Thu Mar 16, 2006 11:14 pm, edited 3 times in total.
Continuing FF4 Research...
"opinionated asshole"
Posts: 29
Joined: Sun Aug 01, 2004 5:36 pm

Post by Grahf »


What do you do if you have TWO IPS patches you want to apply to the same ROM???
ZSNES Shake Shake Prinny
Posts: 5626
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Post by grinvader »

Merging several IPS into one is easy:

- Backup clean ROM
- Apply each patch in order with a hard-patcher
- Produce an IPS out of the clean backup and the modified ROM
- Erase the modified ROM

And then you can autopatch the clean ROM with the merged IPS.

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)

Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54