Arch

Patching Tutorial

Recommended Posts

Now before we begin I would like to inform you that there are two types of patch files dominantly used in GBA hacking; .ips and .ups. UPS is a better form of patching and this tutorial fully endorses using the UPS format over IPS format.
 

IPS Format



What is an IPS Patch?
An IPS Patch is essentially a checklist that notes everything in the file, it can be applied to another file and everything that the patch's checklist has different is changed so that everything is the same. Basically it applies the changes you made with Nightmare/WindHex/whatever you use onto another ROM.

Soft Patching
Soft patching is when you use an IPS file with the ROM without altering the data in the ROM itself. This is a feature of the Visual Boy Advance emulator. In VBA go to Options -> Emulator and make sure there is a check mark next to Automatic IPS Patching. The ROM and the patch must have the same name (EX: Fire Emblem Fuuin no Tsurugi.gba and, Fire Emblem Fuuin no Tsurugi.ips), soft patching is great for people who don't have the memory to make back up copies of the original game.

Hard Patching
First off your going to need a program to patch the file, some common ones are
- IPSWin
- StealthPatch
- LunarIPS
- LunarIPS Mirror
- SmartIPS


I will be demonstrating with LunarIPS, the most popular of the programs I listed.

lips.png
You start out at the main menu of the program. You are confronted with two options, applying a patch to a ROM or creating a patch from a ROM.

Select the option you want and a file selection screen will appear. When applying a patch you will be first asked to identify the IPS patch to use. Then you will be asked to select the ROM to patch. Once that's done your ROM will be patches and ready to play. When creating a patch you will select the original, unmodified ROM first; then you will select the hacked ROM. Once that is done enjoy the waiting and you will soon have your very own IPS patch to use.

Now, here's a trick you can do with LunarIPS. If you associate the filetype .ips with LunarIPS you can double click on the IPS patch and then it will ask you to select a ROM to patch and viola! The deed is done! Much quicker way of getting the job done since you don't have to run back to a folder to open a program. This trick can only be done with LunarIPS.

UPS Format



As mentioned before UPS is a better format for patching files. There are several UPS patchers out there like

- UPS Patcher
- TsukuyomiUPS
- NUPS
- NUPS Mirror

UPS patches allow you to expand the ROM without having to do use the dual patches method like StealthPatch, making it more efficient and easier to understand.

UPS format also has several other advantages over IPS format such as:

Quote

* simple file format, easy for anyone to implement.


* automatic bi-directional patching. The same patch can both patch and unpatch a game.
* CRC32 checksums on the original, modified and patch files guarantees patches will not apply to the incorrect games. We use CRC32 as this is designed to test integrity, not to prevent malicious checksum conflicts. Odds of a false positive are 1:4 billion with CRC32, and CRC32 is 100x easier to implement than eg MD5SUM, etc. Very important for others implementing this algorithm.
* infinite file sizes. No more 16MB limitation as with IPS.
* Windows / Linux GUI patchers, core library written in ISO C++9x.
* all of this is public domain
* command line functionality to patch files and create patches directly instead of using the UI



Now, that's a lot of words that you might not understand. The basic rundown is that UPS is more efficient and can patch files over 16MB which IPS cannot do. So now unto the actual tutorial for using the UPS patchers. For this demonstration I will be using NUPS, created by my good friend Nintenlord because it is the best UPS Patcher out there.

Now when you open the program you will arrive at your main menu.

nups1.png
As you can see there are three options, applying a patch, creating a patch, and getting patch data. Let us go and apply a patch.

nups2.png
Notice the options under "If original file is invalid." Right now you must be wondering what an invalid file is. An invalid file is a ROM that has been hacked previously, essentially it is not in the original form it was when you downloaded it. UPS checks if ROMs are valid in order to protect you from potentially damaging your ROM. You are given 4 options for what to do when this happens, all of which are pretty self explanatory. You should only bypass the validation if you are sure that applying the patch is safe. Now we'll take a look at creating a patch with NUPS.

nups3.png
This works the same as any other patches that creates patches. Just select the original ROM and the modified ROM and hit the 'Create Patch' button. Now lets take a look at that third option, checking patch data.

nups4.png
This is more of a tool for hackers than normal people looking to play a game. What this option does is tell you the information about the patch. I will demonstrate this tool with my FE4 Advance hack.

nups5.png
As you can see, that's a lot of information that the everyday hack player would never need. Heck, I don't even need to know that, it is a tool for the use of hardcore hackers.

Edited by Primefusion
Added mirror links for LunarIPS and NUPS

