ポケモンSV ver1.1.0 グリッチ自動化

2022/12/17

Arduino Leonardo Switch グリッチ ポケモンSV マイコン

サンプル動画

わざマシン3種類を2個ずつ増やしてます

動作確認内容

このバージョンについてはメイン処理は3000回ほど回して動作確認済
旧バージョン含めると10000回は回しました
スリープ処理やアイテム持ち替え処理はループ外の処理なので試行回数が少ないです

動作確認環境

  • Switch初期型
  • バイオレットv1.1.0
  • KOOKYE Pro Micro ATmega32U4 5V/16MHz Module Board
  • メッセージ表示速度は「はやい」(前提条件)
  • コントローラーは外す(前提条件)
  • テレビモードで実行&出力解像度を480pに設定(処理負荷軽減による入力漏れ予防策)
  • ボックス1は空にしてカーソルを合わせておく(処理負荷軽減による入力漏れ予防策)
  • 場所は灯台(処理負荷軽減による入力漏れ予防策)
  • 手持ちは1匹目メタモン(仮にわざマシンが使用されても覚えられず失敗するため)、2匹目ミライドン
  • バトルチーム1に4匹登録(要否不明)

機能説明

  • 周回速度
    1周16秒~17秒
  • デフォルト設定
    ループ上限は998回
    アイテム1種類がループ対象
    ※ループ回数=入手個数の上限
  • ループ上限変更する場合、グローバル変数「LoopCnt」を変更してください
  • アイテム複数種類増殖設定が可能
    ※わざマシンとボールなど別カテゴリは同時増殖不可
    1.【ゲーム内】増やしたいアイテムをお気に入り登録しお気に入り順にソート
     ※わざマシンはタイプ別にしておくと進捗状況が分かりやすくなって良い
    2.【プログラム】コメント欄を参考にグローバル変数「Num」の値を変更し増やしたいアイテムカテゴリを指定
    3.【プログラム】グローバル変数「LmtCnt」を種類×増やしたい個数(グローバル変数「LoopCnt」)に変更
    例:わざマシン3種類を2個ずつ増やしたい
      わざマシンを2種類お気に入り登録※1種類は○ライドンに持たせておく
      LoopCnt = 2
      LmtCnt = 6
  • Endメソッドのコメントアウトを解除すれば処理終了後スリープします
    後述の理由からデフォルトでオフにしてます
【20221217 20:30頃追記】
Endメソッドがオフになっている場合、グローバル変数「LmtCnt」の設定は無意味です
グローバル変数「LmtCnt」はEndメソッドで処理終了判定に使用される変数のためです

デフォルト(Endメソッドがオフになっている)の場合、お気に入りに指定したアイテムのループが終了すると、その次のアイテムが無限ループの対象になります
例:わざマシンのお気に入り指定したアイテムのループが終了した場合、わざマシン001「とっしん」の処理が無限ループする
→デフォルト(Endメソッドがオフになっている)の状態で長時間放置する場合には、お気に入りに多数のアイテムを指定しておくか、ループ回数そのものを多めに設定しておき、手動で無限ループを止めることを推奨します

特記事項

基本的に入力漏れにより動作が不安定なので自己責任でお願いします
デバッグ中では未発生ですが、最悪の場合大事なポケモンを自動で逃しレポート書かれます
バトルチームに登録し逃がしづらいように対策しておくと良いかもしれません

確認事象

以下、想定外の事象が発生することを確認しています

軽微な事象については対応優先度低いです
  • 軽度(無害)な事象
    1.ボックスずれが発生し32→1まで32回無駄にボックス周回する
    →ボックスを開く操作後のディレイを長めにとれば発生しなくなるかも?(2000→2200に変更済。変更後検証中→発生することを確認。対応案検討中)
    2.ボックス1や2の名称変更しようとする(結果的にはしない)
    3.ミライドンや1匹目のポケモンのもちものを変更しようとする(結果的にはしない)
重度な事象については対応優先度高いです
  • 重度(有害or未知数)な事象
    1.【暫定対応済】スリープ処理の途中で入力漏れが発生し、SwitchUI上でループが再開する
    →ゲーム内から抜けて操作するため、入力漏れが発生した場合、最悪e-shopで決済する可能性を考慮しデフォルトでオフにしました

以下、旧バージョンで発生していた事象です
現バージョンは旧バージョンを踏襲しているため、同様の事象が発生することが見込まれます
1ループにつき1回リセット処理挟むことで発生頻度は低くなっている想定ですが記載しておきます
・軽度(無害)な事象
たまに以下の事象が発生することを確認していますが私の環境では自動復帰しますので放置を推奨します
確認しているだけで以下です
1.○ライドンにマークつけようとする(結果的にはしない)
2.バトルチームの強さを見る
3.ボックス1や2の名称変更しようとする(結果的にはしない)
4.レポートを書く
・重度(有害)な事象
影響でかいので対応検討中
1.【対応済検証済】設定変更される(メッセージの表示速度「はやい」から変更された場合、以降の処理が上手く行かないことが想定される)
恒久対応案実施済検証済:リセット処理を1回ごとにかける
2.【対応済検証済】バッグを開きアイテムを持ち替えてループを続行する場合があります!
→恒久対応案1実施済検証済:リセット処理を1回ごとにかける
→恒久対応案2実施済検証済:リセット処理順を変更しバッグにカーソルを合わせず処理を続行する(リセット処理追加前は発生していないため、恒久的な対応となる想定)

配布URL