Welcome to Smogon! Take a moment to read the Introduction to Smogon for a run-down on everything Smogon, and make sure you take some time to read the global rules.
Just posting to say that this is nothing short of amazing. As someone that has a handle on what it takes to put something like this together, I'm really impressed that you've done it in such a short amount of time. Even in its current form, it has the potential to change the way we do a lot of things around here.
Thanks a bunch for all the effort, I hope you keep going with this! Now I feel like doing some programming of my own...
I've been looking at your thread since you made it, and never found the time to post. I would normally make this a long post of how I love it, but I'm on an iPad...
This replay has the same problems as the first, with it getting confused about who is actually making the moves. It doesn't stop, but the problem is still there.
This replay has the same problems as the first, with it getting confused about who is actually making the moves. It doesn't stop, but the problem is still there.
it would be cool if the replayer could display % hp remaining while hovering over a poke ball like it does on po. and i'm bringing up sds's point about +2 instead of 2x, since it's how the sim lists it and how people are used to seeing it (and the .7x drives me crazy).
my earlier post of something to the effect of "this is incredibly epic" still applies
edit: it would also be cool if you could upload a log (just the text) without having to have the file saved, watching a battle on your player is way cooler than reading a log.
it would be cool if the replayer could display % hp remaining while hovering over a poke ball like it does on po. and i'm bringing up sds's point about +2 instead of 2x, since it's how the sim lists it and how people are used to seeing it (and the .7x drives me crazy).
my earlier post of something to the effect of "this is incredibly epic" still applies
So i'm just assuming that this replayer doesn't recognize the old Japanese names. I had a few great logs from wayyy before BW came out, so they all have their Japanese names. To fix this, should I just change all of the names to English in the logs? Or is there an easier, less tedious way?
edit: it would also be cool if you could upload a log (just the text) without having to have the file saved, watching a battle on your player is way cooler than reading a log.
it would be cool if the replayer could display % hp remaining while hovering over a poke ball like it does on po. and i'm bringing up sds's point about +2 instead of 2x, since it's how the sim lists it and how people are used to seeing it (and the .7x drives me crazy).
At this point, a fairly decent number of people who haven't played pokemon are watching these replays, so I don't want "+2 Accuracy" to be the only option. How many people actually know that "+2 Accuracy" is 5/3x accuracy?
I can change the .7x to .67x.
I could make "+6 Atk" an option to display instead of "4x Atk". But a principle of UI design is that options should only implemented for stuff that's really important.
Here's the problem with having things as options, in general: The option button will be as big as the pause button, even though the pause button is far more important. People watching replays on someone else's computer, or a casted replay on YouTube, could be seeing things they're not used to. On the other hand, if you force it a certain way, people will get used to it eventually. And most of the time, there is a correct answer - having an option is just a programmer's way of saying "I'm too lazy to figure out which one it is". Options should only be for things for which there are a significant number of people who want either side and are willing to dig through an Options menu to find it.
The example I usually like to give is: Opera 9 had an insanely customizable UI, Chrome 1's UI was barely customizable, but Chrome quickly became much more popular.
Okay, so, here's what I'm going to do.
First, I'm going to change stuff like 0.7x to .67x and 1.3x to 1.33x. To me as a designer, it looks uglier that way, and to me as a mathematician, there isn't low enough difference between boosts to justify the extra decimal place, but in practice, people get bothered when "0.7" means "2/3", so I'm changing that.
Second, three people have asked for boosts in the form of "+1" instead of "1.5x" by now. That's not something I can ignore.
One possibility is that I could use "2.5x Atk (+3)". That would make the statbar look pretty crowded, but it's a possibility.
The other possibility is to actually change it to say "+1" instead of "1.5x".
Before I do that, though, I'd like an opportunity to debate about it a bit more.
If you don't know the relationship between multipliers and stages (and while most Smogonites do, you probably don't know the obscure ones: how accurate is Close Combat against +4 evasion, without looking it up?), I'd argue that it's more important to know the multipliers.
The multipliers tell you how much damage you'll do, how fast you are... The stages just tell you whether or not your move will have an effect if you keep on using it (protip: just memorize "4x" - 4x: the new +6?).
The reasons I've heard for stages are just "I'm used to it" and "Smogon uses it in other places". Is there a reason that doesn't boil down to "that's how it's always been done"?
So i'm just assuming that this replayer doesn't recognize the old Japanese names. I had a few great logs from wayyy before BW came out, so they all have their Japanese names. To fix this, should I just change all of the names to English in the logs? Or is there an easier, less tedious way?
It's a stopgap until I update my generator for pokedex.js to be able to lookup Japanese names. If you'd like, you can give me code for some other gen 5 pokemon and I'll just paste it in.
If you don't know the relationship between multipliers and stages (and while most Smogonites do, you probably don't know the obscure ones: how accurate is Close Combat against +4 evasion, without looking it up?), I'd argue that it's more important to know the multipliers.
Evasion starts at 3/3, so +4 evasion is 3/7 hitrate or ~43%. And regardless, people that play Pokemon should know this anyway, so dumbing it down is just a crutch that people who play don't have while they're playing.
The multipliers tell you how much damage you'll do, how fast you are... The stages just tell you whether or not your move will have an effect if you keep on using it (protip: just memorize "4x" - 4x: the new +6?).
The reasons I've heard for stages are just "I'm used to it" and "Smogon uses it in other places". Is there a reason that doesn't boil down to "that's how it's always been done"?
The issue is that literally every single other method of Pokemon and Pokemon resource does it this way, and consistency is important when battlers have gotten used to the way stage boosts work. There's an extent to which the "I think it's better" argument doesn't trump the "your target audience is used to the original format" argument, and in the case of consistency with other sources, such as analyses and simulators, I'd say this is one of them.
(if it wasn't clear, this was me advocating for "The other possibility is to actually change it to say '+1' instead of '1.5x'.")
At this point, a fairly decent number of people who haven't played pokemon are watching these replays, so I don't want "+2 Accuracy" to be the only option. How many people actually know that "+2 Accuracy" is 5/3x accuracy?
I can change the .7x to .67x.
I could make "+6 Atk" an option to display instead of "4x Atk". But a principle of UI design is that options should only implemented for stuff that's really important.
Here's the problem with having things as options, in general: The option button will be as big as the pause button, even though the pause button is far more important. People watching replays on someone else's computer, or a casted replay on YouTube, could be seeing things they're not used to. On the other hand, if you force it a certain way, people will get used to it eventually. And most of the time, there is a correct answer - having an option is just a programmer's way of saying "I'm too lazy to figure out which one it is". Options should only be for things for which there are a significant number of people who want either side and are willing to dig through an Options menu to find it.
The example I usually like to give is: Opera 9 had an insanely customizable UI, Chrome 1's UI was barely customizable, but Chrome quickly became much more popular.
Okay, so, here's what I'm going to do.
First, I'm going to change stuff like 0.7x to .67x and 1.3x to 1.33x. To me as a designer, it looks uglier that way, and to me as a mathematician, there isn't low enough difference between boosts to justify the extra decimal place, but in practice, people get bothered when "0.7" means "2/3", so I'm changing that.
Second, three people have asked for boosts in the form of "+1" instead of "1.5x" by now. That's not something I can ignore.
One possibility is that I could use "2.5x Atk (+3)". That would make the statbar look pretty crowded, but it's a possibility.
The other possibility is to actually change it to say "+1" instead of "1.5x".
Before I do that, though, I'd like an opportunity to debate about it a bit more.
If you don't know the relationship between multipliers and stages (and while most Smogonites do, you probably don't know the obscure ones: how accurate is Close Combat against +4 evasion, without looking it up?), I'd argue that it's more important to know the multipliers.
The multipliers tell you how much damage you'll do, how fast you are... The stages just tell you whether or not your move will have an effect if you keep on using it (protip: just memorize "4x" - 4x: the new +6?).
The reasons I've heard for stages are just "I'm used to it" and "Smogon uses it in other places". Is there a reason that doesn't boil down to "that's how it's always been done"?
I would agree that it is, "that's how it has always been done," but would argue the implications of that. It has always been done in stages because the game has trained us to think that way. When you think, "what does my Excadrill need to be at to KO this 40% Gliscor?" you answer, "Oh it needs to be at +4," because of the way you boost stats. Each move boosts stats by stages, which we then translate in our heads into percentages.
I think if, hypothetically, you were making a new game based on Pokemon, or a new concept entirely, then it would make sense to change it. It's a clean break; you can do what makes more sense. But this player is built to use the current implementation of online battling: it uses the log file from Pokemon Online. When you hover your mouse over the sprites in PO, it lists stat boosts in stages. Given that, and given how deeply entrenched the competitive community is with the concept of stages, I think it makes sense for the player—which is meant to function solely as an extension of the battle log—to use the same format. It becomes very jarring otherwise. And while I agree that non-players would be much more comfortable with multipliers, I think the percentage of viewers who will be non-players is going to be very small.
And while I agree with your rant on options, I would argue that Chrome's eventual dominance over Opera came about for different reasons.
The issue is that literally every single other method of Pokemon and Pokemon resource does it this way, and consistency is important when battlers have gotten used to the way stage boosts work. There's an extent to which the "I think it's better" argument doesn't trump the "your target audience is used to the original format" argument, and in the case of consistency with other sources, such as analyses and simulators, I'd say this is one of them.
I would agree that it is, "that's how it has always been done," but would argue the implications of that. It has always been done in stages because the game has trained us to think that way. When you think, "what does my Excadrill need to be at to KO this 40% Gliscor?" you answer, "Oh it needs to be at +4," because of the way you boost stats. Each move boosts stats by stages, which we then translate in our heads into percentages.
I think if, hypothetically, you were making a new game based on Pokemon, or a new concept entirely, then it would make sense to change it. It's a clean break; you can do what makes more sense. But this player is built to use the current implementation of online battling: it uses the log file from Pokemon Online. When you hover your mouse over the sprites in PO, it lists stat boosts in stages. Given that, and given how deeply entrenched the competitive community is with the concept of stages, I think it makes sense for the player—which is meant to function solely as an extension of the battle log—to use the same format. It becomes very jarring otherwise. And while I agree that non-players would be much more comfortable with multipliers, I think the percentage of viewers who will be non-players is going to be very small.
(If you use IE9 and it froze in the middle of certain replays, that has been fixed.)
IE9
- crashes on console.log unless you press F12 first
IE8
- doesn't support string.trim()
- doesn't support rgba colors
IE7
- doesn't support [a,b,c,] list notation
- doesn't support margin-top on the first element
Technically, I knew about the IE7 list notation bug and the IE8 rgba bug, and also technically, I know they're not so much bugs as just lacking features you'd expect every browser to have.
I think it might be a good idea to fill in the pokeball icons under each players name to 6 on both side. If less than 6 pokemon were revealed on a side, then fill it with blanks.
It kinda gives away who the winner of the battle is.
^hmm, yea, I second that. Nice suggestion, sharktamer.
I personally liked the multipliers instead of stages for status boosts, because they were more meaningful, but either representation is fine in the end.
I think it might be a good idea to fill in the pokeball icons under each players name to 6 on both side. If less than 6 pokemon were revealed on a side, then fill it with blanks.
It kinda gives away who the winner of the battle is.
Also, I thought that displaying 1.5x, 2x, 2.5x and so on was really a great idea, and not everyone using the replay machine knows the exact boost/value conversion (you lucked out in this forum though)
Yeah, I agree with coyotte. For something that's potentially so valuable as a teaching tool, I don't think displaying 0.7x instead of -1 was such a bad idea. Ultimately, it's just a preference thing though, isn't it? You'll never be able to please everybody, that's for sure -- don't feel bad if you don't bend on every little nitpick. This is a great tool either way, it's a shame people aren't more thankful for your time. Ahh, the life of a software deveoper. :)