Max Creature Health

I’m trying to increase creature health to over 2147483647. I know currently this won’t work since it is an uInt32. I modified creature.cpp

uint32 health = uint32(basehp * healthmod);

to

uint64 health = uint64(basehp * healthmod);

,but it still is dead on spawn when I go past 2147483647. Is this a client side limit or do I need to modify something else in the core?

most likely client side limit, we don’t just randomly set variable types, they are based on what is sent and received in packets.

and, if it is not a client side limit, you still didn’t edit enough of the core, or the field in the DB where it is stored to match…

I know sometimes you can increase them such as the limit on Item stats etc, I was able to increase the cap on that in the Core and DB easily. Your right, I’m probably missing something in the Core if its not client side. That’s why I wanted to see if anyone knew of the changes that I could make to even see if it is possible.

The db I believe however should support it since field curhealth is an Int in creature and gets this value from a multiple of modhealth and basehp. I could be wrong and it’s also in another place.

Thank you for brain storming with me!

It’s client-side.

Way to kill my dreams Subv /emoticons/default_biggrin.png . Thank you for your expertise. I figured out a work around, just no where near what increasing the cap would do.

Some more info…

UNIT_FIELD_HEALTH = OBJECT_END + 0x0012, // Size: 1, Type: INT, Flags: PUBLIC

UNIT_FIELD_MAXHEALTH = OBJECT_END + 0x001A, // Size: 1, Type: INT, Flags: PUBLIC

if you increased the size of those two fields server-side you would overwrite POWER1 and MAXPOWER1…