Arcadex is a suite of informative tools that gives you
actionable Pokémon team building insight by tracking changes
and exploiting weaknesses in the metagame so that you can have
the advantage over your opponents.

Go to Dex Listing
Our Mission

Arcadex aims to provide data to help you identify gaps in the metagame where your team can shine. Fighting enough battles to gauge the metagame can be tedious and misleading based on ranking. Not only do we analyze what top players are using, we also observe their innovation with creative Pokémon and move choices that go against the grain.

Innovative Moves

  • Arcadex provides insight to what moves appear in battle that are typically uncommon for the Pokémon using them, along with the battle replay to showcase the set in action. This aims to give you inspiration for your team building process, and forecasts what may be an upcoming trend in the meta.
View Moves

Best Coverage Moves

  • We analyze battle replay information and mark the most common Pokémon in the metagame to bring you a list of the most efficient coverage moves against them. This snapshot allows Trainers to quickly identify weaknesses across teams in the meta, and to optimize their coverage move selections during team building.
View Chart

Team Compositions

  • You no longer have to wait for tournaments to finish to see the successful teams in the meta! Arcadex provides reporting on teams across 3,000+ battles of the top 500 players on the Pokémon Showdown ladder to track composition dominance and identify gaps in the meta.
Go to Team Comps

Arcadex Entries

  • Our listings of Pokémon offers detailed filtering of items, typing and usage statistics as well as battle information including full replays and tracking threats seen against that Pokémon. We also provide statistics on their most common EV builds, movesets, partner options and item choices!
Go to Dex Listing

Common Final Speeds

  • We've implemented a sortable table of common final speeds for each Pokémon having an Arcadex entry. This table details base stat information, as well as the Pokémon's final speed at each stage between -2 and +2.
Go to Speed Chart

Instant Showdown Codes

  • For each Arcadex entry, we provide a Pokémon Showdown export code of the most common build so you can instantly start testing them! Or, you could use them to perform quick damage calculations with external resources in the heat of a battle.
Choose a Pokémon

Pokémon for Coverage

  • For each typing, we bring a list of Pokémon choices that carry strong coverage moves (85 base power or higher) to give you a good starting point for selecting your counters.
View Coverage List

Common Lead Pairing

  • By tracking the Pokémon typically seen on lead in battles, we can present a great overview of consistently strong options that lends itself to creating cores for your team building efforts.
View Pairings

Innovative Picks

  • Some Trainers go a step beyond moveset and select entirely different Pokémon that the meta isn't used to seeing! We capture and display these battles to help brew new ideas of your own and carve a niche out in the meta.
View Picks
About Us

Hey there! I'm Patrick, but you'll see my name as Ace Trainer Kodiak around the community. Here's more information about us:

Our Team

  • Arcadex is a one-man army! This project came about from my love of programming and Pokemon battling. I've been a programmer since 2012, and Java and Python are my native tongues. I'm always open for feedback and critique, so feel free to reach out through my contact information in the footer!

Our History

  • Arcadex started as a small Python script I created that listed out what coverage types were the best against the meta. This was greatly helpful for my team building process, but I quickly had many more questions like "What exact speeds should I be hitting?", "What are the specific teams I'll be fighting against?", "What team structure is consistently successful when laddering?" and many other things that felt like I needed to be a veteran player to understand. I figured I wasn't the only person struggling with these types of questions, so I decided on making a full website to showcase more specific views of the metagame!

    While the first Arcadex release received amazing reviews, there were many administrative issues with the setup that jeopardized the up-time (namely crashes during data parsing would bring the entire site down rather than a small portion of the processing). Many long nights and weeks went into making Version 2 of Arcadex. The site is completely remade from the ground up, and the changes makes the site much more stable and able to easily take on new data sources as the community grows.

Our Tech

  • Arcadex has moved from a Django implementation to now use Glassfish, JavaServer Faces and Java at large. Java is phenomenal for stable enterprise environments, and it does wonders for smaller-scale personal projects like this. It's especially great for keeping the page render times on our site low, even if we're doing follow-on calculations after receiving our data, due to Java's fast runtime execution.

    We started by setting up an Extract-Transform-Load (ETL) dataflow system with Apache NiFi, a framework that allows very fine control of our Transform phase through custom-written processors. Of the 131 processors that keeps Arcadex ticking, there are 11 that I've written for finer control on things like parsing specific data sources, calculating type weaknesses, extracting battle replay information, and creating the information you see on each Arcadex entry page.

    To make this calculated data easier to access, I've created a process group within NiFi that acts as an internal RESTful API service. By decoupling the system like this, Arcadex is able to maintain consistent up-time and process new battle data in controlled time intervals. Our data is rotated every three hours to keep our information up to date in a reasonable manner.