As promised, the Advanced Search pages are now up and running!

A search for Pokémon in S/V that can have the ability Prankster and learn the moves Sunny Day, Rain Dance, and Weather Ball. [Search link]
A search for physical slicing moves in S/V that can be learned by Gallade (AKA moves that would be boosted by Gallade’s ability Sharpness). [Search link]

Finally, everything is coming together. All that learnset data, all those move flag lists, all of these eight years of building up Porydex from a mere Pokémon Showdown usage stats trend analyzer into a full-fledged general-purpose Pokédex website with unique features that set it apart from its competition.

Yeah, I’m pretty proud of this new feature. How could I not be?

Back in 6th and 7th generations, I considered veekun.com the cream of the crop when it came to Pokémon data resources, mainly because of its Awesome Pokémon Search and Awesome Move Search pages. Ever since starting Porydex, and especially once 8th generation came around and veekun was never updated for it, replicating those Awesome Search pages was one of my Porydex end goals.

(I’m aware that my own Advanced Search pages are currently a lot more barebones than those ones. But honestly, those ones have too much going on in my opinion. Is there any practical reason to need to search for middle evolutions with base HP between 45 and 80 and who learn Tackle by level up in Black/White specifically? No, there isn’t.)

(Especially when veekun’s data set is otherwise only for the then-most-recent games, USUM, the fact that you can search learnsets by individual games in which the move is learned is weird.)

(Meanwhile, Porydex has the data for every game separately, and also tracks which games allow you to keep movesets when transferring Pokémon from prior games. So, while it’s not in the screenshots above for the Scarlet/Violet search pages, the Sword/Shield search pages have a single friendly checkbox to toggle whether transfer moves should be included. I think that should take care of 99% of practical search needs.)

Oops, that parenthetical tangent just kept getting more and more tangential. Let’s bring it back home.

So yeah. Advanced Search v1.0 is here. I’m going to keep adding more options to it, some from veekun (moves that cause specific stat boosts/drops), some original to Porydex (searching Pokémon by resistance/immunity to specific types, including factoring in Abilities), and so on.

But my next most immediate Porydex development project, now that I upgraded the server to PHP 8.4 the other day, is to start taking advantage of all the fun new features PHP 8.4 brings to the language. I’m already cutting out a LOT of boilerplate code thanks to asymmetric property visibility, and if there’s one thing that should excite any good programmer, it’s being able to mercilessly remove thousands of lines of code.