Programming Showdex - An Auto-Updating Damage Calculator Built into Showdown!

Showdex - an Auto-Updating Damage Calculator Built into Showdown!
Created by BOT Keith & analogcam
Inspired by all those times Pokeaim highlighted text to scroll sideways on the Damage Calc page lmao


showdex-full-dark-screenshot.png


Ever wonder if that Choice Band Toxapex can really OHKO your Dragapult with Knock Off? (there’s actually a 25% chance that it could) Or maybe you find yourself running out of time running calcs, so you end up making a game-throwing decision under pressure.

Then say no more fam, we got the sauce you’ve been looking for!

Introducing Showdex, a browser extension that integrates the Damage Calculator directly into Showdown and automatically syncs during battles, so you can spend less time configuring and more time stratting. You can easily check calc’s at a glance, and run 10x the # of calcs you traditionally could. We’ve also packed it with tons of useful info (Smogon page/sets, ability descriptions) to help you make informed decisions. It’s like crack, says the dev. Once you give it a try, it’ll be hard to play without it. Enjoy <3

Notable Features
  • Automatically syncs the calculator with the battle and downloads fresh Smogon sets, updating each Pokemon’s forme, level, HP, types, status, ability, nature, item, moveset, spread, and boosts, as well as the field conditions like screens, weather, and terrain at the end of each turn.
  • Color-codes KO % 's to help you quickly scan for 1HKO (green), 2-3HKO (orange), and 4+HKO (red) moves.
  • For Random Battles, displays pools of possible abilities, items, and moves in their dropdowns.
  • Auto-sets opponent Pokemon with the first downloaded Smogon set of the detected format. You can easily tweak the set and keep your changes throughout the battle.
  • Click on a Pokemon’s icon to pull up their Smogon page or the player’s username to view their Ladder Rating page in a new window.
  • Click on a Pokemon's name to change their forme (i.e. Aegislash-Shield -> Aegislash-Blade, Blaziken -> Mega Blaziken, Hatterene -> G-Max Hatterene)
  • Opens in the chatrooms panel or on top of the battle’s chat, allowing you to view the calcs right next to the battle.
  • Crit toggle to quickly check critical hit damages.
  • When applicable, provides toggles for Max (Dynamax/Gigantamax, for Gen 8) and Z (for Gen 7 and National Dex) moves.
  • Displays tooltips with useful information, such as ability, item & matchup descriptions and move properties.
  • Lists common natures first (Adamant, Modest, Jolly, Timid) with the remaining natures alphabetized (except for neutral natures, of which only Hardy is available).
  • Automatically removes consumed/knocked-off items from the affected Pokemon.
  • Accounts for the Pokemon’s ability (e.g., Slow Start), nature, item (e.g., Choice Band), moves, and boosts, as well as field conditions (e.g., Rain) when calculating the Pokemon’s final stats.
  • Provides a toggle for auto-switching to the active Pokemon for each side (auto button under player name). Auto-syncing still occurs even if auto-switching is disabled.
  • When applicable, provides activation toggles for abilities such as Multiscale and Flash Fire.
  • Downloads Showdown usage stats and displays their usage percentages in the dropdowns.
  • Copy the Pokemon’s current set to your clipboard for quick importing into Teambuilder and PokePaste.

showdex-panel-screenshot.png


Install
Note: After installing, refresh Showdown and the Hellodex tab will appear. On mobile, you'll have to click on the Showdown icon in the top left.

~ DESKTOP ~
Chrome
This will also work on any Chromium-based browser such as Brave and Edge
Opera
Unfortunately Opera is quite slow to approve updates, so you won't receive them at the same time as Chrome/Firefox/Safari. Opera is currently on version 1.1.4, while the latest version is 1.1.5. You can install it manually if you want to be on the newest version. The instructions might be slightly different from Chrome, but they work the same way. Sorry about that, hopefully they improve this in the future ^_^
Manual Install
1) Extract the “showdex-v1.zip” file to somewhere easily accessible.
2) Verify that the extracted folder contains files like main.js, content.js, and background.js. If not, you probably have a folder in a folder, so move that folder outside.
3) In Chrome, click on the 3 vertical dots in the top-right corner > More Tools > Extensions (or navigate to the URL “chrome://extensions”, without the quotes).
4) In the top-right corner of the page, turn on “Developer mode”, if not enabled already.
5) In the top-left bar underneath the “Extensions” logo, select “Load unpacked” and navigate to the folder extracted from the ZIP file earlier.
6) Confirm you see “Showdex” in your list of extensions.
7) Open Showdown and start/spectate a battle.
Safari
Unfortunately, we don't currently support Safari since Apple requires us to shell out $100/year for the Apple Developer Program just to distribute a singular free extension on the App Store. Thanks Tim!

