Re: "exact percentages"
Emphasis altered by me in each:
Using exact percentages is one of those things that people generally prefer on their Pokemon sims for that reason.
There is no reason to overcomplicate it by converting it to 48ths when the exact percentages do pretty much the same job.
exact percentages are convenient and make everyone feel warm and fuzzy inside
Exact percentages give you more information...
I say stick with exact percentages.
Stick with the exact percentage, please.
(etc.)
Pokemon Showdown has never shown
exact percentages for damage or for opponent HP. Before
one week ago, damages and absolute HP were both shown rounded to the nearest 1/100th. As of a week ago, this was changed so that damages were shown as floor(pixels*100/48) % and HP was shown as round(pixels*100/48) %. (The inconsistency was an oversight.) In no case were damages or HP ever shown as exact percentages. Some exact percentages would actually be nonterminating (though we could introduce a notation for that, such as "...").
Presumably, most or all people quoted above are aware of this -- that we never showed exact percentages, and that there is no history of doing so in any pokemon simulator -- and they just chose to use "exact percentages" as a (wrong) term for "percentages rounded to the nearest 1 percentage point". But I choose to comment on it because it raises an issue that lies at the heart of this discussion, namely: If "convenience" and "providing more information" and "allowing better decision-making" are valid reasons to tamper with HP reporting mechanics, then
why not show exact percentages? Showing exact percentages would allow for even better decision making than the old
status quo, and it would make damage calculation during a match even more useful. I see no argument in this thread for showing "percentages rounded to 1/100" rather than "exact percentages", other than history (which I will address below).
This is also my primary concern with the judges argument for nearest 1/100 damage. Even if we accept that argument as being valid in principle, there's no good reason to use it to support nearest 1/100 damage rather than exact percentages or nearest 1/48 damage or nearest 1/x damage, other than history.
Re: damage calculators
Damage calculators have traditionally always shown more information than you receive in battle. In particular, damage calculators give you an exact damage range and corresponding exact percentages. But in battle, you never have seen exact percentages, so you always had to be prepared to translate the exact percentages given to you by damage calculators into "nearest 1/100" percentages shown in battle. Showing "nearest 1/48 percentages" instead does not change this dynamic-- in both cases, the damage you see in battle is more "coarse" than the output given by the damage calculator.
By contrast, showing exact percentages in battle -- which has never been done in any popular simulator -- would allow the output of damage calculators to be used directly, without the intermediate conversion step. (Of course, in all cases damage calculators produce a
range as opposed to a point -- but that's a constant throughout.)
Re: convenience
In addition to the idea of showing exact percentages (which I stress is completely unprecedented in this community), the goals of "convenience", "better information", etc. would also be served by other proposals, such as showing how many turns an effect such as Sleep or Bind is going to last. I pick this example because, similarly to altering HP reporting mechanics, it goes beyond improving the UI -- it actually provides information that would otherwise be inaccessible -- and I don't see anybody proposing it.
So I assume it is clear that proponents of "convenience" do not support everything that provides "more information", which raises the question of: why increase the resolution all the way to the nearest 1/100? We could also increase convenience compared to nearest 1/48th by increasing the resolution to nearest 1/50th -- this is a relatively smaller change to the game mechanics, but provides the layer of convenience of being able to convert between the reported figure and the displayed percent with a simple operation to do mentally (namely, multiplying or dividing by two).
Re: consistency
I support fixing all mechanics errors in the simulator. There are a few reasons why this one was fixed before other bugs: it was easy to fix, and somebody cared enough to do it, among other things. Pokemon Showdown has various bugs. They don't all need to be fixed today. We can fix one bug without fixing every other bug. We can fix the bugs that we personally find interesting to fix before we fix bugs that somebody else might consider
more important -- that's how free and open source software works; tasks aren't completed based purely on importance but also based on what people feel like doing (and how much effort it will take). If you want to fix some other bugs, you can feel free to make a
pull request for your fix.
To address one specific issue, though: showing only an HP bar and requiring the player to "guess" the HP is not possible. In order for the client to be able to draw the HP bar, it has to be provided with the HP information, so it will always be readily available to the user. If we sent the client only enough information to draw an "uncertain" HP bar, we'd actually be altering the precision to which damage is known, so that isn't an option either. This is a bit like why Mario Party can't be played over netplay -- "button mashing" isn't a mechanic that works outside of console play in a controlled physical environment, and nor is "showing only an HP bar". It's just not how software works.
In any case, showing a rounded HP figure of some form is in the nature of a UI improvement rather than a mechanics change. Similarly, if nickname lengths have some effect on battle mechanics, then our current implementation is indeed a bug -- otherwise, it's just a UI improvement.
Re: history
A long history of doing something in a manner inconsistent with the game isn't actually an argument not to eventually fix the bug.
I was recently advised, for example, that Spikes damage was wrong in every past simulator. That wouldn't be an argument for continuing to have incorrect Spikes damage in new simulators. NetBattle had an incorrect interaction between Rapid Spin and Substitute, but that wasn't an argument for Shoddy Battle continuing to have that incorrect interaction -- and it didn't.
Similarly, before Shoddy Battle, no simulator validated IV/nature/ability combinations for whether they could actually be generated by the in-game RNG. When I implemented this, there was quite a bit of controversy from various angles. A lot of people argued it made team building clunkier or confusing or just felt broken -- it seemed totally arbitrary why certain IVs had been changed sometimes. Other people argued that I was going to ruin the WiFi scene by making it trivial to construct hacked Pokemon that could not be detected as hacked. But eventually everybody came around and accepted it as part of the game, and it was seriously a non-issue. Indeed, as Kristoph links to above, in a broad vote on Smogon, this community chose to maintain those mechanics. That vote was months after I had already implemented the correct mechanics on the main server, so people had had time to reflect. People are resistant to change -- even if the change is to fix a longstanding bug -- but they usually come around, and aversion to change isn't a real argument to refrain from improving the simulator.
On a side note, Pokemon Showdown does not currently enforce RNG-legal IV/nature/ability combinations -- but that's another bug to be fixed in due course. It is unreasonable to expect us to fix every bug at once.