Jump to content

Maximum Health Points


Zeoka
 Share

Recommended Posts

if it's hardcoded then there's something that looks similar to this (maybe not this exact format) somewhere in the HP incrementing/resume routine that looks somewhat like this:

if (unit.affiliation == Unit.PLAYER_AFFIL) unit.hp = (unit.hp_cap > 60) ? 60 : unit.hp_cap;

or in asm terms

ldrb r0, [player_hp_address]  @ not necessarily r0
cmp r0, #0x60
ble STORE  @ if hp is less than sixty then we skip this bit
mov r0, #0x60

STORE:
strb r0, [player_hp_address]

Link to comment
Share on other sites

depends on what game

if FE7, you're just changing 3 values

017c7c

029996

0299ac

each one should be at 3C which is 60 in hexadecimal

if fe8 or fe6, it's more than likely the same process, just different offsets where the values are

I am also trying to increase the HP cap in my FE7 hack, in this case to 80 for all classes, and I also find the hex editor extremely confusing. For example, I went to 0017C7C0, but I cannot find a C3 anywhere in the rows. Row 03 is AF, and row 0C us 53. Do you mean I need to change something to C3? I am afraid to do anything without first knowing the effects.

Edited by GreatEclipse
Link to comment
Share on other sites

I am also trying to increase the HP cap in my FE7 hack, in this case to 80 for all classes, and I also find the hex editor extremely confusing. For example, I went to 0017C7C0, but I cannot find a C3 anywhere in the rows. Row 03 is AF, and row 0C us 53. Do you mean I need to change something to C3? I am afraid to do anything without first knowing the effects.

it's 3c not c3

My point was, if it's hardcoded, you can't just use hex, can you?

I mean, of course you can change it. Just... not with hex?

you can change it in hex it's just a bit weirder because you'll be changing an asm instruction

as i said in my post, the routine probably looks like this:

cmp r0, #0x60  @ looks like 0x283C (or 3C 28 in little-endian)
ble STORE  @ i have no clue what this looks like
mov r0, #0x60  @ looks like 0x203C or 3C 20 in-rom

STORE:
strb r0, [hp_offset]

you'll need to change both of those 3C's to make it work properly and I'm fairly certain there's another check somewhere else

Link to comment
Share on other sites

I am also trying to increase the HP cap in my FE7 hack, in this case to 80 for all classes, and I also find the hex editor extremely confusing. For example, I went to 0017C7C0, but I cannot find a C3 anywhere in the rows. Row 03 is AF, and row 0C us 53. Do you mean I need to change something to C3? I am afraid to do anything without first knowing the effects.

3C = 60

C3 = 195

50 = 80

level up

stat stays the same

@L95: ^not hardcoded

i make bad typos

balls cam

Edited by Kitty of Time
Link to comment
Share on other sites

In other words you just entered the wrong offset, lol

Also you can edit anything in hex

It's just that you have to know what the hex value means for it to have any real purpose

It's easy to edit single values or parameters in hex even if they're part of ASM because you're just changing one byte; every ASM instruction has its hexadecimal equivalent but there's little point in assembling it as hex when you can use something more universal like a hex editor to make the same change, and quicker

would there happen to be an easily changeable hardcoded cap for alll the other stats?

resume hack makes it so allies' stats can be over 0x1F (31) without them resetting; enemies' stats can't though because they still reset upon suspending/resuming.

the cap is 0x7F; values are signed and it's best to keep them that way. this includes HP

normally the HP cap is 0x3C or 60 but it seems somebody at some point figured out how to hack it for allies so it can be above 60. I just didn't know such a hack or any useful research on the matter was conductedbecause information doesn't get around the hacking community when everyone wants to do their own thing

I think I said everything I wanted to *shrug*

Link to comment
Share on other sites

resume hack makes it so allies' stats can be over 0x1F (31) without them resetting; enemies' stats can't though because they still reset upon suspending/resuming.

Well I knew this much, was just checking if there's a way to actually change it, rather than just sort of... modifying it, like the resume hack does.

fucking dammit eric i read the doc

Edited by eJubs
Link to comment
Share on other sites

uh, I don't know the difference between the two, MiracleJubs XP

however I will just say this: stats can up to 0x7F if you increase the stat caps and use class/character bases appropriately. A character's stats must be within 31 of their original stat, I believe, but that just means that having a unit go from tier 1 to tier 3 (assuming you made one) might be a problem if they gain too much stats; it shouldn't have any other negative effects IIRC. my memory of this crap is so hazy

Link to comment
Share on other sites

it's a restriction based on how the game allocates the data for stats

the game has five bits in the save per stat per unit

normally, that means you can only get a stat of 31 (five bits = 11111 in binary = 31 in decimal).

Hectamatatortron's patch sets it so the game loads these five bits as well as the character's base stats (determined in-ROM so there's no extra allocated space) and adds the two together to get the final stat.

In theory, it could be kerjiggered by setting one of those bits to be an 'overflow' flag or something that determines an effect on the other four bits. I had a plan mapped out (that I never really got around to even trying how to implement since the resume hack is complicated as all fuck)

Link to comment
Share on other sites

yeah that was a pretty good explanation for someone who usually makes things sound harder than they are

but I'd say we just have to be reasonable and give up on some of the super major changes to the system ._.

Link to comment
Share on other sites

If your growths make you grow 31 levels in any stat, that's not really a good thing :/ The caps probably shouldn't even be that high.

uh, what? wasn't it you who had the problem with this anyway? you're sounding like a hypocrite right now... as well as douchey since you're pretty much saying what people should or shouldn't do with their own hacks o_O not that I have anything crazy like that in my hacks

Edited by Strawhat Luffy
Link to comment
Share on other sites

Wut

I'm saying game-balance-wise, it's probably unwise to have characters grow more than 31 levels in one stat.

as for it being my problem, i was just curious if you could do it, not (at the moment) planning to implement it or anything.

Basically, I'm saying it's no great loss that we can't do that, because it probably wouldn't really work out well anyway :/

as for me sounding "douchey," well, take it as you will, I s'pose..

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...