Not all hope is lost, fortunately! Enhanced Tooltips for Showdown (Source on GitHub), currently available on the App Store, bundles Showdex along with the Enhanced Tooltips & Randbats Tooltip extensions. Note that the bundled Showdex is not officially supported and it might be out-of-date, so questions regarding Showdex running on Safari should be directed towards the maintainer of the aforementioned App Store app, Christian Brüggemann (Smogon · GitHub).
Pokemon Showdown Desktop App
We don't currently support the desktop app, so you will need to play on a web browser to use Showdex. We're looking into it, but it would require creating a separate unofficial desktop client (since that's the only way we can bundle Showdex with it).​
~ MOBILE ~
Android
Kiwi Browser
You can install it like normal from the Chrome Extension store. This will work for any other Chromium based browser like Kiwi (that supports extensions). Chrome currently doesn't support extensions on mobile for some reason.​
Firefox
Thankfully Firefox now officially supports the Showdex extension on mobile. You can install it like normal from the Firefox Add-Ons store.
Apple (iOS)
Refer to the Safari directions above. After downloading the app, you'll need to go into your phone settings, then go into your Safari settings and select "Extensions". Then you'll have to allow access for the Extension to load in Safari. We don't officially support Safari, so make sure to read the Safari directions for more info.​

Usage Tips
  • For smaller screens (like laptops), fullscreen the Chrome window (F11 on Windows, Fn+F on Mac) to see all of Showdex without needing to scroll
  • When you edit a stage boost, the value will turn blue indicating auto-sync is disabled for that stat only. Clicking on the blue-colored value will re-enable auto-sync, clearing your changes.
  • If your opponent uses a move that isn’t in the current Smogon set, you can change their moves to the “Revealed” moves at the top of the move dropdown list. Enable the "Auto-Fill Revealed Moves" toggle in Settings (from Hellodex) to have this automatically done for you
  • In the moves dropdown list, we only display moves that are in the Pokemon’s learnset (unless you’re playing AAA or Hackmons)
  • Selecting the “Max” toggle next to “Moves” will set the Pokemon as Dynamaxed and update the damage values and KO% on both sides.
  • Switch between dark and light mode by clicking on the settings icon in the top-right (next to your username) and under Graphics, changing the Theme to “Light” or “Dark”. You can also set the theme in the Settings.
  • If you don’t want your currently selected Pokemon to auto-switch to the active Pokemon, click the “Auto” toggle under the player name to turn off auto-switching for that side. Disabling auto-switching does not affect auto-syncing.
Known Issues {GitHub link}

Possible Future Features {GitHub link}
  1. Showdex for Teambuilder
    1. Create a list of Pokemon sets that you want to compare your team against in the teambuilder (i.e. a threat list, so whenever you’re building a team you can easily see how you’ll handle common threats like Lando-T, Corviknight, Dragapult, etc. or uncommon user-defined threats with custom set support. We basically want to make a revamped version of the One vs All, All vs One feature of the Honko damage calc, with more control, custom configuration, and a nice UI)
    2. Import/export sets to/from the battle and Teambuilder [done!]
    3. Out-of-battle Calcdex [cooking!]
GitHub Patch Notes {GitHub link}

Patch 1.0.1 is out now!
You can read the patch notes here. This patch added support for National Dex (except for a bug with Gen 8 pokemon holding a Z-Crystal) and all generations except for 1 and 2. It also includes the ability to reopen Calcdex tabs you've already closed, a redesign of HelloDex, and much more. Let us know what you think!

Patch 1.0.2 is out now!
Read the full patch notes here.
Here's a quick summary of some notable changes:
  • You can now switch between a Pokemon's formes by clicking on it's name near its icon and HP bar. This works for Gmax and Mega evolutions in addition to forme changes like Aegislash-Blade/Shield [thanks Runoisch for the suggestion]
  • Added support for Gens 1 & 2 and further fixes for other older gens (finally!). This includes the mechanics for SPC and DVs, in addition to disabling options like terrain which aren't available in the older gens.
  • Added experimental support for CAP Pokemon & moves (in the next patch they will be officially supported, but for now we implemented a quick fix so it's ready for the upcoming tournament) [thanks Baloor for pointing this out]
  • Categorized items dropdown by popular, items, Pokémon-specific, usually useless, and useless (exactly like the Teambuilder)
    [thanks Furret4ssb for the suggestion]
  • Replaced the default system scrollbar on Windows with one that works like Mac's (saves space and looks nicer)
    • Unfortunately on Firefox, this isn't working as intended and the new scrollbar is overlayed on-top of the old one. We'll have this fixed in the next patch!
  • MANY bug fixes, thank you 85percent, Furret4ssb, Runoisch, Nails, orangelego21, jeffdaboss, May, and Baloor for your help finding them! :)

Patch 1.0.3 is now live!
This was a HUGE patch with many new features and a ton of bug fixes & optimizations (full patch notes here).
Here’s a brief-ish summary of the important changes:
  • We now have a Settings page which you can access from the HelloDex tab!
    Some useful settings include:
    • Show the normal chatrooms panel instead of the Hellodex when Showdown starts
    • Choose when a Calcdex tab should open i.e. only when battling
    • Auto-close Calcdex tabs when the battle is over (so it doesn’t clutter your tabs)
    • Set Showdown Usage set as default set, which displays the usage stats (%) for moves, abilities, and items for each Pokemon in the format in their dropdown. You can always select the Showdown Usage set from the Set dropdown as well (this also fixed the problem where some Pokemon were blank bc they didn’t have a Smogon set)
    • Hide you or your opponent’s EV/IV values by default (helpful for fitting everything without needing to scroll). You can always edit/show them at any time by clicking the “Edit” button
  • If you’re in Single Panel mode or you don’t want the Calcdex to open as a tab, you can now use Battle Overlay mode (it’s auto-enabled in Single Panel). This adds a “Open Calcdex” button next to the Battle Timer so you can toggle the Calcdex as an overlay over the battle chat instead of as a tab [thanks pokeaim for the suggestion]
  • Many performance optimizations to hopefully get rid of the micro-stutters/lag! If you’re still experiencing lag, consider turning on “Close Tab When Battle Ends” and “Clear Memory after Tab Closes”. If it’s still lagging, try turning off some of the set downloading such as the Smogon sets
  • You can now copy the Pokemon’s set to your clipboard and import it right into Teambuilder or the Pkmn Damage Calc
  • We fixed a ton of bugs that were preventing Calcdex from working properly in different formats such as 1v1, Anything Goes, etc.
Honestly this just barely scratches the surface of all the changes/fixes, so definitely read the patch notes for a more comprehensive list.
Huge shoutout to Keith (the dev) for all his incredible work.

There are a few known issues that we’ll be deploying a small patch for soon, notably Psyshock (sigh), Zoroark (bigger sigh), and G-Max Pokemon in Random battles. If you’re playing Random battles and a Pokemon doesn’t have a set loaded, click on their name to change their forme, as they probably only have a G-Max set for Randoms and that’s why it’s not showing up (i.e. G-Max Coalossal).

Patch 1.0.4 is now live!
This was a much lighter patch that's mostly focused on bug fixes, but we also added a few cool features. You can read the full patch notes here, but I've listed some of the highlights below
  • Psyshock, Psystrike, and Zoroark (Illusion) have been fixed! Phew, Zoroark was a huge pain in the ass, glad that's over! For now… Hopefully :)
  • Fixed gen4OU crashes (was caused by malformed set names)
  • Added a setting to automatically replace your opponent's moves with newly revealed moves, and it's done in the following order (status moves -> non-STAB moves -> Any STAB moves)
  • Added G-max detection, especially for random battles where some mon only have sets for their G-max formes
  • Added visual support for doubles/VGCby indicating the two active mon on each side
    • We'll be adding more doubles support like toggles for Helping Hand/Friend Guard in an upcoming patch
  • Choose when a Calcdex tab should auto-close (either when the battle ends or when the battle tab closes)
  • Added support for more than 6 mon on each side (for OMs & custom mods)
  • Added a setting for LC players to display damage rolls with percentages, i.e. instead of 11, 11, 12, 15, 15, 15, 17, it would be 11 - 15%, 12 - 5%, 15 - 45%, 17 - 5%)
  • Decreased tooltip delays for some buttons
  • Fixed incorrect base power for Hidden Power moves in gens 2-5
