If you want a significant change, you'll have to be ready to do a little work, I think. If you don't want to put in too much effort, you'll probably just have to accept mobs having multiple HP bars or multiple phases. Honestly the system I described probably wouldn't be that difficult; it could be knocked out in a day with a little patience, I think.
Upon further thought making the HP system I described extremely flexible wouldn't be too complicated even: you'd only need 3 tracking values and 2 starting NPC data values.
The first value would be a uint32 that is directly decreased by damage. The second value would be a uint32 that defines how many times the first value is in 1% of the total. The third value would be an int8 to track the NPC's current HP %.
When damage would put the first value below 0, the second value will decrement, the first value will reset to its starting value, and any excess damage will bleed over. Whenever the second value hits 0, the third value will decrement, the second value will reset, and the players will rejoice at a sign of progress. At that point it would basically just be a matter of making Death occur when the third value hits 0 or -1.
At that point the HP cap would be around... (4.29b^2)*100... so high you'd need to use scientific notation to describe how much HP something has. What more could you ask for.
|