見出し画像

次世代ポケモンGOパーティ分析ツール:AIが切り開くパーティ最適化の道


1.はじめに

いつもお世話になっております。ailes07です。
突然ですが、パーティ分析ってめんどくさいですよね。
プレイングスキルが頭打ちになっている昨今で、パーティ構築スキルの重要性が高まってきているのは皆さん感じる部分があると思います。
しかし、そのための便利な分析ツールは多くありません。
攻略サイトのランキングや配信者の対戦履歴を参考に、パーティ分析をしている人も多いのではないでしょうか。
できることならば、自分の経験に沿ったパーティ分析がしたいですよね。
そんな方々に、私(正:ChatGPT)がツールをプレゼントします。
本ツールは時間がない方でも、他の情報源(配信者のパーティログなど)からパーティをコピペしてすぐに分析できるようになっています。
論理的に、かつ効率的にパーティ分析を進めましょう。

2.ツールのインストール

早速ですが、ツールはここからインストールできます。
ツールはExcelのマクロを用いたものです(使い方は後程)。
マクロをインストールすることに気が引ける方に配慮して、ソースコードだけをテキストにまとめたものも用意しました。
下記で説明する「対戦履歴」シートを作成して、コードをVBE(エディタ)に張りつけるだけで使えます。
どうかご活用いただけたら幸いです。
(コードには冗長な部分や美しくない部分がありますが、ご了承ください)

◆注意点
・最近のMicrosoftのアップデートにより、ネットワーク上からExcelをインストールした場合、マクロがブロックされてしまう事象があるそうです。
その場合は、以下の手順でマクロを有効にしてください。

手順1:「編集を有効にする」をクリック(エラーがなければ手順4へ)

手順1:「編集を有効にする」をクリック

手順2:マクロがブロックされるかの確認

手順2:マクロがブロックされるかの確認

手順3:プロパティからファイルアクセスを許可するをチェック

手順3:プロパティからファイルアクセスを許可するをチェック

手順4:「コンテンツの有効化」をクリック

手順4:「コンテンツの有効化」をクリック

3.ツールの使い方

次に、ツールの使い方について説明します。
以下の画像の手順に沿って、ご利用ください。

手順1:「開発」タブへ移動

手順1:「開発」タブへ移動

手順2:「マクロ」実行画面を開く

手順2:「マクロ」実行画面を開く

手順3:マクロを選択して実行

手順3:マクロを選択して実行

◆注意点
・出力されたシートがすでに存在している状態でも、そのシートに上書きしてマクロを実行できる仕様にしています。
・別のリーグ用に「対戦履歴」シートをコピーして使う場合は、マクロが実行できない(コードの内部で「対戦履歴」シートを指定しているが、コピーするとシートの名前が変わることに起因)ため、新しくExcelをコピーして使うか、コード内部のシート名を置換して変更してお使いください。
・一般的な注意点として、マクロを実行する際は、常に元のデータのバックアップを取ることが推奨されます。これにより、万が一のデータ損失や上書きが起こった場合でも、元のデータを復元できます。

4.ツールの各シートの説明

今回作成したツールで使用する各シートについて説明します。
所々ChatGPTの作文が含まれていますがご了承ください。
①全国図鑑

「全国図鑑」シート

これはリージョンフォームを含む1078種類のポケモンを、タイプと一緒に記載したシートです。なんと、観賞用でパーティ分析には使いません。
自動補完オートコンプリート機能やおすすめのタイプを勧めてくれる機能などを盛り込もうとしましたが、色々あって保留としました。
正直、自分でもびっくりしたくらいに、作成時間がバリかかりましたので、誰かに褒めていただきたい所存です。

②タイプ相性表

「タイプ相性表」シート

こちらは、ポケモンのタイプ相性表をポケモンGOのバトルリーグの法則に適応させたものです。
(抜群:1.6倍、いまひとつ:0.625倍、効果なし:0.39倍)
こちらも現在の分析ツールでは使わないシートです。すみません。

③対戦履歴

「対戦履歴」シート

お待たせいたしました。本ツールの分析の起点となるシートです。
こちらに皆様の対戦履歴を記入することになります。
A~C列にはポケモン名を入力します。
ただし、A列には初手のポケモンをご入力ください。
D列には勝敗をプルダウンから選択してご入力ください。
E列には「甘える型」、「水鉄砲型」など好きな備考をご入力ください。
私の気遣いとして、シャドウを表す「S」や空白セルは自動的に判別してくれる機能を設けました。これにより、「SAキュウコン」と「Aキュウコン」は同じポケモンとして扱われ(シャドウ数は別途カウント)、空白は無視されるようになります。

④初手率分析

「初手率分析」シート