It looks like Chrome is starting to approve our patches faster, which means we can push out smaller fixes more rapidly if needed (yay!).
Thank you again to everyone for the support and feedback!

Patch 1.0.5 is now live!
You can read the full patch notes here. This patch includes a lot of UI updates and responsive layout adjustments to make the Calcdex & Hellodex look great on different resolutions (with more support coming in the next patch for larger screens!) More excitingly, we now fully support VGC/Doubles with the introduction of toggles for Helping Hand, Friend Guard, etc. when the doubles format is detected. We also now officially support Android through the Firefox Beta and Kiwi Browser apps (with custom mobile styling so you can easily open and close the Calcdex overlay from within the battle). Lastly, we’ve fixed the Eviolite, Sandstorm, and Silvally/Multi-Form bugs, in addition to improving the auto-replacing revealed moves algorithm and other under-the-hood stuff. It feels like we’re getting closer to a really stable build without any discrepancy from the Honko Damage Calc which we pass our data into.
  • Added left/right arrow key support for switching between Showdown panels
  • Improved mobile compatibility and added top & bottom buttons to close the Calcdex Battle overlay on mobile (which displays a “Open Calcdex” button in the battle for quick access)
    • You can now install it on the Android Firefox Beta app, though the process is as inconvenient as they could possibly make it. View the installation instructions here (soon). Hopefully this install process gets better once the feature moves out of Beta. At least they support extensions on mobile, unlike Chrome.
    • You can also easily install it on Kiwi browser from the Chrome Web Store of course (or any other Chromium based browser that supports extensions on mobile).
  • Removed Ability, Nature, Items, and Aurora toggle in Gen 1
  • Fixed Spikes and Stealth Rock damage again (oops)
  • Fixed Imposter transformation moves not applying properly
Almost done! It wouldn’t be a proper patch notes without mentioning a few issues we noticed AFTER we had submitted it for approval or that we didn’t want to delay the patch any longer for.
  • Any sets with a “-” such as “All-out Attacker”, will cut off the first word and appear as “out Attacker” in the Sets dropdown. This is just a visual thing, and sometimes a bit amusing. I like the sound of Mega Lopunny’s “Up Punch” set.
  • The following moves might not work properly: Aura Wheel, Multi-Attack, Natural Gift, Revelation Dance, Techno Blast, Terrain Pulse, Judgment & Weather Ball (only don’t work with Dmax), and Beat Up

Patch 1.0.6 is now live!
You can read the full patch notes here. This patch includes a lot more support for custom OMs and edge cases with the ability to change a Pokemon’s typing, edit move properties & base stats and increase EVs/IVs past traditional limits (thanks Clastia for the suggestion). The added benefit is that in standard play, you can manually set the BP of a move like Beat Up or turn off your Flying Type when Roosting to name just a few use cases.