Share this post


Link to post
Share on other sites

I'm confused about the UPS format. Could anyone give me a detailed explanation about UPS patches and mainly, where to find them?

Share this post


Link to post
Share on other sites

A good deal of hacks use UPS format, like FE4A, GhebSaga, TU forum hack, Sacred Dawn etc.

Share this post


Link to post
Share on other sites

Do you really need a detailed explanation of the format, when it's already covered in the opening post?

For most people, the only thing that really matters is that UPS patches can modify files that are over 16 MB in size, whereas IPS patches cannot. This is important since the GBA FEs are exactly 16 MB, so if you expand the ROMs (to make them over 16 MB - which you might do to add new content in) you can't use IPS patching. At least, not straightforwardly from what I can tell.

When/if people eventually move onto DS FE hacking, UPS patches will probably be conventional to use, since DS ROMs are well over 16 MB in size.

The other stuff mentioned are just some nice benefits, if you understand what they mean. If not, it probably won't matter to you.

Share this post


Link to post
Share on other sites

I've seen a few people ask so I think I'll put this out there:

Any questions regarding patching hack to source rom should be directed to the creator of the hack. 9 out of 10 times the creator is nice enough to put a detailed README in the zip file that would answer all your questions, etc. I used to make Pokemon Ruby and Leaf Green hacks in the past and it drove me nuts when people asked questions already answered in the README file >.>;

Share this post


Link to post
Share on other sites

Sorry for bringing up such and old topic, but I need help. I am currently trying to patch a FE6 japanese rom with a patch with the Stealth Patch and I'm having an hard time. I do like I'm supposed to:I pick the rom, then the patch, then I name the output file, but then instead of patching it a box appears telling me an error happened and the program needs to shut off.What should I do?

Share this post


Link to post
Share on other sites

Ripway is a public upload site. This means a bunch of people are going to whine that things they disagree with or don't like can be uploaded and distributed--pirating, porn, viruses, and the works.

Personally I'd go for filefront or megaupload as far as generic uploaders are concerned :/

Share this post


Link to post
Share on other sites

Ripway is a public upload site. This means a bunch of people are going to whine that things they disagree with or don't like can be uploaded and distributed--pirating, porn, viruses, and the works.

Personally I'd go for filefront or megaupload as far as generic uploaders are concerned :/

Actually it was the win32 trojan virus that some people have reported that they have gotten, but I think you're probably right about that. I just downloaded it off an alternate site anyway, so no problems here.

Share this post


Link to post
Share on other sites

Do you really need a detailed explanation of the format, when it's already covered in the opening post?

Maybe they enjoy opening posts. Don't go bursting anyone's bubble.

(Thesis I never wrote for my economics literature review: Economists have rigorously studied bubbles and busts, but in reality it seems like there is no consensus in economics as to what is a bubble and what is a bust.)

EDIT:Note that my econ course did not require a thesis for the lit review

Edited by SeverIan

Share this post


Link to post
Share on other sites

The download links for the UPS programs are broken?

Anyways, your tutorials are awesome! It seems that every time I need to learn something about ROM hacking, you have a good tutorial for it.

Share this post


Link to post
Share on other sites

So I'm having a problem applying or using a patch with NUPS.

I just downloaded "1235 - Fire Emblem (U)(Venom)" as my rom.

This hack as a patch "Dream of Five V4 Release.rar"

Create a new ups file with the rom as the original file and the hack as the edit

name it "fo5" so I have my .ups file.

Patch is successful.

Use the rom as the file to patch

the fo5.usp as the .usp file.

hit "patch" and it says it has been done.

But when I open vba and try to open the file it says it's unsupported and won't work.

What am I doing wrong here?

Edited by chrisjk

Share this post


Link to post
Share on other sites

Why in the world did you create a new patch? It's inside the RAR already.

Edited by Agro

Share this post


Link to post
Share on other sites

Yes, I've deleted and re-downloaded the rom multiple times. Although it's downloading pretty much instantly now, which is a little strange.

Keep in mind before the patch the normal game plays fine.

Help please.

Edited by chrisjk

Share this post


Link to post
Share on other sites

http://i.imgur.com/vL49Fl.png

http://i.imgur.com/0dElz.png

Maybe these will help you get an idea of my situation.

The patch does seem to get added, as the file size of the rom pretty much doubles. It just won't run.

<div><br></div><div><br></div><div><br></div><div>I actually did extract the rom and it still didn't work. However, I tried it again and it works now. Thanks.</div>

Edited by chrisjk

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    No registered users viewing this page.