4,096 x 4,096 IV spreads x 9 shield scenarios x 1 distinct moveset/bait grid = 150,994,944 simulated matchups (18,324,954 deduplicated engine calls -- IV-identical cells share one sim) (2 grids were baked, but Dragon Breath / Flamethrower + Sky Attack, baiting and Dragon Breath / Flamethrower + Sky Attack, no bait are byte-identical, so they count once).
Controls
Your IVs: which one should you build?
Runs entirely in your browser; nothing is uploaded.
Paste your Poke Genie CSV (or pick the file) and your mons are ranked
below. Only Altaria, Lickilicky, Lickitung, Swablu rows are read.
The short version
Every matchup at once: 4096 Altaria x 4096 Lickilicky
Hover a cell to outline it across the view. At the
default zoom a cell covers a BAND of ranks, not one spread -- the
caption under the plot states the current band size, which narrows to a
single spread as you zoom in.
Coverage vs attack: is there a cliff?
Off the frontier: attack vs stat-product rank
Coverage: which Altaria spreads beat the most Lickilicky
Pareto: Lickilicky coverage vs the rest of the meta
Drill-down: one Lickilicky spread at a time
Mechanism: breakpoints, bulk, and the community claims
Recommendations
The other side: anti-Altaria Lickilicky tech
Methodology, honesty notes and disclosures
generated 2026-08-24 19:05 UTC | engine 5839391a7596 | gamemaster 8f1d6cca5c0f | mechanics legacy | 18,324,954 deduplicated engine calls covering 301,989,888 matchup cells -- but Dragon Breath / Flamethrower + Sky Attack, baiting and Dragon Breath / Flamethrower + Sky Attack, no bait are byte-identical, so 50% of those cells are duplicates of another grid; the intro at the top of the page quotes the DISTINCT total, 150,994,944 | grids embedded: flsa_bait, flsa_nobait