We’ve added a Win/Loss counter to the HelloDex to provide you with a bit of fun utility (dw you can always reset it by refreshing the page). When an attacking move does 0% dmg, we now display “IMMUNE” instead of “N/A” and “?” instead of “N/A” for moves such as Mirror Coat for which dmg can’t be determined since they require input (thanks Iodyne for the suggestion). And you can now use shift+left/right arrow keys for moving Showdown’s panels.

We also added some more settings like “Show Win/Loss Counter” and toggles for when you want move, typing, or base stat editing to be enabled. The default setting is “Meta”, which only enables editing options for custom OM formats to avoid cluttering the UI when playing in standard formats like OU where you don’t usually need them.
Lastly, this patch includes a ton of bug fixes such as:
  • Fixed cut off set names like “-out Attacker”
  • Fixed missing sets for transformed Pokemon like Mimikyu-Busted, Zygarde-Complete, etc.
  • Fixed Behemoth Blade & Bash not replacing Iron Head after transforming into Zacian-Crowned & Zamazenta-Crowned
  • Fixed disabled Edit button for your Pokemon’s stats in older gens & missing options in the items dropdown for Gen 2 battles
  • And more!
Gen 9 is right around the corner, which means new battle mechanics, and unfortunately Showdex won’t work until the PS calc is updated with the new gen mechanics/data. Not to mention there definitely won’t be any Smogon sets or Showdown Usage sets to display in the beginning. Keith will also be taking a much deserved vacation, so we’ll have to wait until he’s back and everything is settled before we can deploy a fix for Scarlet & Violet. We plan to deploy a small patch before Gen 9 releases, and our initial thoughts are to disable the calc in Gen 9, because it might crash or be inaccurate. The idea being that it’s prob better to show nothing rather than show inaccurate calcs or crashes. Totally open to everyone’s thoughts on that situation, thank you so much for all your support and feedback.

We’re excited as hell for Gen 9 and learning the new calcs and especially all the mechanics that are gonna add a million new edge cases and bugs :woop:
As always, we love hearing your feedback and we hope you enjoy!

Patch 1.1.0 is now live!
Did you miss us? Sorry we've been gone for so long, we've been working hard to support all these lovely new Gen9 mechanics lol GameFreak really stepped up their game this time to ensure we had to hard code fixes for specific edge cases (looking at you Ruin abilities).

Anyways, this patch includes support for basically all the new Gen9 mechanics & the new Gen9randbats, in addition to some QoL fixes from the unreleased patch 1.0.7 such as adding probabilities to randbats in the ability/item/move dropdowns, importing sets into Calcdex, viewing Showdown usage stats outside of the Showdown Usage set, and more! As always, you can read the full patch notes here.
Newly Supported Gen9 Mechanics
  • Terastallization
    • You can now view and edit your Tera type (which appears next to your normal typing(s)) and toggle terastallization on/off by clicking the “Tera” button next to Moves (ofc it will also auto-sync with the battle state), which will apply the new STAB modifiers and change your defensive typing
    • If not provided from the set, the Tera type will default to the mon’s first type
    • Would be quite unlucky if this ends up getting banned lol plz Finch have mercy
  • Protosynthesis/Quark Drive
    • You can manually toggle the boost on/off, and it automatically activates with Booster Energy or Sun/Electric Terrain. Provides a 1.3x boost for all stats except for Speed, in which case it’s 1.5x
    • If a Paradox mon doesn’t receive the Protosynthesis/Quark Drive boost and Sun/Electric terrain aren’t active (whichever applies), it will automatically change the item to the next highest usage item
  • Treasure of Ruin abilities
    • You can manually toggle these on/off, but in doubles, you can only have two active on your side at a time. So if you have two Dark Quartet mon out on your side in doubles, you’ll have to deactivate one of their abilities to be able to activate the ability for another Dark Quartet mon that you’re considering switching in (tho I doubt you’ll find yourself in this situation too often)
  • Smogon Usage sets for Gen9 mon
    • Thankfully the PS usage stats are out for November, which means most Pokemon in most formats will have a Showdown Usage set applied (”Download Usage Stats” must be enabled in settings). This is awesome, as it would have been pretty annoying to have a blank set for all the new mon and having to manually set all the EVs, moves, ability, etc every battle until Smogon sets are finally released
    • Unfortunately in some formats that began at the end of November there is a lack of Showdown usage data (such as VGC), but this should definitely be fixed once the December stats are released
  • Gen9 randbats is supported!
    • Right before we were about to release this patch, Gen9 randbats arrived, so of course we had to delay the patch so we could include support for it (as a smooth brain randbats enjoyer myself, I need those sweet juicy calcs).
    • Randbat sets now have “roles” such as “Bulky Attacker”, “AV Pivot”, etc. that you can view and switch between from the set dropdown. Definitely take a look at the differences between the sets, as it can be pretty clear when they use a certain move what set they are. We plan to add automatic set switching when a move/Tera type is revealed that can’t be in the current set in the next patch, as there are a lot of instances where it’s pretty obvious which set it is (e.g. they use Defog which is only in the Support set and not in the Attacker set).
    • In the moves dropdown, you can view the probability % for each move to appear in THAT ROLE. This % is specific to each role, which you can change from the set dropdown. If you see that there’s no % next to the revealed move in the dropdown, it’s probably because hint hint cough cough you should probably change the set to another one.
    • Tera types have also been added to the sets, along with probability %s. We’ve included the those in a separate list at the top of the Tera dropdown.
  • New tooltip for Final Stats
    • You can now hover over the colored final stat to view a tooltip showing all the boosts/debuffs that are being applied, such as 0.75x from Beads of Ruin, 1.5x from Assault Vest, so you can understand how the calc arrived at that number
    • To note, some abilities/moves like Supreme Overlord are a base power increase and not a stat boost, so that’s why you won’t see it reflected in the final stats, but rather in the move tooltip
  • Rage Fist, Supreme Overlord, Last Respects, Glaive Rush, Raging Bull, Sharpness, Double Shock, Purifying Salt, Salt Cure, Well-Baked Body, Wind Power, Wind Rider, Electromorphosis, Earth Eater, Zero to Hero, Commander, Armor Tail, Population Bomb (only reflects damage from 10 hits), and Rocky Payload have all been tested and are supported
    • For Rage Fist, Supreme Overlord, Last Respects, and Glaive Rush (opposing mon damage), the move tooltip will reflect the base power (BP) increase, e.g. after taking two hits, hovering over the move Rage Fist will show the BP as 150 in the tooltip (colored green to indicate a positive change, red for negative change)
    • Hopefully these work as intended, but if not let us know, as PS is still fixing bugs with some of these moves/abilities too
  • Snow
    • Provides a 1.5x defense boost for ice types in the snow
