This is topic Lowest "in-battle" stat value? in forum Research Lab at The Azure Heights Forum.


To visit this topic, use this URL:
https://www.math.miami.edu/~jam/azure/forum/buzz/ultimatebb.cgi?ubb=get_topic;f=1;t=001209

Posted by 10,000Lb.Snorlax (Member # 13) on 06-19-2002, 08:54 PM:
 
We all know that during a battle a Pokémon's stats can be lowered up to .25 of their original value...

Since the lowest possible value of a stat a pokemon can have going into battle (except for hps which are "10"), is "5" <look here>

...Following naturally from above implies that the lowest stat a pokemon can have (must assume case for level 0 & 1) would be

5 X .25 ( all non-hp stats) = 1.25

Would 1.25 be rounded down to 1 ??

Is 1 the smallest stat value obtainable ??

->Even with a reflect up, which would half the attack of a pokemon with attack of one (thereby making it .5), the attack *should* round back up to 1 again... Shouldn't it? [Confused]

I'm not too knowledgable about the way the game rounds numbers [Embarrassed]
 
Posted by Hawk557 (Member # 2758) on 06-19-2002, 09:08 PM:
 
I have seen attacks do 0 damage in my Red Version, but it happened rarely. Occasionally, with Wrap on an Ekans outside of Cerulean City, it did no damage to my Dragonite, or my Golem. even with reflect making it .5, the attack just does nothing against their defense.

However, this happens only after Wrap was used at least twice before, implying that it does something like .45 damage, then another .45 damage, both of which round up to one, if you round the .45 to .5 and then to 1. however, after .9 damage was done (in theory) the .45 is not enough to reach the next number.

It's confusing, but it has to do with rounding and keeping rounded #s. At least, out of personal experience.

-hawk557

**edit: I think i have a way to explain it.

.45 turns to 1, but the .45 remains, so it did 1 point of shown damage, and 45% of 1 point of total damage. The second time, it did that again, making the total percent of HP damage delt 90% of 1. However, after the third turn, you come to 135% of 1, *BUT* that doesn't show up rounded.

If it needs more explaining, I can try harder...**

[ 06-19-2002, 09:11 PM: Message edited by: Hawk557 ]
 
Posted by Fluorine (Member # 2904) on 06-22-2002, 11:12 AM:
 
What tells you these numbers actually get ROUNDED? Usually, games simply convert rational numbers to integers, without any rounding. Thus, 4.9 would become 4, 0.5 or 0.75 would become 0, etc, and your attack stat, when halved, would become 0.

However, I'm pretty sure the game won't allow this, and will set any non-positive stat value to 1, to avoid potential divisions by zero in the damage formula :/

Besides, does reflect actually work when the opponent's attack is lowered by a 4x factor? I thought that the minimal factor was 0.25 in all possible cases.
 
Posted by Cesar (Member # 529) on 06-22-2002, 04:07 PM:
 
I believe the game rounds down the numbers every time (because they always round down in the damage calculator). But if that's true, this brings up more problems. Lets take this example:

Assume an attack of 5:
1st use of charm 5 * 0.5 = 2.5 rounded down = 2
2nd use of charm 2 * 0.33 = 0.66 rounded down = 0?

1st use of growl 5 * 0.66 = 3.3 rounded down = 3
2nd use of growl 3 * 0.5 = 1.5 rounded down = 1
3rd use of growl 1 * 0.4 = 0.4 rounded down = 0?
 
Posted by Fluorine (Member # 2904) on 06-22-2002, 07:44 PM:
 
quote:
Originally posted by Cesar:
I believe the game rounds down the numbers every time (because they always round down in the damage calculator). But if that's true, this brings up more problems. Lets take this example:

Assume an attack of 5:
1st use of charm 5 * 0.5 = 2.5 rounded down = 2
2nd use of charm 2 * 0.33 = 0.66 rounded down = 0?

1st use of growl 5 * 0.66 = 3.3 rounded down = 3
2nd use of growl 3 * 0.5 = 1.5 rounded down = 1
3rd use of growl 1 * 0.4 = 0.4 rounded down = 0?

You're not applying the formula right. The second use of charm would multiply the ORIGINAL stat, which is 5, by 0.33, making it 1.66 = 1

The minimal multiplicative factor for the stat being 0.25, a minimal stat of 5 ensures that non-positive stats will never exist - and I think it's been set to 5 for that specific reason. As for reflect, I believe it wouldn't work when the opponent has already a 4x lowered attack, although I might be wrong on this.
 
Posted by Hawk557 (Member # 2758) on 06-22-2002, 09:28 PM:
 
Er...wouldn't it be pretty hard to program a computer outside of the normal mathematical rounding?

I think that they do the normal rounding, and I KNOW that it's possible to have attacks do no damage. Just plug it into the damage formula and test it out.

-hawk557

[edit: I did it on the damage calculator; it's possible for a level 2-5 PKMN using Wrap (A.K.A Ekans) to do no damage, on a regular basis.]

[ 06-22-2002, 09:31 PM: Message edited by: Hawk557 ]
 
Posted by Fluorine (Member # 2904) on 06-22-2002, 09:37 PM:
 
Simplest way to round is rounding down. You don't even need to calculate the decimals.

Besides, no need to program it, rounding down is the DEFAULT way of rounding in programming...
 
Posted by Hawk557 (Member # 2758) on 06-22-2002, 10:39 PM:
 
If you use the Marble Palace Damage Calculator
(http://www.marblepalace.co.uk/gsccalc.shtml)
the attack would need to be not-very-effective against the PKMN for a possible 0. Reflect wouldn't even matter.

-Hawk557
 
Posted by 10,000Lb.Snorlax (Member # 13) on 06-23-2002, 12:06 AM:
 
What if the game always rounded *UP* ?? Then there would never be a stat below one.... seems like that would be an easy way of setting it up were I a programmer....
 
Posted by Atma (Member # 689) on 06-23-2002, 08:45 AM:
 
Let's take a Marowak, give him 14 DV, level 100, full stat exp: 256 Attack

Plop a Thick Club on him: 512 Attack

Use a Swords Dance on him: 1024 Attack... wait, that value rolls over to a big fat 0!

Alternately, take a level 0 (5 Attack) Ditto from the Missingno trick. Waste all his Transform PP to keep him a Ditto.

Give him Burn status (2.5 Attack).

Growl him 4 times (0.833333 Attack), rounds down to 0!

For even more fun, use Thunderwave/StringShot instead of burn/growl!

Bottom line is, the cart is set to interpret a stat at 0 as 1.
 
Posted by Hawk557 (Member # 2758) on 06-23-2002, 09:35 AM:
 
er...what if you growled 6 times?

I don't think any actual stat goes down to 0, but I know that damamge can be 0 on a regular basis.

L. 2 Ledyba Vs. Shuckle L. 100

[Razz]
-Hawk557
 
Posted by Jolt135 (Member # 1974) on 06-24-2002, 08:42 AM:
 
quote:
Originally posted by Hawk557:
er...what if you growled 6 times?

I don't think any actual stat goes down to 0, but I know that damamge can be 0 on a regular basis.

L. 2 Ledyba Vs. Shuckle L. 100

[Razz]
-Hawk557

Well, unless the move gets type disadvantage against Bug/Rock, you'll hit for no less than one.

Go look at the damage formula if you haven't already, and you see that the game adds a "+2" to the damage in the middle of the formula (before type multipliers), no matter what, and for no apparent reason.

Meaning maximum damage from a neutral-advantage attack can never be less than 2, and minimum damage is int(217 * ThatNumber / 255) = 1.

As for Atma's trivia, throw a Reflect up for Ditto's opponent...0.20833333333.

Or Screech a L0 3 times, allow them to use Reflect, and BLOW UP IN THE POOR MAN'S FACE! 0.3125, not as low, but it's fun to pull off.

INTERESTING FACT OF THE DAY:

Without stat modifications, L7 Ledyba can survive a Rock Smash from NINETY-THREE LEVELS DOWN against a Shuckle. Give the Shuckle minimum stats, and Ledyba survives from--you guessed it--level ZERO.

It can also take an Earthquake, but that's a TPM kind of factoid.

[ 06-24-2002, 08:44 AM: Message edited by: Jolt135 ]
 
Posted by spunman (Member # 1181) on 06-25-2002, 10:29 AM:
 
Hawk557: L. 2 Ledyba Vs. Shuckle L. 100
Jolt135: Well, unless the move gets type disadvantage against Bug/Rock, you'll hit for no less than one.

as you've pointed out, 0 damage is possible under certain circumstances, and hawk557 has no doubt seen it. he probably just doesn't fully understand the bdf, or just didn't do the math prior to his statement, so assumed that the level difference, low attack, and high defense would result in 0 damage, when in fact the criteria for 0 damage is the type disadvantage. don't think anyone's blatantly wrong, though.
 


Karpe Diem