ランクマでAボタン連打して得たもの3つ
先月Aボタン連打してるだけでマスターボール級まで上りました。
そのときに得たものが3つありましたのでブログに残しておこうと思います。
データ配布もあるよ!
①ランクマ自動化の方針
画像認識を使ってひたすらAボタンを押して対戦を進めるプログラムを作成しました。
ただ、ネット繋げてランクマでやると規約違反になる可能性があるので実際には使用するときは注意が必要です。
※動作確認はローカル通信で行いました。
どうやれば自動でこなせるか?を軽くですが書いておきます。
「NintendoSwitch 自動化」などでググればAボタンを押すだけのプログラム自体は簡単に組めると思います。
しかし実際に対戦を進めると十字キーの入力が必要なケースが存在し、スムーズに進めるためには少し工夫が必要です。
そこで十字キーの入力が必要なケースを画像認識で判定し、適切なボタン入力を行って対戦を進めるようにしました。
たとえば、、、
場に出ていた自分のポケモンが倒された後、次に繰り出すポケモンを選択する場面です。
ここでAボタンをずっと押していても先に進めません。
※時間切れで強制選択はされます。
十字キー下を一度押してカーソルを2番目のポケモンに移動し、そのあとAボタンを押して選択を確定させる必要があります。
この画面を画像認識で判定して十字キーを入力するようにします。
判定方法はいくつかありますが、私の場合は上端真ん中「たたかえない」を目印としました。
上の画像が含まれるシーンが出てきた場合は、「十字キー下」⇒「Aボタン」⇒「Aボタン」の順に入力するようにプログラムを組みました。
というような感じで、Aボタン以外の入力が必要な場面を画像認識で判定し、適切なコマンドを決め打ちで入力するプログラムを作ることで自動化することができました。
※規約違反になりそうなのでソフトの配布はしません・・・
②対戦データ
200戦分の対戦データをポチポチ入力してcsv形式でまとめました。
こちらは配布しておきますので、煮るなり焼くなり好きにしてください。
https://drive.google.com/drive/folders/1o17Q1O1heUHoeuMITTxtTqFB39rBCCP3?usp=sharing
データを集めただけだと味気ないのでちょっと解析してみようと思います。
- 被選出率(遭遇回数10回以上に限定)
カイオーガにやられてた印象はあるので、なんとなくの感覚と合ってるのかな・・・?
今回選出だけでなく技の与ダメ、被ダメも記録している(アピールポイント!)のでそちらもなんか解析してみようと思います。
- 与ダメ率
※倒した時の与ダメ率は抜いてます。
「ダイマックスほう」はムゲンダイナ、「じゃれつく」はザシアンが使った技です。
「ダイマックスほう」は、一撃で倒した数は多いのですが、フェアリータイプには無効化されるので、平均化すると伸びないですね。
「じゃれつく」は無効化タイプがないですが、技外しとダイマックス化した相手に対してはダメージ量が伸びないので同じような値に落ち着いたようですね。
今回は1体につき1つしか技を持っていなかったので、対面しているポケモンによって技を切り替えることはできませんでしたが、まじめにやったときに平均値がどれだけ上昇するのか調べてみるのは面白そうです。
こんな感じでとりあえずまとめましたが、解析に必要な情報がそろっているかどうかはわかりません。
最終的に野球のセイバーメトリクスみたいなものを作れるといいなーと漠然と思っています。
誰か考えてください。
③画像認識のための素材
①のランクマ自動化用の画像に加えて、②のデータ入力の自動化ができるかもしれない画像も集めました。
とりあえずで遊んでみた結果が先日のブログの内容です。
まとめ
ランクマでAボタンを連打することによって、3つ得たものがありました。
①ランクマ自動化
→だいたい自動化できたはず
②200戦分の対戦データ
→セイバーメトリクスみたいなのを作りたい
③画像認識のための素材
→対面画像で遊んでみました