Some Known Issues
  • The Tera types for your team won’t be filled in until you switch the mon in, this time due to how Showdown implemented Tera in the battle state, as that data isn’t provided from the server until the mon is active on the field. Hopefully they’ll change this in the future, but if not, we plan to eventually start reading the sets directly from teambuilder, at which point we could detect the Tera type before the battle even starts
  • Acrobactics/Knock Off damage is incorrect when a Paradox mon has their Protosynthesis/Quark Drive active from Booster Energy, due to how the damage calc API currently works. In order to allow you to activate Protosynthesis/Quark Drive manually with an “active” toggle, we have to set your item to Booster Energy (unless field conditions are met), bc if we set Sun/Electric Terrain, it could affect the damage of other moves
    • Turn on “Editable Move Properties” (it’s at the bottom of the settings page) to manually fix issues like Acrobatics/Knock Off damage by increasing the BP while we wait for these issues to be ironed out
  • Collision Course/Electro Drift don’t correctly apply the 1.3x boost for supereffective hits (waiting for calc.ps to fix this)
New Features from Patch 1.0.7
We didn’t end up getting this patch out in time before Keith left for vacation, but we added some useful features in the unreleased patch 1.0.7 that you might be interested in:
  • Added set probabilities to ability/item/move dropdown options in Randbats and we now sort the lists by their probability as well, which means that moves/items/abilities with 100% probability will always be included in the default set (huge thanks to pre for adding this feature to his API) [thanks IIIJLIII for the suggestion]
  • You can now view Showdown usage stats displayed in other sets (i.e. you’re viewing the Smogon Choice Specs Dragapult set, you can now see the usage % for each of the moves, items, abilities, etc. without having to change the set to “Showdown Usage”)
  • For non-ladder games, we now display the player’s elo if it’s available in the given format (such as in private/tournament battles) [thanks Iodyne for the suggestion]
  • You can now import sets from your clipboard (follows PokePaste syntax)
  • Fixed Hellodex win/loss counter messing up after viewing battle replay
  • Added a new setting that allows you to choose what stats are shown by default for you or your opponent’s side, i.e. Show Base Stats, EVs, IVs for my opponent’s side but hide the Base Stats and IVs on my side [thanks Iodyne for the suggestion]
Planned Future Updates
  • Add auto-set switching for Gen9 randbats
  • Fix some of the few moves that aren’t supported yet, such as Terrain Pulse and Beat Up, as they require us to manually patch the Calc API ourselves
  • Add a developer console with advanced power user commands
  • Allow set favoriting on a per-Pokemon basis
  • Allow you to open the Porydex usage page for a mon instead of the Smogon page
  • Read from Teambuilder sets directly instead of trying to guess the EVs/IVs/nature with brute force maths
  • Improve resizing on larger screen sizes
  • Create a One vs All, All vs One calc for teambuilding (Teamdex) which will allow you to use the calc outside of battle. This is going to be a huge feature that will take quite some time, and I hope to share our ideas on it soon, as we’d love to get community feedback so we can make it as useful as possible for you
Patch 1.1.1 is now live!
This is a pretty light patch mostly focused on bug fixes such as tera type & terastallization syncing with the battle, in addition to adding spiky borders around the Tera type for improved distinction from normal typings. We also added support for factoring in Salt Cure residual damage into the KO % (e.g. 2HKO after Salt Cure damage) and a new setting for choosing whether you want Calcdex to open in the left or right panel (thanks Kirigon for the suggestion). Lastly, we improved Hidden Power implementation, importing of Tera types from Smogon sets, fixed issues when importing PokéPaste sets, and fixed SPC boosts/reductions not applying correctly in Gen 1. To see a full list of changes, be sure to check out the full patch notes!

