[Arduino] BDSPアルセウスの半自動周回プログラムを組んでみた話とか
お久しぶりです。
1か月ぶりぐらいにnoteでポケモンの記事を投稿します。
ここ最近、私はVCセレビィの色違い厳選をやっていたり、諸事情で色々あったのですが、前回に投稿した記事の続きでも書こうかなと思います。
前回、私は4632回、BDSPの方でアルセウスの色違い厳選をして、結果、出なかったという話を書きました。その後、実は追加で約1000回ほど厳選をしてまして、合計5476回、試行回数を重ねたのですが、やっぱり出ませんでした。
そこから私はアルセウスの厳選をしていなかったのですが、とある方の記事を読んで半自動で色違い厳選が出来る方法を思いつきました。
ちなみに、本気でBDSPアルセウスを厳選したい場合、画像キャプチャーを用いて乱数調整を使用すれば簡易的に出せますし、何なら画像認識有りのプログラムを使えば完全自動で厳選が出来ると思うのですが、今回は半自動という方法を紹介することにします。
まずはプログラムのコードを先に紹介します。以下のコードをコピペしてボードに書き込めば、おそらく半自動でアルセウスの色違い厳選が出来ると思います。ただ、私の環境がSwitchLiteとパッケージのROMを使用しているため、同じように出来るかは分からないです。DL版だと読込速度も上がるでしょうし、性能の良いSwitchならロード時間が変わるので、もし試したい方がいればロード時間等については調整してもらえればなと思います。
#include <auto_command_util.h>
// アルセウスの手前でセーブしておく
void setup(){
// 最初の数回の入力はswitchが認識しない場合があるので、無駄打ちをしておく
pushButton(Button::B, 500, 10);
}
void loop(){
// 上に行く
pushHatButton(Hat::UP, 100, 1);
// 最速で逃げる
delay(14000);
pushButton(Button::A, 100, 1);
delay(16300); //16.0~16.3秒の間
pushHatButton(Hat::UP, 100, 1); // 色違いのとき光るエフェクトによる遅延が生じるため、ここのコマンドがスキップされる
pushButton(Button::A, 100, 1); // 色違いのとき光るエフェクトによる遅延が生じるため、ここのコマンドがスキップされる
delay(10000); //色違いに気が付くラストチャンスの秒数区間
// HOMEからゲームを再起動する
pushButton(Button::HOME, 1000);
pushButton(Button::Y, 100, 1);
pushButton(Button::A, 2000, 1);
pushButton(Button::A, 100, 1);
delay(20000); //ロード時間
pushButton(Button::A, 1000, 1);
pushButton(Button::A, 1000, 1);
pushButton(Button::A, 1000, 1);
pushButton(Button::A, 1000, 1);
pushButton(Button::A, 1000, 1);
delay(12000); //ロード時間
}
このコードについて、軽く説明を残しておきます。
要は色違いが発生した際に、光るエフェクトが出るじゃないですか。そのときって、若干の遅延が生じるはずなんです。そのラグがある際は色違いでない場合は逃げるコマンドを押すはずが、コマンドが無駄打ちされるという現象が起きます。
この方法を用いて、実は剣盾で色違い厳選が出来るらしいのですが、それを応用して、コードを書いてみたという感じです。
色違いが出た場合は逃げるコマンドがスキップされて、戦闘画面が継続されるわけです。戦闘画面が継続されているか、色違い効果音を聞いているか、逃げるの効果音が出ないことを聞いているかの3パターンを耳で判別が出来ます。何なら、途中のカットモーションで目視でも確認は出来ます。
ただ、問題点があって、このプログラムは寝ている間や放置している際は色違いが出てもリセットされるため、意味がないという点が問題点になります。他で作業中に耳が空いているか、ちょっと画面を横目で見れるような状態でない限り、色違い厳選が出来ないかなというのが注意点です。
ただ、私、ここまで書いておいて、このプログラムを用いて、色違いアルセウスを出していません。なので、今回も机上論になります。ただ、実際にプログラムを組んで、今、記事を書きながら半自動でアルセウスの色違い厳選が出来てはいますので、ループに問題がないことは検証済みです。
あとは書くこともないので、今回の記事は以上とさせてください。
あと、追記なのですが、Switch 2が遂に発売が決定されることになりましたね。実は私、今まで、Switchを所持していなくて、Liteは持っているのですが、Switchを持っていなかったのですが、今回、2の方を買うことに致しました。なので、それで今後はYouTubeとかで動画配信とか動画公開をしていけたらなとは思ったりもしてますが、やるかどうかは気が向いたらになると思います。
ちなみにこのコードを導入して、何か問題が起こったとしても、私は何の責任も負いません。皆さんが判断して、適当にやってください。そこはどうかよろしくお願いします
{追記}
あのあと、色違いアルセウスをこの方法を用いて、出すことに成功したのですが、捕獲に失敗しました。色違いによるラグが生じるため、逃げるコマンドが無駄打ちされることを確認できたと思います。
捕獲に失敗した原因は、「癒しの願い」のPPをカウントし忘れていたことでした。私のような間違いが起きないことを広めるためにも、適切な対処方法メモを記事に残しておくことにします。
{捕獲時の注意点}
癒しの願いのPPは10である
癒しの願いのPPに気を付けながらカウントしておくこと
行動表:数字は癒しの願いの使用回数
⓪. 癒しの願いを使うまで待つ(虫の抵抗, スペシャルガード)
①. 相手が癒しの願いを使う
②. バルビートでアンコール
③. ロトムに交換
④. トリックでこだわりメガネを押し付ける
⑤. ムックルに交換
⑥. がむしゃら
⑦. ハピナスに交換
⑧. ヨクアタールを使用...A
⑨. 投げつける (PPが10回復する)
①. 歌う
①. リサイクル
②~⑧. 歌う (相手が起きた際に打つ)
⑨. 投げつける (PPが10回復する)
①. 歌う
①. リサイクル
②~⑧. 歌う (相手が起きた際に打つ)
⑨. 投げつける
①. 歌う (PPが切れたらハピナスに交換、Aからループ)