「無限ワット」自動周回プログラムの導入方法

「無限ワット」とは、ポケモンソード・シールドで「レイドバトルの募集中に時計設定を変更しても時計変更ペナルティを受けず、巣の確認時に貰えるワットが再び手に入ること」を利用したワット稼ぎの事です。
これはそれをマイコン制御によって全自動で行う手順についてまとめたものです。
マイコン制御が何か分からない場合は・・・これは「マイコンという機械をProコンとしてSwitchで使えるようにして、さらに特定のボタン入力を繰り返す機能を与える」という手順についてまとめたものです。・・・で分かってもらえるでしょうか?

f:id:error_astray:20191219233851j:plain

用意するもの

・PC

Windows10/7搭載パソコン(今回Windows7SP1を使用)

Arduino UNO R3の入手(購入)

他にも利用できるものはありますがここではこれらとします。

互換機ですがこれで問題なし。USBケーブル付き。約1100円


こちらがオリジナル。USBケーブル別売り。約3300円


基盤剥き出しなのであると安心です。約200円

・USB変換コネクタ(USB Type-AをType-Cに刺せるようにする為)

SwitchLiteでは必須です。通常Switch付属のドックでも可能ですがタイミングずれが起きる問題や、長時間使用での放熱が心配なら利用した方が良さそうです。
ただの変換コネクターだと電池が切れてしまうので、充電もできるタイプを推奨。下記のスタンドタイプでなくいわゆる中華ドックでも多分大丈夫です。


USBハブが1ポートのみ。約2000円

USBハブが2ポート。4ポートの上位版もある。約3000円/約3600円

・自動プログラム

今回は「時渡り無限ワット自動周回プログラム(https://drive.google.com/file/d/1cmxYoadyxJma8MpBF6B14xdPXQip72Zg/view?usp=sharing)」をダウンロードします。
ZIPファイルを展開し、中にある「snowball-thrower」フォルダを今回はCドライブに移動します。展開して出てくるファイル名が文字化けしてても問題ないです。
※本来コンパイル作業で生成される「Joystick.hex」が入っているのでコンパイルは不要です。
マイコンによっては"snowball-thrower"フォルダの「makefile」の"MCU = atmega16u2ARCH"を書き変える必要がある場合あり)

・dfu-programmer