Patch 1.1.2 is out now!
What began as a small “quick” patch to fix Snow ended up becoming a pretty exciting update that I think you’ll enjoy. Showdex can now read from the Teambuilder, which means:
  • You can now add your own custom sets to Calcdex! Any unique sets from your teams/boxes will be imported into the Calcdex and viewable from the “Set” dropdown, which means you can easily view calcs for your Choice Band Toxapex Teambuilder set.
  • In the settings, you can choose to pull from your Teams, Boxes, Both or Never under “Include Teambuilder”. We know that some people have a ton of teams or a bunch of test Pokemon with incomplete/bad sets, so we wanted to give you control over what’s imported.
  • Only Pokemon with at least 1 move AND fully allocated EVs (gens 3+) will be imported. “Untitled” teams will be ignored, so you can delete an existing title if you don’t want that team included.
  • Duplicate sets (with the same ability [gens 3+], nature [gens 3+], item [gens 2+], moveset, DVs/IVs, and EVs [gens 3+]) won’t be imported, even if they have different nicknames.
  • The Pokemon’s nickname will be the set’s name (“The Don”), otherwise defaulting to Showdown’s role guesser e.g. “Bulky Attacker”, with the Team’s name below it.
  • If you want fine-grained control over what sets are imported, choose the “Boxes” option. You can then create Teambuilder boxes filled with sets that you want imported into Calcdex and give the Pokemon nicknames so you can easily tell what set it is from the dropdown, e.g. “Band T-tar”, “Scarf Tran” (if you’re importing from your teams, it’s prob not a good idea to nickname your Pokemon what set they are).
  • Pro-tip, the boxes limit you to only 24 mon, but you can still specify more using the PokePaste importer; however, the Pokemon icons will overflow, looking really jank, but the box will functionally work.
  • This is especially exciting for the lower tiers/OMs where there are a lot of missing sets! I know in RU there are a ton of missing sets, but now you can fix that problem. You can even export a box of common RU sets and share it with others so they can import them into Teambuilder and view them in the Calcdex. For experienced players, you can now view niche sets from your Teambuilder with ease to cover all options.
  • For prior installations, the “Include Teambuilder” setting is off by default (Never), so I’d recommend turning that “on” (Teams/Boxes/Both) if you want it! New installations will be Both by default.
Other Changes
  • Cleaned up the Settings page by consolidating separate settings into one (i.e. tooltips) and removing some of the trivial ones.
  • For Gen 9 Randbats, we’ve added support for role-specific abilities & items, so T-tar won’t have an Assault Vest equipped anymore when you switch to the Bulky Setup set (with Dragon Dance) from the Bulky Support set.
  • Removed Flower Gift, Power Spot & Battery toggles in Gen 9 Doubles formats, as Flower Gift & Battery aren’t even in the game, and only Stonjourner gets Power Spot, which has really low usage. (These will still be synced if provided by the battle; only the manual toggles have been removed within the UI.) If you miss the Power Spot toggle, let us know, but I felt like it was unnecessary to clutter things up for just that one Pokemon.
Some Bug Fixes
  • Snow now properly gives a DEF boost for Ice types.
  • Photosynthesis & Quark Drive work properly with Knock Off (before we had to silently set the item to Booster Energy, which messed up moves like Acrobatics & Knock Off).
  • We’ve included a temporary patch to boost non-multihit, non-priority Tera STAB moves under 60 BP.
  • Fixed some missing Smogon sets for VGC 2023 & BSS formats.
Patch 1.1.5 is out now!
We're back!
Packed in this release is support for Hydro Steam + Psyblade, proper FFA support (finally!), Tera syncing fixes, Calcdex optimizations to address some lag, other bug fixes & more! You can read the full patch notes here.
(Actually, not really, that's about it LOL ¯\(ツ)/¯)
We appreciate you all for your patience during these past couple of silent months & as always, we hope you enjoy! <3
  • Added Calcdex setting: Lock Terastallization After Use
    • If enabled (off by default), the Tera toggle button in the Moves table will disable once used by the player.
    • Once the battle ends, the toggle button will be re-enabled again.
    • This may be a helpful indication of whether a player can still Terastallize during the battle.
  • Added player's Max/Tera availability status in the Max/Tera toggle button tooltips.
  • Removed Hellodex footer buttons that link to specific pages on the GitHub.
  • Fixed Z toggle button appearing in Gen 6 formats.
  • Fixed the Max toggle button in the Moves table disabling once used.
    • Turns out this was more of a bug than a feature... oops.
  • Fixed player selector not appearing in FFA modes when playing.
  • Fixed incorrect SPD boost for Rock types during Sandstorm in Gen 3 formats.
    • This was purely visual (in the Pokémon's stats) & didn't affect the resulting damages.
  • Fixed base power of Last Respects dropping to 60 (w/ fainted allies) when Terastallized.
  • Fixed the "Copied!" badge not immediately appearing after clicking a damage range.
  • Fixed the Tera toggle button toggling off after a battle sync if the Pokémon had a nickname.
  • Fixed some of the lag. Maybe. Hopefully :)
    • This will hopefully improve the performance and result in less visual lag, especially when you have a lot of tabs open at once or a lot of Calcdex battles in memory (this would be the case if the “Clear Memory After Tab Closes” setting is off)
We wanted to get this bug patch out quick while we work on a newer more exciting feature update for the next patch. Stay tuned and thank you for the support and feedback. Also we just made a Discord for Showdex, check it out if you’re interested :) till next time!

