Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Need help getting .pnach files to load in 0.9.7
I've done as much looking around as i can to try to solve this on my own.

In FFX (US) I'm trying to change the thunder bluff lightning dodge count to 200.

I found the codeing for it on another forum, as well as the proper name for the pnach file, as follows.

File name: BB3D833A.pnach

gametitle=Final Fantasy X(U)

I made sure the file is no longer a .txt, and then placed it in two locations just to make sure one of them was right

C:\Program Files (x86)\PCSX2 0.9.7\Cheats

I have "Enable Cheats" selected in PCSX2, and yet, it doesnt seem to do anything, or at least not what i want it to

Sponsored links

you have to set it to 199 and then successfully dodge (turn it off)
So, im supposed to load the game with cheats enabled, load my save, disable cheats, and then dodge one and come back? cuz that didnt work
eh.. use ffxed then. I've never successfully done that mini-quest
that seems to be a byte, making it a word means all those zeroes will overwrite the next three bytes, probably nullifying whatever is ahead. The most secure way to know it's length is observing the first byte in the original address code, 0=byte, 1=short and 2=word, the value itself may be misleading.

that C:\Program Files, why? MS, why need you to make things so awkward? I strongly advise moving the emulator to something like C:\Emulators\PCSX2 and deleting the inis to grant it will rebuild them. the Documents folder must be avoided too, although having the others folders there is OK (like the inis, memcards, bios... folders). Make sure the paths in the emulator points to correct places (it can be verified and corrected if need in the "Plugins/Bios Selector" at the GUI's Config menu.

I hope with making sure it's not a txt anymore you mean having enabled the "show the extension for..." else it will be there yet.

Still an useful information is What the console says, if it didn't find the file for example...

Boring PS: although may be seen having a value "short" 000000c8 would be the same as having it "byte" but it's not always true, imagine those case of items with a part that tells it equipped, let's say 01 means equipped, the orignal value (in the memory) was 000001c8 (c801...) and let's assume c8 is the index for the Uber Sword of slain. That would mean you had that sword and had it equipped... now you introduces some code, let's say 00000035 and that is the code for the pineapple, that wonderful fruit that recovers 30MP... it should be clear the code should be introduced as "short" and the effective 0035 is placed in the memory (actually it get's there as 3500, overwriting the previous c801)... and all is fine, the Uber sword is lost but you get the pineapple without greater problem...

But, since 35 is 'clearly' a byte the code is introduced as such and the final result is the same as you have 0135 (actually 3501 in memory) and the meaning is now you are equipped with the powerful pineapple as a weapon.... let's terminate that bad trip....
Imagination is where we are truly real
Well, youre both right. Ken may not like the way i have my folders organized, or the lack there of, but thanks for deciphering the code for me. You were correct in saying that the code was the issue, and once i changed to the code below, it actually loaded properly. And after turning it off the way Saiki suggested, i was able to get the 200 dodge reward. I didnt get any of the other rewards, but i dont really care about all the consumeables.

Thank you both for your help.

gametitle=Final Fantasy X(U)

gametitle= Final Fantasy X [SLUS 20312] (U)
//Thunder Plains Lightning Dodged 200 Times After Dodged Once
you are still using the token "word" for something I believe it's a byte or maybe a short (although not positive about it, you should confirm in the original code).

That means all those zeros are indeed being put in the memory and not only the final C8, so whatever is after that address offset is being erased whole four bytes, something you may not see or perceive at once but could break things badly afterward.

PS: the code don't know the address is a counter of dodging, or that would be an item slot with only one byte length, it does not assumes anything, just do what is asked and fill the address with that much bytes it's informed to do. on an inventory that could be seen as items 'disappearing' or the amount going crazy, easy to see the error. It' common to happen too with the statuses where some are erased while others get's non expected values. These cases alerts for the error and are prone to be corrected in time... but some others cases will not be seen until it's too late.

So, it's not just putting "word" or "byte", etc... in every code, it's fundamental informing the correct operand length.
Imagination is where we are truly real
(07-28-2010, 08:41 PM)nosisab Ken Keleh Wrote: you are still using the token "word" for something I believe it's a byte or maybe a short (although not positive about it, you should confirm in the original code).

The value he is editing is two bytes long, but it is ok for him to edit only the first byte. It would only be a problem if he had already dodged over 255 lightning bolts in a row. If "extended" mode is used, PCSX2 will read the first digit of the code and perform the correct operation which in this case is a one-byte write.
It was what I feared, know you what is in those two extra bytes being erased?
Actually if there is a code with 003166E2 for address offset, it would tell what is there.
So you are right at saying "extended" at least would be a minor (less prone to damage) problem there although still wrong

Thanks to fuzzymillipede I now know for sure the code should be either:

patch=1,EE,003166E0,short,000000C8 or
Imagination is where we are truly real
The two extra bytes contain something about the contents of the treasure chest outside the Thunder Plains agency. I hacked it a long time ago but I don't remember what the data was. All of this stuff can be modified in FFXED.

Users browsing this thread: 1 Guest(s)