技スペが足りない

主にポケモンとかゲームの情報をつぶやきます

【SV自動化】自動孵化プログラム

経緯

今作はかがやきパワーレベル3を使った野生色違い厳選が主流ですが、御三家やイベントのリザードンやエースバーンなど、孵化でしか手に入らない色違いもいます

また、スパイスの入手難易度や、自動化という面ではまだまだ孵化厳選も需要があるということで作成しました

ソースコード

drive.google.com

今までと同じように

「hatchEgg」フォルダをTempleteフォルダに

「SV_AutoHatch_reset.py」ファイルをImageProcessingOnlyフォルダに

置きます

プログラムの挙動

1.サンドイッチ作成

2.タマゴ30個(以上)回収

3.オリーブチャレンジ場へ移動

4.孵化

5.色違いがなければリセット(あればプログラム終了)

これを色違いが出るまで繰り返します

多くの孵化厳選プログラムではゼロゲートで行われているのですが、ゼロゲートはたまにメェークルが湧き出て事故ることが多いので、今回はセルクルタウンのオリーブチャレンジ場を選びました

オリーブチャレンジ場の問題点としては、その場でキャンプができないというのがあるので、ボックスの空きに応じてタマゴを割るのではなく、1BOX割って色が出なければリセットするという方式を取ることで解決しました

こちらのほうが確率が下がるという話も耳にしましたが、今のところ問題なく色違いも生まれていますし、動作の安定を優先するためにこちらを選択しました

事前準備

事前準備はプログラムの中に書いてありますが、今回は少しややこしいので解説していきます

  1. ニックネーム設定、オートセーブOFF

2.セルクルタウンのオリーブチャレンジ場所横でレポート

画像の位置を参考にしてください

開始位置

コート寄りで、ピクニックができるところなら多少ずれてても問題ないですが、斜めを向いていると孵化時にオリーブボールに当たるため、コート面から垂直に逆方向(日本語あってるかな?)向いたほうがいいと思います(当たっても中に野生のポケモンがいないので問題ないとは思います)

3.ボックス表示は「ジャッジ」

ジャッジ

表示が違うと画像認識がうまくいかずに途中で止まってしまいます

4.スーパーピーナッツバターサンドの材料を準備

5.スタート時手持ちに、孵化要員1匹(Lv.100)+Ditto(JPNの場合は要差し替え)1匹+親ポケモン1匹(かわらずのいしを持たせる)+タマゴ未発見ポケモン3匹

1/15追記

仕様を勘違いしていましたが、手持ちに空きがあってもタマゴはボックスに送られるみたいなので、手持ち3匹でも問題ないです

手持ち配置

6.空のボックスを2つ用意し、右側のボックスに合わせておく

ボックス配置

7.影響があるかは不明ですが、機内モードに設定

あとはプログラムを開始すれば、色違いが出るまで繰り返してくれます

追記(1/13)

機能追加

下記の機能を追加しました

①色違い発見後にすべてのタマゴを孵化して色違い以外逃がす機能

関数の最初にある「release_flag」を1にしておくと、色違い発見後も残ったタマゴを孵化し、色違い以外を逃がす処理を行います(デフォルトでONです)

孵化余りが不要な方は是非お使いください

間違えて色違いを逃さないよう、実行前に色違いマークを認識するかテストを行うことを推奨します(色違いを間違えて逃してしまった場合でも責任は取れません)

また、OFFにしている場合でも、30個のタマゴすべてを孵化するように変更しています

こちらの仕様が好ましくない方はアップデートをお控えください

②逃がす際に、特定の個体値ポケモンを残す機能

上記機能を実行中に、下記の個体だけ逃さないようにすることができます

  • A0
  • S0
  • A0S0

上記と同じように、各フラグをONにしていただくと動作します(デフォルトでONになっています)

他のC0などに関しては、現状需要がかなり少ないのと、私の方で画像を準備できなかったため非対応です

今後需要が出てきたら追加を検討します

補足

孵化後の個体をボックスにまとめて移動する際、にLINEメッセージを送信するようにしていますが、入力漏れで数回余分にカーソル移動を行っています

そのため、LINEメッセージが複数回送信される場合が多々ありますが、そちらが気になる方は、カーソル移動の回数を修正してください

「print("★色違い発見!★")」を出力しているところのfor文の回数です。現状2回多めに移動しています

まとめ

以前にも書いたかもしれませんが、SVは仕様上ボタン入力を受け付けないタイミングが存在しているらしく、それが結果的に自動化対策として機能しており、開発者が苦しめられています

今回は一挙手一投足に画像認識を取り入れることで、できるだけ止まらないように工夫しております

サンドイッチ作成やピクニック内でのバスケットへの移動など、画像認識を取り入れるのが難しいところもありますが、その際はリセットしてやり直すことで止まらずに動き続けるような仕組みにしています

効率は少し落ちますが、深夜や仕事中に動かすことを考え、安定性を重視した結果、かなり納得の行くプログラムができました

その分画像の差替が必要となる箇所が増えていると思いますが、ご容赦ください

これの欠点として、色違いが出たあとに未孵化のタマゴが残ってしまう、という問題がありますので、それらを解決する回収済みタマゴの孵化プログラムも近日公開しようと思います

1/13の機能追加で、孵化余りを残さないように改良しました

皆さんもたくさん色違いを孵化させてください

今回も最後まで見ていただきありがとうございました