Patch 1.1.7 is out now!
We're back with a huge batch of bug fixes and full support for the new DLC (like Ogerpon's Ivy Cudgel). Open teamsheets now properly updates the opponent's set in Calcdex (along with support for Bo3). We also added a few QoL features like coloring the Tera toggles to indicate if tera's been used or not. You can read the full patch notes here. Thanks for being patient with us, we originally wanted to add more QoL features in this patch, but decided it was more important to squish all the bugs first. Hope ya'll enjoy <3
  • Hazard damage is now properly accounted for in the KO %
  • Updated Ivy Cudgel's move typing depending on the Ogerpon's forme
  • Added setting to automatically accept open team sheets in VGC formats (at the bottom of Settings)
  • HP properly resets when viewing a battle replaywith Calcdex (before the mon remained fainted until they got sent out again)
    • To view a replay with Calcdex, find the replay URL and copy everything after ".com/" like below
      https://replay.pokemonshowdown.com/gen9freeforallrandombattle-1970993006-dhio1msfxkyyrj02j5whlm4jnffz45lpw
      Then enter this URL and paste what you copied at the end:
      https://play.pokemonshowdown.com/battle-gen9freeforallrandombattle-1970993006-dhio1msfxkyyrj02j5whlm4jnffz45lpw
    • This will load the replay in Showdown with the Calcdex syncing with the battle. If it doesn't work, make sure you're logged into Showdown.
  • Fixed Last Respects and Supreme Overlord(fallen count doesn't update after it's sent out)
    • Added a "Fallen" counter to manually set the fallen count (with Move edit enabled)
  • Ditto should sync properly with the right moves, level, and item
  • We now properly support Behemoth Blade (manually transforming), Acrobatics (with no item), Unburden (activates when item is used), Stakeout (activates when viewing a non-active mon), and Fur Coat (increases def)
  • Transformation syncing now works properly with megas and stuff like Ash-Greninja and Aegislash
  • In Randoms, EVs are now set to 85 instead of 84.
  • Flash Fire immunity correctly shows "immune" damage
  • Fixed issues with missing sets for Pokemon on your side
  • Fixed issue with Urshifu and open teamsheets
There's a lot I left out, so be sure to read the full patch notes if you're interested. Also we have a Discord for Showdex if you're interested :) till next time!

Patch 1.2.0 is out now!
Our most Stellar patch yet! This patch includes support for the new DLC 2 mechanics such as Stellar tera and a TON of bug fixes. But most exciting of all, you can now use the Calcdex outside of battle with the new Honkdex feature. I'll give a quick breakdown of the new changes, but you can read the full patch notes here.

New Features
  • Honkdex (out-of-battle Calcdex)
    • You can create as many Honkdex tabs as you want and save them by naming them. This is really great for teambuilding, as you can add all the major threats for a given format and quickly check calcs while teambuilding
    • The light blue background indicates the mon that's currently active, so if you want to switch it, double click on another mon's icon to make it active.
    • You can click on the "Saved" text to manually save
    • We don't support all the functionality of the official damage calc, so if you require more niche options, you should continue to use that.
  • Embody Aspect
    • When clicking Tera with Ogerpon, we now apply the stat boost from Embody Aspect
  • Multi-hit moves
    • You can now manually set the # of hits for multi-hit moves. We also take into account Loaded Dice now.
  • Protosynthesis/Quark Drive
    • You can now manually set what stat gets boosted by clicking on the "Auto" button next to the "Active" toggle.
  • Support for -ate abilities and Weather Ball/Terrain Pulse
    • We now support abilities such as Aerilate, Galvanize, Normalize, Pixilate, and Refrigerate
  • Improved performance
    • We've optimized our code to make Showdex run faster and more efficiently, so hopefully that helps with some of the lag issues!
Bug Fixes
  • Fixed forme change detection for mons such as Necrozma-Ultra, Minior-Meteor & Mimikyu-Busted
  • Fixed Teambuilder sets not auto-applying when they're the only available sets in the format
  • Fixed missing Active toggle in Doubles for some abilities such as Flash Fire & Stakeout
  • Fixed Leech Seed & Helping Hand not being accounted for in the NHKO calculations
  • Fixed revealed Tera types from OTS & !showteam not properly syncing
  • Fixed sorting of Random sets by probability % (the higher probability set is now at the top of the list)
One more thing to note, the Showdown Usage stats haven't been released yet for December, so you'll have to wait a few days for those to come out (hence why a lot of the new mons are missing sets). Thank you to everyone for all your support and patience, and we hope you have a great new year! This was a really big patch that took a lot of time and effort, so we're gonna take a break to work on our start-up this month.

Please let us know if there are any issues and we'll look into them as always. Also would love to hear thoughts on the Honkdex, hope ya'll find it useful :)
 
