こんにちは、しゅんくり~むです。
本記事は剣盾のダメージ計算機に関する紹介記事になっています。スカーレット・バイオレットに対応したダメージ計算機は現在作成中ですので、少々お待ちください。
アプリは以下のリンクから使用することができます。

アプリについて
ポケモンのダメージ計算ができるアプリです。
攻守のポケモン・技などを入力して計算ボタンを押すことで、ダメージ計算のシミュレーションを行うことができます。
各項目の入力方法
入力欄にポケモンなどを入力し、入力候補から項目を選択することでデータが自動補完されます。
ただし入力内容が技名などと完全に一致している場合や、入力候補が一つのみに絞られている時は、項目の選択を行わなくても自動で入力が完了するようになっています。
また、持ち物については効果のあるものの中から選択する形式で入力し、特性についてもダメージ計算で効果がない特性には未対応となっています。
各ステータスの変更
実数値・努力値・技威力・タイプ・技の分類なども手動で変更することができます。
努力値などのステータスを変更すると実数値に反映し、実数値を変更すると努力値に反映する仕様になっています。ただし、入力された実数値が努力値で達成不可能な場合、努力値の欄には0が補完されます。
また、火傷やリフレクター、ダブルバトルの範囲技減衰など、ポケモン以外の環境のステータスなどを設定することもできます。
計算結果について
計算結果として、ダメージ幅・HPに対する割合・確定数・瀕死確率・乱数を表示します。
HPバーについては、濃い部分が確定で残るHPを、薄い部分が乱数幅を示しています。急所の確定数については、通常ダメージn発+急所1発での瀕死率を示しています。
ただし、急所ダメージについてはランク補正を一部無視する仕様が現在未対応であり、ランクを考慮したうえで急所の1.5倍補正が掛かったダメージが急所ダメージとして表示されます。
データの取得について
技やポケモンのデータ取得に失敗すると、該当入力欄に「データ取得失敗」を出力します。
データの取得は暗号化通信を用いてサーバーに問い合わせる形で行っているため、オフライン状態や、httpから始まるページでアプリを使用するとデータの取得に失敗します。ネットによくつながる状態で、URL:https://pokedesiaf.com/dmcal/のページからアプリを使用してください。
ダメージ計算の仕様
ダメージ計算の細かい仕様として、上記のサイトを参考にしました。
実機と比較した正確性については完全な調査はできていませんが、切り捨て処理なども含めて可能な限り正確に実装しています。
泥遊び状態の実装など、BDSP対戦の仕様にも恐らく対応できているはずです。
細かい仕様の実装
実装の都合で実現できなかった仕様もありますが、特殊な計算が入る細かい仕様なども極力正確に実装してみました。実装した仕様の一部を以下にまとめます
・ダブルバトルの範囲技減衰や壁の弱体化
・力づく+追加効果技や、頑丈顎+牙技などのダメージ上昇補正
・火傷+空元気・根性などの火傷効果無視+ダメージ上昇
・穴を掘る+地震や、小さくなる+ヘビーボンバーなどの特殊なダメージ上昇補正
・ジャイロボールやエレキボール、草結びなどの特殊な威力計算
・メトロノームの火力補正
その他にも色々実装しています。使用感では既出のダメージ計算機に及びませんが、細部に拘ってみたのでよければ使ってみてください。
複数ターンにおよぶ攻撃に対する計算
今回紹介したダメージ計算機ではひとつの攻撃に対する生存確率の計算しかできませんが、ミミッキュのじゃれつく+影撃ちのような複数の攻撃に対する生存確率の計算ができるツールも別で公開しています。よろしければ、こちらも合わせてご活用ください。

最後に
夏休みの工作のような感覚で作り始めたダメージ計算アプリでしたが、思っていた以上に作業量が多く、結局制作にかなりの時間を費やしてしまいました…。スカーレット・バイオレットの発売が控えていますが、新作発売後は使用などの調査を経て新しい技や仕様に対応したバージョンにアップデートする予定です。
もしバグやデザインの崩れ等を見つけましたら、お手数ですがコメント欄や制作者Twitterなどで報告いただけると助かります。その他アプリに関するご要望等も受け付けていますので、気軽にお声がけください。
以上です。