Final Fantasy 7 > Troubleshooting

[FF7] How can be edited the formula for ultimate weapons?

(1/2) > >>

Raziel80:
How can be edited the formula for ultimate weapons for Death Penalty and Premium Heart? How does the formulas look like in bytes in the .exe file?

nfitc1:
All the ultimate weapons have "AX" damage formula types which just means "use 11 damage type and a special modifier". You can change the modifier in the exe to perform different checks. If you want details  you'll need to be more specific on what exactly you want it to do.

Raziel80:

--- Quote from: NFITC1 on 2019-11-20 13:23:49 ---If you want details  you'll need to be more specific on what exactly you want it to do.

--- End quote ---
A7 formula for Death Penalty: (10 + [Character's Kills / 128]) / 16, which of these values (10, 128, 16) can be changed in the exe file? The formula is somewhere in the offset 0x1DC920 in the FF7.exe: in bytes, it's around here: 24 99 83 E2 7F 03 C2 C1 F8 07 8B 15 0C CE 99 00. Where does the formula begin and end? For example: The value 128 in the formula can be changed, if you change 07 at offset 0x1DC929. 128 is bit 7, which means (0x80=128), is it true? Can the values ​​10 or 16 in the formula be changed?

nfitc1:
You're using the real hex addresses not the virtual ones. That's going to throw me off...

The DP modifier starts at 0x1DC916. Changing that 7 will change the divisor for the kills, but it can only be powers of 2 (1, 2, 4, 8, 16, etc). A little further down at 0x1DC93D is the instruction C1 F8 04 which is the /16 and the following instruction at 0x1DC40 is 83 C0 0A which is your +10.

The actual modifier formula is ([power * kills / 128] / 16) + 10. not (10 + [power * kills / 128]) / 16.

Raziel80:

--- Quote from: NFITC1 on 2019-11-20 16:24:47 ---The DP modifier starts at 0x1DC916. Changing that 7 will change the divisor for the kills, but it can only be powers of 2 (1, 2, 4, 8, 16, etc). A little further down at 0x1DC93D is the instruction C1 F8 04 which is the /16 and the following instruction at 0x1DC40 is 83 C0 0A which is your +10.

--- End quote ---
How are these instructions ("C1 F8 04 which is the /16" and  "83 C0 0A which is the +10") displayed in RAM(virtual addresses)?

Navigation

[0] Message Index

[#] Next page

Go to full version