|
I searched a bunch, and it seems like there wasn't anything on this subject that actually looked at this in-detail, and the wiki doesn't seem to be much help.
Do units have a (not displayed in-game) fractional health value?
I ask this because of how Zerg regen, Mutalisk upgrades, and splash damage work according to the wiki.
Mainly, I want to know what "+.33333" means on a Mutalisk attack, what ".27hp/second" means on zerg regeneration, and what "50%" of a 35 damage attack means.
People talk about how the mutalisk attack upgrade helps with the bounce damage. As far as in-game health is concerned, there are no decimal places... yet the wiki says that a +1 attack mutalisk does 10 damage on an attack and 3.3333 on a bounce? What does that MEAN? Is it rounded up to 4 damage? Is it rounded down to 3? Or is there an actual decimal health value behind this? Would a marine getting hit with 3 1st-bounce +1 attacks take 9, 10, or 12 damage?
Please enlighten me... and maybe I'll update the wiki with what I find.
|
I think the only way for you to find these things out would be to test them for yourself. Use the custom unit test map to do it, it'll be interesting to see the results although i doubt it would effect anything in the game one way or another
|
Yes, health and energy of units are non-integers but none of the decimals are shown.
|
Yes units have non integer health. This is why zerg units don't die in the expected amount of hits sometimes , for example probe vs drone, drone always wins with 1hp because during the fight he has regenerated point-something health.
|
Interesting idea. So a SCV can take damage and have a remaining health below 01.00 and above 00.00 and be considered dead?
What if an SCV took an attack that added up to 44.50 damage, leaving 00.50 health ; would that integer equal zero, or one?
I can picture it now.
Stevie: " *BLAST* Ow! Well Jiggerbits, that done hurt! At least I have 1% of my health left. Better get back to mining." Adjutant: "Sorry, Stevie, but it appears your vitals are below an integer of one. You are forced to de-commission." Stevie: "But I gots 1% left! I'm still alive!" Adjutant: "Negative, Stevie, for this universe works in numbers below the visible." Stevie: "Awww shucks...*hssssss CRASH*"
|
stuff gets rounded up i think. Atleast zerg regene works that way damage applied (zerg unit gains almost instantly 1 hp (only if it had full health before)). So always add +1 hp to zerg units and you are fine. But you can get sure if you test it with a siege tank and marines clumping to gether, just shoot one and look at the health and you know. Or as mutas are your biggest interest use mutas ^.^.
|
+ Show Spoiler +On June 21 2011 03:01 RukKus wrote: Interesting idea. So a SCV can take damage and have a remaining health below 01.00 and above 00.00 and be considered dead?
What if an SCV took an attack that added up to 44.50 damage, leaving 00.50 health ; would that integer equal zero, or one?
I can picture it now.
Stevie: " *BLAST* Ow! Well Jiggerbits, that done hurt! At least I have 1% of my health left. Better get back to mining." Adjutant: "Sorry, Stevie, but it appears your vitals are below an integer of one. You are forced to de-commission." Stevie: "But I gots 1% left! I'm still alive!" Adjutant: "Negative, Stevie, for this universe works in numbers below the visible." Stevie: "Awww shucks...*hssssss CRASH*"
In this scenario the SCV's hp would be displayed as 1 until it took lethal damage.
|
Basically how it works, is that you do 10 10/3 10/9 (I believe), therefore it takes 9 mutalisk to do 10 damage on the 3rd shot.
So you are doing 10 to the first marine 3.3 to the second marine 1.1 to the 3rd marine But you are really doing. 10 to the first marine 3 to the second marine and 1 to the 3rd marine. You do not do extra damage based on 1 shot but upon a multiple of that (I believe it has to do with health cooldown) as in your unit regens to the nearest number (3.99 = 4 1.33 = 1.). Therefore if you get hit by a mutalisk as the second marine, you have 41.667 health for a moment in time, if you do not get hit again within a certain period of time the health goes to 42.
I could be wrong but if that doesn't make sense another theory is that you do extra damage (3.33 becomes 4) etc etc. I dunno I doubt it is like that plus my original sounds sooo much more advanced
|
On June 21 2011 03:13 FeyFey wrote: stuff gets rounded up i think. Atleast zerg regene works that way damage applied (zerg unit gains almost instantly 1 hp (only if it had full health before)). So always add +1 hp to zerg units and you are fine. But you can get sure if you test it with a siege tank and marines clumping to gether, just shoot one and look at the health and you know. Or as mutas are your biggest interest use mutas ^.^.
This is almost correct  Units have indeed got decimal health and energy values however the displayed value gets always rounded up (the system internal one does not) A zerg unit that just regenerated and saved its life by doing so would have ~0.4 and if it was dealt 0.5 points of damage would indeed die (to deal 0.5 of damage you would need to shoot with a 6 damage attack at a unit with 6 armor, or of course with an attack that actually has a decimal value out of house like said mutas bounce) however would be displayed to have one health.
Units that can deal decimal values of damage are: Mutas with one or more attack upgrades Void Rays on massive targets Any unit that attacks a target affected by coruption Any unit that attacks a target with armor equal or higher than its own attack. (in the last case an attack with 5 damage on a target with 5 armor would deal 0.5 damage; same attack on a target with 6 armor 0.25 and so fourth)
Oh and the marine in your example would be dealt 10 damage
|
In SC2 it's all real numbers, displayed as integers on screen. Sometimes people still think it's like in BW, where the internal system was truly integer with some ratio-tricks to count for rational numbers - but that's not true in SC2. All damage and armor is non-integer in SC2 internally.
|
|
|
|
|
|