ポケモンスカーレットバイオレット自動化
この記事では、
ポケットモンスタースカーレットバイオレットの面倒な作業をマイコンArduino Leonardoを用いて自動化する方法について記事にします。
当初目標としては孵化厳選を自動化し色違いポケモンを量産することで、ここまでは完了しており、あとは記事にするところです。
予定の章立てとしては、次のとおりです。
01概要・・・本稿
02導入編
03以降ポケモン自動化のハード構成、サンプルプログラム、と続きます。
各記事へのリンクは本稿の最後にその都度追記してまいります。
それでは01概要です。
01 概要
はじめに、経緯と背景
わたしの今までの経緯と背景ですが、
もう20年以上前から、ポケモンシリーズは初期から全作、かなりプレイしてきました。
ポケモンには「色違い」と言われる通常と色の違うポケモンがごく低確率で出現します。
わたしの人生初の色違いポケモンはサンムーンのバリヤードでした。
3つしか持っていなかったモンスターボールを投げ、捕獲できたときは大変嬉しかったのをよく覚えております。
時代も移り変わり、ハードはswitchになりましてソードシールド、ダイヤモンドパールリメイク、スカーレットバイオレット、
と、また全てプレイしています。
時代とともに家庭環境もかわり、子供達ともポケモンを遊んでいます。
レアな色違いポケモンは、子供達に人気なんですね。
そこで、趣味にしていた電子工作(別の機会に記事にします)で使っていたマイコンのArduinoLeonardo互換チップを用いてUSBコントローラの信号を利用し色違い孵化厳選を自動化し、
色違いポケモンを量産し、近所の子供たちに配布してきました。
ソードシールド、ダイヤモンドパールリメイク、スカーレットバイオレット、全て自作のコードで色違いを量産しております。
その方法について共有したいと思います。
この手の自動化は、検索するといくつかのブログがヒットしますので、
そちらも参考にしてください。
ポケモニットさん、ますたーの忘備録さん、苔むした日記帳さんあたりがお勧めです。
わたしのやり方は、ほかにない便利さがあるのですがハードウェアも作る必要があります。
※一応電子工作なしでも動くよう考えてコードは公開します。
必要なもの
当初の段階で必要なものになります。
01ArduinoLeonardo互換チップ、わたしはProMicroを用いています。
02パソコン、Windowsを用いています。
03switchとゲームソフト
以上になりますが、私のコードはハードウェア構築も必要になるので、
04そのほか電子工作部品等、後述します。
ArduinoはKKHMF ProMicroを使っています。
おおまかな流れ
次の3ステップになります。
01Arduinoの開発環境ArduinoIDEの導入
02switchUSBコントローラとしての環境導入
03自動化コード(スケッチ)の記述、実行
これから複数回に分けて記事にしますので、
参考にしてください。
おわりに
ひとつ注意点があります。
わたしのやり方で色違い厳選を自動化すると、
ほとんど手間をかけずレアな色違いポケモンを大量に入手できてしまうため、
色違いポケモンのありがたみが減ってしまうと思います。
実際うちの近所では、子供達に配布しすぎまして、子供らも欲しがらなくなりました^^
それでは次の02導入編に続きます。
02導入編
01に続き本章ではポケモンの面倒な作業を自動化するための導入編になります。
「ポケモン 自動化 Arduino」などと検索するといくつかブログがヒットしますので、詳細はそちらも参照ください。
こちらでは導入の手順、概要と他にない行き詰った時の対処法を載せます。
必要なもの
まず必要なものですが、マイコンArduinoのLeonardo、になります。
マイコンArduinoにも色々と種類がありますが、switchコントローラの信号ライブラリが公開されているLeonardoを用います。
検索するとUNOR3などでもポケモンを自動化している例もあるようです。
後述する記事では電子工作で素子を追加していきますので、Leonardo互換チップのProMicroをお勧めします。
Leonardoより小さく値段も安く購入できます。
互換でなくLeonardoでも大丈夫ですが、後述の記事での電子工作ではジャンパワイヤなど用いて若干違った方法となります。
※ProMicroのチップについているマイクロUSB接続口は大変もろく、取れやすいです!
取れてしまえばオシマイですので十分注意してください。
わたしはポケモン以外にも使うためKKHMFのProMicroセット商品購入しており、10個以上使っています。
次にコードを書き、コンパイルし、マイコンに書き込むためのパソコンです。
わたしはWindowsパソコンを用いています。
ArduinoIDEの導入とライブラリのインクルード
説明は他のブログに任せて手順になります。
パソコンにArduinoIDEをインストールします。
Windowsの場合は検索してArduino公式サイトからインストールしてください。
MicrosoftStoreからのインストールだとWindowsAppsとしてインストールされ、ボード情報の編集のためのアクセス権限が得られません。
次にポケモニットさん配布の「NintendoSwitchControlLibrary」を導入します。
Githubからダウンロードしてきます。
CodeのDownloadZipですよ^^
ライブラリは基本的にArduinoのライブラリを参照するフォルダ下に置きます。
おそらくPCのユーザーフォルダ内、ドキュメント下、ArduinoフォルダにLibrariesフォルダがあるので、その中に置きます。
多層階層になっていても大丈夫です。
その他のライブラリをインクルード(導入)してください。
方法は、インストールしたArduinoIDEを立ち上げ、スケッチタブのライブラリをインクルード、です。
Adafruit_GFX.h
Adafruit_SSD.h
Adafruit_BusIO_Register
まだ使いませんが(他のブログ等でも使っていませんが)わたしの後述の記事にて使いますので、これらをインクルードしてください。
次にIDEのツールタブのボードをArduinoLeonardoにして、そのメニュ上部のボードマネージャから、
ArduinoAVRBoardsのバージョンをバージョン選択から1.8.3にダウングレードしてください。
※これをしないと、スケッチ(コード)をコンパイルしマイコンに書き込んで正常に動作してもswitchが反応してくれません。ありがちなエラーとなります。
ボード情報の修正
次にArduinoIDEをインストールしたフォルダ内の\Arduino\hardware\arduino\avrを見つけて、
Boards.txtを編集します。
マイコンにUSB機器としてのスケッチを書き込んだ際にswitchコントローラーとして認識してもらうIDとなります。
Windows標準のテキストエディタ等では見えないものの改行コードが改変されてしまったりし、うまく動作しなくなるのでサクラエディタ(フリーソフト)等を用いる方が多いようです。
「leonardo.vid」を検索し、
leonardo.vid.0=0x0f0d
leonardo.pid.0=0x0092
leonardo.vid.1=0x0f0d
leonardo.pid.1=0x0092
leonardo.vid.2=0x0f0d
leonardo.pid.2=0x0092
・
・
・
というように修正してください。
「leonardo.build.vid」
「leonardo.build.」
も検索し
leonardo.build.vid=0x0f0d
leonardo.build.pid=0x0092
としてください。
※もしアクセス権限がなく書き換えられない場合はアクセス権を変更するか、WindowsAppsにインストールしてしまった場合は最悪ArduinoIDEのインストールフォルダごとProgramfiles外に出してしまっても構いません。パス等はあたってないようです。もしくは再度Arduino公式サイトのインストールパッケージからアクセス権のあるフォルダ(WindowsApps外)にインストールしてください。
また、ボード情報が格納されているフォルダは、バージョンによって場所が変わりますので、探してみてください。
ここ重要です。
おわりに
これで導入および設定は終了です。
続いて実際に自動化するスケッチ(コード)を動かす、
03金策学園自動化になります。
ArduinoIDEでマイコンにスケッチを書き込む手順もそちらに記載します。
03金策学園戦自動化
今までの記事01,02とで環境の導入をしてきました。
ここから実際の自動化コードを書き、switchを自動で制御していきたいと思います。
今回自動化するのはストーリークリア後の学園戦を自動で連戦する、というものです。
これにより、手作業することなくお金が無尽蔵に得られるようになります。
大体丸一日ちょいで999万9999円となります。
連射コントローラーでも話題になった金策ですが、わたしの方法をとればテラスタルもできますし、手持ちポケモンが6体いても大丈夫ですので、自動でレベリングもできます。
ここから先は
¥ 465
この記事が気に入ったらサポートをしてみませんか?