Metal Gear Solid 2 - SoL (NTSC SLUS-201.44) Cheats Help
Apologies if this is the wrong place for this.

I have made my own .pnach file using Redlof's Guide and every cheat works apart from the infinite health cheat. So far I’ve tried everything and every format using Omniconvert to try Both CB codes and ARMax codes (converted to raw). The code in the .pnach file is a codetwink code decrypted in CB2crypt (the way redlof does it). It gets weirder though because I also made an .iso of my codebreaker v10 disk and tried it that way (and even tried ripping out the .ELF file) with interesting results. it worked for a little while but then stopped working and about 10 minutes after it crashed the emulator. The thing that annoys me the most is I’m positive that I’ve had it working before but it was a couple year ago so I can’t figure out what I’m doing wrong.

[Edit] While waiting for a reply I have been testing some things to see if I can get it to work. I have remade the .iso for my game after reading about "TLB MISS" errors. Also I have discovered somthing interesting that might help fix this. I have activated an infinite rations cheat and discovered that the game will not let me use a ration irrelevant of my health ampount as if my health is already full (but its not as I can see it going down and can be killed) but if I equip the ration and let my health fall to zero it will auto use a ration.

[Edit 2] Again while waiting for help I've been playing the game some more and I have discovered what stops the code working. It only works for the first bit of the level as soon as I go through a door into another part of the level it stops working as if its deactivating the code or possably the "address" that the code edits gets moved to another address (hence the crash when using the Codebreaker disc). I hope someone can help me with this as like I said im posotive I have had this working before Tongue.
gametitle=Metal Gear Solid 2-Sons of Liberty [SLUS-20144] (U)
//Infinite Health
//Infinite Rations
//Stealth Camo
//Infinite Ammo Socom
//Infinite Ammo M9
//Infinite Ammo Stinger

Sponsored links

Not sure what the rules on bumping are (as you can see my thread post is the first thing I have ever posted on here) so my appologies if im breaking the rules.

Maybe a bit late now...

Most of your working codes use type-1 addresses (1xxxxxxx 0000yyyy). Those are simple overwrites of the address xxxxxxx's value to yyyy and are most common.

Type-D and Type-E codes are condition switches.
The type-E code would skip your health cheats if a certain condition (value of 0026B660 is equal to 0x0782) is not fulfilled. So I would guess this trigger is not working.
It can also be that Type-E codes are not completely supported by this emulator. Maybe you just check with cheat enginge what is the value of 0026B660 and if it is similar to 0x0782 and how it changes over time.
You can try to disable the switch ('patch=1,EE,E0020782,extended,0026B660' => '//patch=1,EE,E0020782,extended,0026B660') and see if that works. But this can be gamebreaking at some point.
Hi, Thank you for replying Smile

I tried your suggetion of taking out the E-Type code and I got the same results as the original post except this time I got a "TLB MISS" error on the Tanker part of the game and an "ipu1 normal error" on the plant part of the game (during a cutscene). As for finding the address in cheat engine I'm struggling to do that as im not an expert with cheat engine. If possable could you explain how i do it.

Thank you for your help so far Smile
I think in cheatengine is some button called 'add address manually'... There you put the address. But I might be wrong here. I used cheatengine some years ago.

That you get TLB miss and certain game areas is what I meant when I said it will be game breaking. The E code just checks if you are out of these areas.
That means at least the check if working properly. Then it is the type-2 codes:


maybe you can check what happens if you put them to:


I have the feeling that the original values are unusual high.
They aren't normal values. It's some kind of calculation being done there. Some games use very odd values like those. "2402" is the part that's necessary for the code to work properly despite it being in the 'value' area rather than the 'address' area. Don't ask me how it works exactly, because I don't know that either, but I've tested this with similar codes and removing the 2402 part broke the code completely when testing it in similar codes.

Like this one right here:

// Quick Chain-Level Gain Always On

^FF12 code. The 0019 is the actual value that it increases the chain level with, and the 2442 is just part of the code, but it doesn't actually do anything aside from making the code work.
AMD Ryzen 5 3600 @ 3.60~4.20 GHz | Corsair Vengeance LPX 32 GB (2x16GB) DDR4-3200
MSI GeForce GTX 1660 Super @ 6 GB | Samsung 980 1TB | Windows 10 Pro x64 (22H2)
Im at work atm but when I get home ill try your suggestion of changing the code and see if it breaks it like ryudo said. But before I came to work I tryed to find the address in cheat engine (using my limited knowlage and googleing tutorials) and I think I found the address but from what I can tell the address isnt being used at all it just gives me "??" as a value. Ill try and take some screenshots when I get home.

Yeah I changed the code as sugested but ilike Ryudo said it just broke the code. Here is the screenshot of cheat engine:


Users browsing this thread: 1 Guest(s)