[FFXV] Get enemies' stats adresses

Apr 6, 2018
7
0
1
#1
Hello there,

first i'm kinda noob with cheat engine, I mean I know the basics about scanning, re-scanning a number in a process to find the value's adress and change it.
But besides that I can't do much with it which sucks a bit, especially when I would be able to locate enemies' stats adresses in the current fight in order to modify their health, defense, maybe speed.

The thing is like I said I only know how to find it in cheat engine when I already have a bit of informations, but i'm pretty sure there is others ways with CE to reach my goal.

So for those who knows CE better than me, do you think there could actually be a not too tedious way of doing that, or the only real way would be to fight a monster and scan for decreased values while the hp are decreasing, and hopefully find the address for the current hp, and search for others current monster' stats within a certain range of addresses around the hp address ?

I would try like that with my noobish skills, but i'm pretty sure this isn't that easy. What do you think ?

.
 
Last edited:

TheyCallMeTim13

Wiki Monster
Talents
Fearless Donors
Mar 3, 2017
428
47
28
#2
In most game any more, they use a lot of shared opcode. So the same function that decreases player health may also decrease NPCs health. The best I can really say is do the CE tutorial, it goes over code injection and shared opcode.

http://wiki.cheatengine.org/index.php?title=Tutorials:Cheat_Engine_Tutorial_Guide_x32
http://wiki.cheatengine.org/index.php?title=Tutorials:Cheat_Engine_Tutorial_Guide_x64
 
Apr 6, 2018
7
0
1
#3
Thanks for your answer, yeah i've found the address of the current HP of an enemy and so the opcode which decreases HP, indeed that one seems to also decrease player health, so I guess it's used for every entities losing HP.

The thing is, I just tried for a first step to increase the HP value of the enemy, but if I go further than its original max HP, it just resets to original max HP before decreasing the value with the damages I just did.

So it looks like the game is checking an another address with the max HP value, i'm wondering if there is a way to find that address from there ?

Because i know the value of the max HP, I tried to scan for unchanged values multiple times but obviously it doesn't work cause there are 200 other addresses keeping the same value, and to see addresses accessed by opcodes in relation with HP but didn't managed to find the max hp address.
I guess it's finally time to see the tutorial
 

SunBeam

RCE Fanatics
Talents
Fearless Donors
Feb 4, 2018
743
397
63
#4
I'm pretty sure you need to understand this shit in a diagram-fashion first, as you require a lot more skills than just scanning for addresses. You see, in deterministics, there's no such thing as "around that"; it's either there or not. No grays.
 
Apr 6, 2018
7
0
1
#5
Yeah I know that's true, I was hoping to not need that much skills for a simple thing like modifying some stats, but I guess when you start to dig in the memory you can't dodge that
 

TheyCallMeTim13

Wiki Monster
Talents
Fearless Donors
Mar 3, 2017
428
47
28
#6
Alkadix post_id=41644 time=1523049242 user_id=15104 said:
Thanks for your answer, yeah i've found the address of the current HP of an enemy and so the opcode which decreases HP, indeed that one seems to also decrease player health, so I guess it's used for every entities losing HP.
...
Step 9 in the CE tutorial will help explaining how to separate them out.
Alkadix post_id=41644 time=1523049242 user_id=15104 said:
...
The thing is, I just tried for a first step to increase the HP value of the enemy, but if I go further than its original max HP, it just resets to original max HP before decreasing the value with the damages I just did.

So it looks like the game is checking an another address with the max HP value, i'm wondering if there is a way to find that address from there ?

Because i know the value of the max HP, I tried to scan for unchanged values multiple times but obviously it doesn't work cause there are 200 other addresses keeping the same value, and to see addresses accessed by opcodes in relation with HP but didn't managed to find the max hp address.
I guess it's finally time to see the tutorial
If max HP isn't near the HP, then I look at the assembly to find it. So have a "find what accesses this address" debugger running and set the HP above the max and see what comes up; it may be right there some where or you may need to break and trace to find where the value comes from. There will have to be some kind of compare to check if HP is above max.

And the max HP may be a float while HP is an int of visa versa, it could be stored as 10x the value and only really exist as you see it in a registry just before the compare and write instructions.
 
Apr 6, 2018
7
0
1
#8
Hello,

I was wondering if someone could enlight me on the purpose of those movups instructions :



It seems to set values, and max hp in particular, but I have no clue what it's really doing :mrgreen:

.
 
Last edited:

TheyCallMeTim13

Wiki Monster
Talents
Fearless Donors
Mar 3, 2017
428
47
28
#9
Alkadix post_id=41780 time=1523203448 user_id=15104 said:
Hello,

I was wondering if someone could enlight me on the purpose of those movups instructions :



It seems to set values, and max hp in particular, but I have no clue what it's really doing :mrgreen:
MOVUPS
Move Unaligned Packed Single-Precision Floating-Point. Basically it moves 16 bytes at a time and doesn't require alignment like MOVAPS.

Google Search: movups instruction
 
Top Bottom