ここから説明するシートはすべてマクロの出力結果となります。
「初手率分析の実行」マクロを実行すると、ポケモンGOのバトルで最初に使われるポケモン(初手ポケモン)のデータを分析します。
具体的には、初手ポケモンの出現回数を数え、重複を除去して初手率を計算し、ランク付けします。
さらに、表の見た目を整える機能も含まれています。
これを用いることで、「環境に応じて適切な初手ポケモンを選ぶこと」が可能になります。

⑤使用率分析

「使用率分析」シート

「使用率分析の実行」マクロを実行すると、ポケモン全体の使用回数を分析し、それに基づいて使用率とランクを算出します。こちらも、表の見た目を改善する機能が含まれています。
これを用いることで、「環境に多いポケモンを正しく認識でき、有効なパーティコンセプトの作成」が可能になります。

⑥勝率分析

「勝率分析」シート

「勝率分析の実行」マクロを実行すると、各ポケモンの出現回数と勝利回数を計算し、それに基づいて勝率とランクを算出します。また、初手ポケモンに加えて全体ポケモンの分析機能もあり、より詳細なデータを提供します。
なお、「対戦履歴」シートの勝敗が記入されている行のみを参照しているため、すべての行で勝敗が記入されていなければ出力されません。
これを用いることで、「あなたが得意とするポケモンと苦手とするポケモンが明確になり、適切なパーティ修正」が可能になります。

⑦相関分析

「相関分析」シート

「相関分析の実行」マクロを実行すると、ポケモンの出現パターン間の関係を調べます。これは、ポケモンがどのように一緒に使われるか、または特定の対戦相手に対してどのポケモンが選ばれるかが可視化されます。
数字は単純化した相関係数を示しており、0から離れるほど相関があるといえます(正の相関なら一緒に組まれやすい、負の相関なら組まれにくい)。
これを用いることで、「バトル中の相手の裏読みや、パーティ構築の上で想定敵をポケモンのペアで考えること」が可能になります。

5.ツールの入力規則

本ツールのポケモン名の入力規則として以下を推奨しています。
・A:Alola (アローラのすがた) 
・G:Galar (ガラルのすがた)
・Hi:Hisui (ヒスイのすがた)
・P:Paldea (パルデアのすがた)
・S:Shadow(シャドウポケモン)
・(空白):観測できなかったポケモン

◆注意点
・シャドウポケモンを記載する場合は、ポケモン名に「S」を含めてください。「S」以外はシャドウポケモンとして判別されません。
なお、上記の英文字を名前のどこに入れるかについては、決まりはありません。しかし、「Aキュウコン」と「キュウコンA」は別のポケモンとして認識されるのでご注意ください。
・同様に、ポケモン名に漢字などを含む場合、例えば「SAキュウコン氷」と「SAキュウコン甘」は別ポケモンとして扱われるのでご注意ください。
・相手が降参してラス1が見れなかった場合などはポケモン名を「空白」(何も入力しない)にしてください。空白にすればそのセルを無視することで、正確な計算結果が得られるようにしています。「ー」などで入力すると「ー」というポケモンが存在するように扱われてしまいます。
・同じ行に重複するポケモン名を入力しないでください。同じパーティに重複するポケモンが入ることを想定していないため、予想外の出力となる可能性があります。

6.おわりに

ここまで読んでいただき、ありがとうございます。
ツールを活用して、自分に合ったパーティを組んでいただけたら幸いです。
本記事を読んで、なにか不明点や追加してほしい機能などあれば、
是非ご連絡ください。
皆様と一緒に充実したパーティ考察ができれば幸いです。

次のステップとしては、「6-3」のパーティ分析ツールを考えています。
こちらは人間が頭で考え、ポケモンを選択するわけですから、
そこには何かしら心理的な法則が見出せるわけで、「3-3」よりもパーティ分析の価値が高いといえるでしょう。
その法則が認識できれば、勝率はすごく高くなると思うのです。
所詮、やっていることはじゃんけんに近いのですから。
皆様が普段やっている分析作業を、より正確に、効率的にできるようにお手伝いができたら幸いです。

とはいうものの、生まれてこの方、原作を除いて「6-3」というものをやったことがないので、今後は時間を作って挑戦してみたいなと思ったり。
他にもアイデアが浮かんだら、いろいろ作ってみようかなと思います。

良いポケライフを!!

有識者の方、6-3のイロハを教えてください…

7.謝辞

本取り組みの遂行にあたり、多大な支援と貴重な洞察を提供してくれたOpenAIの言語モデル、ChatGPTに深く感謝申し上げます。ChatGPTは、プログラミングに関する複雑な問題解決やアイデアの発展において、不可欠な助言者でありました。また、その迅速かつ的確な回答は、本取り組みを効果的に前進させるための重要な一助となりました。この場を借りて、OpenAIチームとChatGPTの支援に対し、心からの謝意を表します(by ChatGPT)

この記事が気に入ったらサポートをしてみませんか?