This is a HUGE update—I did a lot of work on Porydex over the last three and a half weeks, and I’m extremely proud of how the project is coming along. Buckle up; Porydex has finally started reaching what I consider to be the next level.

New feature! Tera type usage stats

At the end of last month, I was so thrilled to finally be caught up with Porydex. All the gen 9 pages were working, and the usage stats for 2014 through 2024 had been re-imported, and I was eager to import the usage stats for August 2024 as soon as they dropped on smogon.com/stats on September 1st and be truly, 100% up to date.

… And then it turned out that Smogon’s stats file composition had been updated for the first time in years, and the August 2024 stats would be the first month that included Tera type usage data.

Cue an intense Sunday, September 1st morning and early afternoon of rewriting my years-untouched usage stats processing code to include the new Tera data, and thus become the first website anywhere to have this treasure trove of data. Take that, Pikalytics!!! (I’m kidding; Pikalytics is great. The more stats sites, the better.)

New feature! Move details on stats pages

Also from Gholdengo’s page.

If you’ve followed any of my non-Porydex blog posts, you may be aware that I haven’t actually played any competitive Pokémon in a few generations. There are a lot of gen 8 and 9 moves I just don’t have memorized yet, I’m embarrassed to admit. But now that I’m getting into VGC for the first time, I realized Porydex could be doing more to help me get back up to speed with all the basics.

So, I added move details to the move usage tables on the stats/pokemon pages. Category, PP, base power, accuracy, priority—and for doubles formats, moves that hit multiple opponents are now highlighted.

New feature! Stats are colorful

I’ve wanted to do this for a while. Base stats in tables, in visual bars, etc., are now color coded. I borrowed the specific colors from Bulbapedia, which in turn borrowed the colors from Sun/Moon’s level up screen, so these are about as official as stat colors can be. (I did consider a handful of alternatives, like taking the colors from the sprites for the Power items, or from Mints, but there was too much inconsistency between each of those options.)

New feature! Base Speed on stats pages

Another update motivated directly by my recent forays back into competitive battling. There are a lot of recent mon base stats I don’t have memorized yet, and VGC especially made me realize how important speed is compared to all the other stats, so I realized—it’s probably worth including Speed on the stats/usage and stats/leads pages directly.

I haven’t yet added it to the “stats/[ability/item/move usage averaged over the course of multiple months]” pages yet, because I still kind of consider those pages an afterthought and I keep forgetting about that. I should probably stop doing that.

New pages! Ability flags, move flags

Now we’re getting into the deep shit.

At the bottom of the dex/moves page for each game now is a list of that game’s move flags, and you can click into each flag to get a list of all moves in the game with that flag. Sound-based moves, moves that get boosted by Sharpness, powder moves, moves with a recharge turn, and so on.

Same for abilities, except ability flags are new to the games’ internal data structure as of Scarlet/Violet, so that’s only on the dex/abilities page for SV.

New page! IV Calculator

What kind of Pokédex website would Porydex be if it didn’t have its own IV Calculator?

This was a complicated and fun page to get working. It’s not often that my web development requires me to do any actual math, or really anything more complicated than “get stuff from database and put it on screen.”

But this page does it all. I designed this IV Calculator to address all the frustrations I’ve ever had with every single other IV Calculator on the Internet. No annoying popups if you enter data incorrectly; it’ll just casually say that one stat isn’t possible and the rest will still work. No reloading the page when you click Submit; you always stay on this one page. No enormously long dropdown menus of Pokémon names; you type in some name and it’ll autocomplete as soon as there’s an exact match, and give you unobtrusive suggestions if not.

You can even leave every stat blank and play around with different combinations of Characteristic and Hidden Power type and it’ll still quickly give you all the possible IV combinations.

I do some fancy stuff with the Characteristic that I know for a fact that certain other IV Calculators don’t do: using the maximum among all the minimum possible IVs to set a minimum for the stat that determines the characteristic. (Example in the screenshot above. Mischievous means the Sp. Atk is the highest stat, and that it’s either 1, 6, 11, 16, 21, 26, or 31. But if the lowest that Speed can be is 20, then that rules out 1, 6, 11, and 16 as options for Sp. Atk. Other IV Calculators don’t do this step. Porydex is superior.)

New page! EV Calculator

The opposite of the IV calculator! If you already know a Pokémon’s IVs and its final calculated stat, you can use this tool to reverse engineer its EV spread.

It’ll be perfectly accurate at level 100 (because that’s how EVs work) and it’ll give ranges for lower levels, but if it’s an EV trained Pokémon at a lower level, you can just always use the minimum bound because come on you’re not going to give a Pokémon EVs that do nothing, right???

There are still some math-y things I can do to improve this calculator—like subtract each stat’s minimum bound from the 510 EV total pool to theoretically trim down some maximum bounds. I’ll probably get to that within the next few weeks. (EDIT: I did it the next day lol)

I actually made this before the IV Calculator, because I specifically wanted to rediscover the EV spreads on some old EV trained Pokémon in my Pokémon Home (which I still haven’t done lmao), but even I recognize that this page is going to be a lot more niche than the IV Calculator, thus the IV Calculator gets top billing.

***

I am SUPER stoked to have made all these improvements to Porydex in such a short time frame, and I have zero intention of stopping here! My Porydex development Trello board has a LOT of feature ideas on it, ranging from the most pointless of wish list items (update Pikachu’s menu icon for Yellow to be the Yellow-exclusive Pikachu icon), to the most gargantuan of “big deal” items (add a Speed Tiers page to the usage stats suite that calculates speed tiers based on the month + format’s usage stats).

Also, an Advanced Search function. I’ve lost count of how often in recent weeks I’ve wanted a quick way to find “any Pokémon that can learn both Move A and Move B” or “Pokémon with Ability A that can learn Move B”. Or how about “all physical moves with more than X base power and that hit multiple targets”? Advanced Move Search was the understated killer app of veekun for years, and I am determined as heck to bring that feature back to life.

We’re deep into a new renaissance of Porydex development, and I love it.