dfu-programmer公式(http://dfu-programmer.github.io/)にあるDownloads項目の「project files」に貼られているリンクを開き、「dfu-programmer-win-0.7.0.zip」をダウンロードします。
※展開すると「dfu-prog-usb-1.2.2」「dfu-programmer.exe」「dfu-programmer.html」が入っています。

導入手順

マイコンの接続・ドライバの導入(…記録不足で少々雑ですみません…)

参考:dfu-programmer で Arduino UNO の ATmega16U2 に Windows から書き込む(https://another.maple4ever.net/archives/2380/
マイコンをUSBケーブルで接続し、下画像の赤丸箇所を金属でショートさせて、すぐ離します。
f:id:error_astray:20191217003533j:plain
(ここで「ドライバが見つからなかった」と表示が出たなら先ほど展開したフォルダの「dfu-prog-usb-1.2.2」を指定すれば完了します。)
PCの「コントロール パネル\ハードウェアとサウンド\デバイスとプリンター」を開き「ファイル」→「デバイスマネージャー」を起動します。
「不明なデバイス」があるので右クリックで「ドライバーソフトウェアの更新」を選び、先ほど展開したフォルダの「dfu-prog-usb-1.2.2」を指定します。すると「ATmega16U2」として認識されるようになります。

マイコンへの書き込み

まず「dfu-programmer.exe」を「C:\snowball-thrower」フォルダにコピーします。
「joystick.hex」があるフォルダ(C:\snowball-thrower)で「Shift+右クリック」をしてメニューを出します(下画像)。
f:id:error_astray:20191217004105p:plain
「コマンドウインドウをここで開く」を選び、コマンドプロンプトを起動します。
"PowerShell"と入力して「Enterキー」を押してPowerShellに切り変えます。(右クリックで貼り付けができます)
".\dfu-programmer.exe ATmega16U2 erase"と入力して「Enterキー」を押して初期化し、
".\dfu-programmer.exe ATmega16U2 flash Joystick.hex"と入力して「Enterキー」を押して書き込みます。
f:id:error_astray:20191217004334p:plain
上の画像通りにいけば書き込み成功です。PowerShellを閉じて、マイコンをPCから外します。

使用方法

まずHOMEメニューの「設定」→「本体」→「日付と時刻」の「インターネットで時間をあわせる」を"ON"にしておきます。
そして巣に「ねがいのかたまり」を入れて、ワットを獲得し、主人公を巣の前に待機させまする。
メタモン出る巣の場所などの野生ポケモンと遭遇しうる場所は避けること)
USBポートにマイコンを接続すると自動周回が始まるのでコントローラーは操作しないor外してOFFにしておきます。(シャッターや音量ボタンは触っても問題ありません)
終了したくなったらUSBポートからマイコンを取り外します。
(長時間放置するのであれば、HOMEボタン長押しメニューで自動明るさ調整"OFF"、明るさ&音量"最低(左端)"としておくとよいでしょう。)

メモ:
今回使用しているプログラムでは「現在と1年後」を繰り返す仕様となっています。
1サイクル約30秒で2000Wなので、1時間で24万W、4時間10分で100万W得られる計算となります。
Nintendo Switch Onlineの契約が必要ですが、ランクマッチを利用すると発生する「時計変更ペナルティ無効」を利用した方式はこの1.5倍の速さ(約20秒)で出来るので利用可能であればそちらをおすすめします。

補足:プログラムの書き変え

他のプログラムに書き変えたい場合、マイコンを再びUSBケーブルで接続してショートさせて離し、上記の「 マイコンへの書き込み」を行います。※ドライバを入れ直す必要はありません。

貯めたワットの活用方法

別記事にする予定。
ざっくりいうと「無限ワット(160分or54分で32.5万W)→穴掘り兄弟(約650回でカセキ150ペア分入手)→カセキ再生(A連射)→ミラクル交換(人力)→IDくじ(自動でポイマ&マスボ量産)」といった流れです。

蛇足「無限ワット」は修正されるのか?

答えは「修整されても出来る」です。よくガセツイートを見かけますが仮に配信されても本体設定から「更新データ」を削除してプレイすれば可能だからです。今後販売されるものが全て修正済みで販売されたとしても既に200万本以上出ているので修正前のものの入手に困ることは無いでしょう。
ただし、ランクマッチを利用の方はアップデートしないとオンラインに繋げないので出来なくなる可能性があります。

プログラム紹介

基本的に「言語:日本語、メッセージ:はやい」前提。上二つはドック利用だとタイミングが合わずうまくいかない場合あり。

無限ワット(ランクマ使用)&IDくじ(ポイントアップ/マックス・マスターボール稼ぎ)

watagi氏の公開ページ(https://github.com/watagi/AutoWatt/releases/tag/1.00JD)
「ときわたり自動化」項のAssetsにある「AutoRotomi.zip」がIDくじ、「AutoWatt.zip」がワット回収(1サイクル20秒)になっています。
※使用法はフォルダ内のREADME.mdを参照。

無限ワット(ランクマ不使用)&自動レイド(経験値アメ・ダイマックスアメ稼ぎ)

「ねがいのかたまり」が尽きるまで無差別にレイドに挑んでくれます。
murufon氏の公開ページ(https://github.com/murufon/AutoRaid/releases)。
「AutoWatt」項のAssetsにある「Source code(zip)」がワット回収(1.0.0aw.zip 1サイクル30秒)、
「AutoRaidWithoutCatching」項のAssetsにある「Source code(zip)※▼をクリックして開く」が自動レイドバトルの捕獲しないver(1.0.0wc.zip)、
「AutoRaid」項のAssetsにある「Source code(zip)※同上」が自動レイドバトルの捕獲しないver(1.0.0.zip)となっています。

自動孵化&自動リリース&トーナメント・バトルタワー周回&A連射

Almtr氏の公開ページ(https://github.com/Almtr/Switch-Fightstick/releases)。
「Auto-Pokemon-Breeder v1.0.2」項にある「HatchEggs.hex (Download)」が「自動孵化」。
ワイルドエリアで「タマゴを受け取って孵化」を30匹自動してくれます。
「Auto-Pokemon-Breeder v1.0.2」項にある「(OPTION) LoopTournament.hex (Download)」が「トーナメント周回」。
レアリーグカード入手後にも対応したトーナメント周回を行ってくれます。「どくどくだま」「かえんだま」オシャボ稼ぎに。
「Auto-Pokemon-Breeder v1.0.2」項にある「(OPTION) LoopBattleTower.hex (Download)」が「タワー周回(シングル)」。
ひたすらバトルタワー(シングル)に挑み続けてくれます。BP稼ぎに。
「Auto-Pokemon-Breeder v1.0.2」項にある「(OPTION) ReleasePokemons.hex (Download)」が「自動リリース」。
自動で1ボックス逃がしてくれます。
「Auto-Pokemon-Breeder v1.0.2」項にある「(OPTION) RepeatA.hex (Download)」が「A連射」。
Aボタンを連射してくれます。穴掘り兄弟に使えば「きん/ぎんのおうかん」稼ぎができます。
「Auto-Pokemon-Breeder v1.0.3-pre」項にある「(OPTION) LoopBattleTower.hex (Download)」が「タワー周回(ダブル)」。
ひたすらバトルタワー(ダブル)に挑み続けてくれます。BP稼ぎに。
※書き込み時に”Joystick.hex”をそれぞれ"HatchEggs.hex"等に変えて行う事。
解説はhttps://github.com/Almtr/Switch-Fightstick/blob/master/README_ja.mdにあります。

・バトルカフェ回収・きのみ回収※ほりだしもの回収も可能

アップローダーの為、URL消滅)
ランクマッチを利用した時計変更によるバトルカフェ周回。ヒメリで回復しながら繰り返すのでセットで使います。
ヒメリの生る木の場所はこちら(https://yakkun.com/swsh/item_list.htm?mode=berry#item-154)。
ついでに努力値を下げる木の実やカレーの材料を狙うなら以下の場所がおすすめ。
ザロク(H)&ウブ(D):ナックル丘陵(西(左))
マトマ(S)&チイラ:見張り塔跡地
タポル(B)&リュガ:巨人の腰かけ
カムラ&タンガ:エンジンリバーサイド(東(右))
※ヒメリと当時に狙えないネコブ(A)、ロメ(C)は「7番道路(南東側(右下))/エンジンリバーサイド(西(左))/巨人の鏡池/ナックル丘陵(中央)」で同時に狙えます。