Well, to test out Kega Fusion's new built-in Code Finder system, I hacked a little invincibility code for Chakan: The Forever Man. Here (it's in PAR format, of course):
FFC0DF:0026 - Invincible (flashing)
And while I was at it, I figured I'd write a little about Kega Fusion's Code Finder function, in a sort of review/FAQ manner. I'm writing about Fusion 3.2, and later versions will be different; perhaps what follows will no longer apply.
Let's just start off with this note: while having a built-in RAM hacking function is great, Fusion's is nowhere near as good as its SNES counterparts, and its general lack of abilities makes it a weak function altogether. However, it's still the best thing out there at the time of this...typing, so bleh.
Anyway, inside of the Game Genie/Par window, a code must be selected (highlighted) for it to be 'on'. Otherwise, nothing will happen at all. Make sure you remember this, or you might find yourself deleting a perfectly good code (and wasting a lot of time in the process). Also, keep in mind that the Delete Code button is right above the Code Finder button; if you hit Delete, anything highlighted will be wiped completely. That, coupled with the fact that there's no way to copy codes from the code finder directly to the codes list, means you'd be wise to have Notepad or a similar text editor running, so you can type what you find before it's lost.
Also, Fusion's Game Genie/PAR system has no Edit Code function, and doesn't check for duplicates, so if you enter a code, then realize you typed in the wrong value, remember to delete your first one before you enter the new one, or you'll be trying to write both values to the same address in memory at the same time. In reality, this won't cause any harm, as the second one will supercede the first, but it could get confusing. If you enter ten codes with the same address but different values, Fusion will take the last one's word for it, and the others will all do nothing.
OK; if you choose Code Finder, you'll have four options (besides Quit, heh):
Count - If what you're trying to hack has an easily determined quantity (lives, ammo, etc - not bars or meters, unless they're in countable segments), choose Count, and enter the quantity of whatever you're searching for (how many lives you have, for example). Click Find; it'll give you the number of results (the number of addresses in memory that contain the value you just entered). Now click OK, then click OK again at the Game Genie/PAR window, and go do something to cause that value to change (such as lose, or gain, a life). Return to the Game Genie/PAR window, choose Code Finder, and you should already be in the Count window. Enter the new quantity, (how many lives you have now, or whatever you're searching for), click Find, and it'll give you the new number of results. These are addresses that not only had the value you first searched for, but also now have the value you just searched for. Repeat the process until there are only a few results, write them down, or type them somewhere, and retype them into the Game Genie/PAR window's Code box, one by one, in this format (for example) - FF5656:0066 - and remember that they're not on unless they're highlighted.
Difference - This isn't what you're thinking, fellow long-time RAM hackers. If you somehow don't know the starting quantity, but can still see exactly how much quantity increases or decreases, choose Difference. Click OK, then OK again at the Game Genie/PAR window, go do something to make the quantity increase or decrease (and remember by how much), and return to the Game Genie/PAR window, click Code Finder, enter the difference in quantity, and click Higher or Lower (depending on whether the quantity increased, or decreased). Just as before, it'll give you the number of results, and you'll follow the same steps from the above explanation of Count.
Percent - An interesting feature, if you can estimate what percent the current quantity is of something's maximum quantity (such as a meter or a bar), choose Percent. Click whichever percent - 100, 75, 50, or 25 - you think is closest to the current value, and follow the same steps you did before, repeating until the results are small enough to test manually.
State - OK, for those of you that've been hacking for a while, this's basically the Different Than/Equal To function. If there's no way to tell the quantity of something, or it's not really something you can quantitate (though there's nothing you can't quantitate SOMEHOW, heh), choose State. If you're searching for something that really only has two states (on and off, or up and down, etc), choose On or Off, depending on whether you think it's on or off. To be honest, I don't know how these first two buttons' functions work, but I would assume it has something to do with whether or not the value is 0000 (and if that's the case, I wouldn't use them for much of anything, since you never know for sure how the memory's going to store something). Either way, after one search, when you return to the Code Finder window, you'll be using the Any Change function from then on. If whatever you're searching for doesn't really have a binary (two-setting; off or on, up or down) state, or you're not sure what kind of values it can have, choose Any Change from the beginning, go do whatever it is that changes the value of what you're searching for (or don't do anything), and return. When you choose Code Finder, choose whether you think the value changed or stayed the same (so if you're searching for what costume your character has on, and you changed costumes since you chose Any Change, choose Changed; if you didn't change costumes, choose Same). Repeat just as you would for the other types of searches.
A final note about Fusion's Code Finder - some things about it still elude me. For example, I ran a simple search - an Any Change on whether I was crouching or standing. I stood, searched, crouched, searched Changed, stood, searched Changed, crouched, searched Changed, Stood, searched Changed, then kept standing and searched Same. After that last search, there were, from 66 remaining, 0 results. I tried three more times, in different order each time, and still always ended up with 0 results.
The only thing I can guess at is that this function doesn't search all of the memory, and the address at which the value for my character (Chakan)'s standing/crouching state (and probably jumping, walking and so on) is in an area that it doesn't search. So play around if you like with Kega Fusion's Code Finder function, but keep in mind that it's fairly limited.



Reply With Quote

