Ads Top

"Why Niantic Should Remove Damage Flooring and its Current Impact on GBL"


#PokemonGO: Current damage formulaBackground: This is the formula used to calculate every instance of damage.floor(0.5 * Pow * Atk / Def * Modifiers) + 1 The details aren't too relevant here, but the important thing is that after all of numbers are crunched, it's floored before it's applied. In other words, there's currently no difference between dealing 4.01 and 4.99 damage because they both reduce a target's current HP by exactly 4.Flooring is a relic of cartridges with limited memory from 20+ years agoLong story short, back in 1998, when the original Pokemon games were released, GameBoy cartridges had a very limited amount of memory. Instead of using floating point values to store most of the data (such as your current HP), it was more efficient to store them as 1-byte and 2-byte integers. Importantly, this tradeoff of accuracy vs. performance didn't have that much impact on gameplay. Why not? Because individual moves did (numerically) more damage, and thus the difference between 50 and 51 dmg (plus RNG on top) was mostly trivial.Flooring has no place in Pokemon GoMemory in 2020 for things like storing HP values is not an issue like it was in 1998, and nearly every modern game uses floating point values. Even if we were to be a little memory-inefficient and use doubles (8 bytes) instead of singles (4 bytes) in Go, at worst it uses 8x the amount of memory for the same functionality. For reference, a GameBoy cartridge could only hold 1 MB at most. Standard phones these days have 16 GB+, which is more than 16,000 times the amount of memory in a cartridge of Pokemon Red.Now that we've established that one of the primary reasons for flooring back in the day (memory limits) is not an issue, we can turn to the (more impactful) reason to get rid of it: Flooring can have a very significant impact on competitive gameplay (PvP) when there are many instances of small damage values in Go. As mentioned above, the difference between 50 and 51 damage in Pokemon Red is negligible, especially when it only takes a couple of effective hits to KO anything. However, in Pokemon Go, fast attacks in PvP can deal as little as 1 or 2 damage, but the difference between 1.00 and 1.99 is extremely significant. This results in what's been commonly known as "breakpoints", but the effects are amplified by the fact that these breakpoints are repeatedly hit or missed many dozens of times in a row.The impact of flooring, Case 1: Dragon BreathOne of the most egregious cases of flooring is in the Dialga mirror in Masters, where a lv. 41 Dialga deals 5 dmg per Dragon Breath while its lv. 40 counterpart deals 4 dmg due to just missing the breakpoint. This means with every turn, the lv. 40 Dialga deals 20%(!!) less fast damage than its opponent even though it only has 0.7% less Attack. As Dialga resists both of its own standard charge moves (Iron Head, Thunder), the damage output of Dragon Breath becomes even more important. What should have been a close matchup (total stat difference < 2%) becomes completely one-sided where the lv. 41 Dialga has a comfortable 15% of its health remaining simply due to hitting the 5 dmg breakpoint instead of getting 4.95 damage floored to 4, and basically requires competitive teams to bring a lv. 41 Dialga or be at a severe disadvantage in the highly meta-relevant mirror.As another example, a typical Great League Altaria's Dragon Breath deals roughly 1.94 dmg to Azumarill (which is then rounded down to 1). That's a 48% damage reduction on Dragon Breath simply due to flooring. While correcting for this difference using floats won't cause Altaria to magically win the matchup against Azumarill, it's still a large fraction of damage missing that would heavily influence a close match, when Azumarill is low on health. Fun fact, it's possible for Altaria to guarantee a 2 dmg breakpoint against max bulk Azu (Alt: lv. 27.5, 14 Atk).To be clear: This is not a Dragon Breath-specific issue. Many commonly used moves such as Psycho Cut, Vine Whip, and Snarl have low instances of damage per use, which results in similar breakpoint scenarios.The impact of flooring, Case 2: Attack debuffs (and Defense buffs)Damage flooring also impacts the efficiency of stat changes, particularly attack debuffs (and analogously, defense buffs, but there are fewer of those and they're not spammable and/or guaranteed). Since many fast moves deal so little damage, altering them can often have the unintuitive result where the fast move damage doesn't change! For example,* a Suicune using Bubble Beam on a Giratina-A with Dragon Breath causes the following changes:Giratina-A Atk StageDragon BreathDragon Claw0      3 dmg        28 dmg-1    2            23-2    2            19-3    2            16-4    2            14The first Bubble Beam is crucial to reduce Giratina's fast damage by 33%(!!) (and charge move by 18%) but subsequent Bubble Beams only impact charge moves and have no impact on Dragon Breath. Since roughly half of Giratina's damage comes from its Dragon Breath, the impact of Bubble Beam on Giratina's overall damage output can be estimated:Giratina-A Attack Stage% Dmg DealtReduction% Dmg (Floats)Reduc. (Floats)0      100%          -          100%          --1    66.7%          33%**     80%            20%-2    61.0%          7.5%      66.7%          16.7%-3    56.7%          7%        57.1%          14.3%-4    53.9%          5%        50%            12.5%Due to flooring, the first debuff can result in 33% damage reduction, which is absolutely huge because that's like skipping 1 out of every 3 turns. On the other hand, subsequent debuffs have very little overall impact on Giratina's damage output because the floor of 2.8 or 2.1 is still 2, which doesn't change Dragon Breath's damage output despite additional debuffs. So unless you're extremely confident that your opponent will shield, it is mathematically incorrect to use Bubble Beam more than once in this matchup, but would you have known that without this article? Probably not.Of course there are also cases (exercise left for the reader) where the opposite is true, i.e. -1 and -2 Atk debuffs have relatively little impact, while the huge breakpoint occurs at -3 which means you should probably never even attempt the debuff in the first place. But you unless you did the research (and had a good guess on your opponent's IVs) you would never know what the correct decision is.Even if Niantic wants to retain the flooring in damage calculations, there are simple solutions.While the obvious solution is to just remove flooring and change the data type to floats, there are other ways to take into account damage fractions that don't rely on breakpoints. I won't go into too much technical detail here, here is just one example where the fraction could determine the % chance that the damage is ceiled instead of floored:Dmg (before rounding)Current            Proposed2.01                  100% to deal 2 dmg99% to deal 2 dmg (1% to deal 3 dmg)2.50                  100% to deal 2 dmg50% to deal 2 dmg (50% to deal 3 dmg)2.99                  100% to deal 2 dmg1% to deal 2 dmg (99% to deal 3 dmg)TL;DR:Damage flooring causes several problems in PvP (unintuitive gameplay at best and large performance disparities in highly meta-relevant Pokemon at worst) and should not be used in a competitive environment where damage instances occur frequently and in small values. * IVs of Suicune and Giratina-A are assumed to be optimal spreads with floor 5 (Best Friends trade). This analysis also applies with floor 10 (un-traded).** This factors in that Bubble Beam comes out before Dragon Claw when both parties start at 0 energy. If you're shield baiting Ice Beam (which causes Bubble Beam to fire later), then on average the damage reduction at -1 Atk is 26.6%. But given how strong the first debuff is compared to the others, it might be correct to not bait at all. via /r/TheSilphRoad https://www.reddit.com/r/TheSilphRoad/comments/f21f5x/why_niantic_should_remove_damage_flooring_and_its/?utm_source=ifttt
"Why Niantic Should Remove Damage Flooring and its Current Impact on GBL" "Why Niantic Should Remove Damage Flooring and its Current Impact on GBL" Reviewed by The Pokémonger on 16:12 Rating: 5

No comments

Hey Everybody!

Welcome to the space of Pokémonger! We're all grateful to Pokémon & Niantic for developing Pokémon GO. This site is made up of fan posts, updates, tips and memes curated from the web! This site is not affiliated with Pokémon GO or its makers, just a fan site collecting everything a fan would like. Drop a word if you want to feature anything! Cheers.