Last edited:
Seems like a very cool solution! I worked on something like that in the past (https://github.com/FullLifeGames/BattleHelper) but your solution is definitely more appealing and improved!

Is the project open source, so that one could maybe take a look (or suggest some improvements)?
Dev here — Thanks! :woo:

Sure is! You can find the source on GitHub here:
https://github.com/doshidak/showdex

We just released this, so the documentation needs some work :o
(But if you have any questions, feel free to ask!)
 

Ducky

Aw Phooey
is a Contributor to Smogon
this is really cool, one thing I would love to be able to do is selecting "illegal" moves and abilities. As someone who plays a bunch of OMs, my sets are often flagged as being illegal, and it would be super helpful to be able to calc moves that the opposing Pokemon don't normally learn or with abilities they don't usually have.
 
this is really cool, one thing I would love to be able to do is selecting "illegal" moves and abilities. As someone who plays a bunch of OMs, my sets are often flagged as being illegal, and it would be super helpful to be able to calc moves that the opposing Pokemon don't normally learn or with abilities they don't usually have.
If you're playing Hackmons/Almost-Any-Ability, then you can select any move/ability from the dropdowns, but we'll modify things so it works like that for all the other OM formats as well. We weren't sure how interested people were in doing calcs for OM formats so we wanted to wait and see. We would love it if you could test it out in OMs and let us know how well it works, we haven't really tested it out on those.
 

Ducky

Aw Phooey
is a Contributor to Smogon
If you're playing Hackmons/Almost-Any-Ability, then you can select any move/ability from the dropdowns, but we'll modify things so it works like that for all the other OM formats as well. We weren't sure how interested people were in doing calcs for OM formats so we wanted to wait and see. We would love it if you could test it out in OMs and let us know how well it works, we haven't really tested it out on those.
I realized I can select new moves in Hackmons, but I still can not choose illegal abilities
 
it says extract showdex-v1.zip, but where do I find it? would be nice to use this extension as it looks really cool.
 
This is a very helpful extension. Ty!

I would like to make a petition; could you do the same past gens? Now you can't use gens1-7 calcs in this
We're glad you like it! We'll try to support the older gens like gen 1 & 2, but actually it should work in gen 6-7, though for some reason it stopped working properly in one of the later builds. It used to work before in our testing, with only some Mega pokemon breaking it. We're going to fix that and release a patch soon, and then we'll look to supporting older gens. I know gen1 is really different with how stats work. Also Scarlet and Violet coming out soon :totodiLUL:
 

paolode99

Dammi what I want
is a Top Social Media Contributoris a Tiering Contributoris a Contributor to Smogonis a Smogon Media Contributor
really interesting project, it could have some potential not indifferent.I hope you can improve it because it deserves.

edit:I don't know if some have already encountered this problem but in some games it doesn't work
 
Last edited:

Clas

My death was... greatly exaggerated
is a Tiering Contributor
got it to work with opera gx pretty easily, worth adding that the tool works with all browsers with chrome extension support (or at least it should be all, havent tested with others). just remember to refresh the page first, i forgot to lol
1662405706619.png

edit: when it comes to the calcdex, may i recommend adding a button on hellodex allowing you to reopen the calc? seems like the easiest way to implement, although having it consistently open can get annoying tbf, especially if you have open lots of chat rooms at once
edit 2: does showdex use calc.ps directly to grab sets or does it just import them? if the latter is true, its very easy to import sets for most om support and should also solve that issue entirely (either via their own designated threads or someone sending a setlist for that specific mon)
 
Last edited:

Ducky

Aw Phooey
is a Contributor to Smogon
got it to work with opera gx pretty easily, worth adding that the tool works with all browsers with chrome extension support (or at least it should be all, havent tested with others). just remember to refresh the page first, i forgot to lol

edit: when it comes to the calcdex, may i recommend adding a button on hellodex allowing you to reopen the calc? seems like the easiest way to implement, although having it consistently open can get annoying tbf, especially if you have open lots of chat rooms at once
edit 2: does showdex use calc.ps directly to grab sets or does it just import them? if the latter is true, its very easy to import sets for most om support and should also solve that issue entirely (either via their own designated threads or someone sending a setlist for that specific mon)
adding that it also works on brave browser
 
got it to work with opera gx pretty easily, worth adding that the tool works with all browsers with chrome extension support (or at least it should be all, havent tested with others). just remember to refresh the page first, i forgot to lol

edit: when it comes to the calcdex, may i recommend adding a button on hellodex allowing you to reopen the calc? seems like the easiest way to implement, although having it consistently open can get annoying tbf, especially if you have open lots of chat rooms at once
edit 2: does showdex use calc.ps directly to grab sets or does it just import them? if the latter is true, its very easy to import sets for most om support and should also solve that issue entirely (either via their own designated threads or someone sending a setlist for that specific mon)
Nice one! Currently porting it to Firefox, which isn't as straightforward as it initially seemed, so it's good to know I won't have to do too much work on Opera GX haha.

For re-opening the Calcdex, we were planning on adding a button where all the battle controls are (e.g., Skip to End, battle timer), just so you know which battle you're opening it for. The button won't show up unless you closed the tab. Open to having it on the Hellodex as well.

We don't pull the sets from calc.ps, but from https://pkmn.github.io/smogon, which I believe pulls from the same place that calc.ps pulls from. There's no import support yet atm (which is a great idea!). We plan on supporting Teambuilder and clipboard imports in the future!
 

Users Who Are Viewing This Thread (Users: 2, Guests: 10)

Top