ダイマックスアドベンチャーのオシャボ色厳選・ジガルデ色厳選の自動化


glaceonlove.hateblo.jp

 の続きです。

 

Poke-Controllerの画像認識を使ってダイマックスアドベンチャーでのオシャボ色厳選を自動化しました。

 

ジガルデも厳選できます。

 

ソロまたはホストの場合、リセットすると道、出現ポケモンが変わらないことを利用しています。

 

f:id:cq6vum:20201206162503j:plain

サムネ用 

 

現在更新を停止しています。

これからダイマックスアドベンチャーの自動化を行う方はこちゃてす(@kochatece12)さんのプログラムを利用することをおすすめします。

 

目次

 

ダウンロードURL

 

Dropbox - DMAReset

 

Ver.1.0.0

2020 12/6 公開

 

使い方

 

ダイマックスアドベンチャー色粘りの自動化

と大体同じですが、事前準備があります。

 

1.マックス鉱石を貯める

リセットを繰り返すのでペナルティでマックス鉱石がどんどん減っていきます。

貯められるだけ貯めてください。


2.攻略ルートを開拓する

手動でダイマックスアドベンチャーをやります。ボスに勝てるルートを探してください。

※道中のポケモンが変わらないようにダイマックスアドベンチャーが終わる度にリセットして下さい。

 

3.ルートを設定する

プログラムはそのままでは使えないので編集します。

プログラミングの知識は必要ないです。

(Poke-Controllerを導入出来てる人なら大丈夫だと思います)

編集に使うのはメモ帳でもなんでもいいです。(参考画像はメモ帳)

 

ダウンロードしたフォルダ(DMAReset)を開きます。

DMAReset.pyを開きます。

 

f:id:cq6vum:20201206163957p:plain

 

#ここから

 

#ここまで編集

 

と書いてある部分を編集します。

 

調査したルートを通るように数字を変更します。半角で入力してください。 

 

大体見ればわかると思いますが詳しくは後半のサンプルを見てください。

 

道の選び方が少しややこしいので注意してください。

左からn番目というのは選べる道の中でn番目ということです。

 

編集が終わったら保存して、

DMAReset.pyを

Poke-Controller¥SerialController¥Commands¥PythonCommands¥ImageProcessingOnly

の中にコピーします。

 

picturesの中にある画像を全て

Poke-Controller¥SerialController¥Template

の中にコピーします。

 


4.開始

 Aボタンを押したら研究員に話しかけられる位置に立ちます。

Poke-ControllerのCommandから「DMAオシャボ厳選」を選び、Startを押します。

 

 

備考

 

  • リセットした際のペナルティは、2回までなし、3回目はマックス鉱石2個、4回目はマックス鉱石3個……となっています。最大でマックス鉱石10個没収されます。

 

  • ボールはモンボ(モブ)とモンボの一個下(ボス)を投げます

ボス以外が光っても連れて帰れません。(オシャボが減ってしまう&ルートが変わってしまうため)

f:id:cq6vum:20201206164613j:plain

このホエルコとはお別れしました…

 

 

  • 1ターン目に壁貼って2ターン目からは攻撃、といった複雑な事はできないので、壁貼り、積み技、おにび等はNPCに任せましょう。同様に技の対象選択がややこしいので手助け、さいはい等もNPCにやらせましょう。

 

  • マックス鉱石が無くなったら冠の雪原のレイドバトルをするか前ので周回して貯めてください。

DMAを周回するとルートの開拓からやり直しになるのでレイドバトル(特にデリバード)がオススメです。

 

  • 攻略ルートを開拓するときはポケモン徹底攻略さんのDMAdbが役に立ちます。

 

yakkun.com

 

回復技持ち、ワイドガード持ちレンタルポケモンの検索等が出来てとても便利です。

 

  • ジガルデもこのプログラムで周回出来ます。

ルートの開拓が大変だと思いますが頑張って下さい。

 

 

サンプル

 

動作の様子

youtu.be

 

 

この動画で使っている設定

 

f:id:cq6vum:20201206163912p:plain



  

解説 

 

lapmax = 15 #周回数

マックス鉱石所持数÷10でいいと思います。

ikisaki = 1 #行先 上からn番目

カプテテフを選択

行先が一番上以外に登録してあるときは変更してください。

SelectPoke = 3 #ポケモン選択 上からn匹目のポケモンを選択

チラチーノを選択

miti0 = 2 #道選択 出発時

左から二番目の道(電気)を選択
waza1 = 4 #技選択 1戦目 上からn個目の技を選択

トリプルアクセルを選択

スイープビンタの方が威力が出ますが後でPPが切れないようトリプルアクセルを選びました。

1戦目の1ターン目は確実にダイマックスできるのでそれも考慮したほうがいいです。

ダイアイスであられになるので、こらえるで耐えたウッウが倒れることがありました。

Koukan1 = 0 #1戦目終了後交換する場合は1

エレブーは交換せずに進みます。

Miti1 = 1 #道選択 1戦目終了後 左からn番目

左の道(フェアリー)を選択

フェアリーの道は左から3番目ですが選べる道の中では一番左にあるので数字は1になります。

研究員がいますが自動でいいえになります。NPCがジュラルドンとウッウを交換します。
waza2 = 2 #技選択 2戦目

スイープビンタを選びます。

Koukan2 = 0 #2戦目終了後交換する場合は1

ブリムオンは捕まえません。NPCドククラゲと交換します。

ドククラゲは毒技でボス(カプテテフ)に抜群をとれますがエスパー技が弱点なのでここでお別れします。

Miti2 = 1 #道選択 2戦目終了後

左の道(水)を選択
waza3 = 2 #技選択 3戦目

スイープビンタを選択

Koukan3 = 1 #3戦目終了後交換する場合は1

捕まえます

ホエルコチラチーノを交換します。ホエルコは鋼技のアイアンローラーを持っていますがNPCに渡すと他の技を出すので自分で持ちます。

自分で持つとダイスチルで防御を上げられます。

 

三戦目の後の道選択はないです。

きのみで回復。


waza4 = 2 #技選択 4戦目

アイアンローラーを選択

 

 

 

最終的にボス(カプテテフ)戦のメンバーはホエルコヤレユータン、ブリムオン、ジュラルドンになります。

ヤレユータンひかりのかべやさいはいで、ブリムオンがいのちのしずくでサポートしてくれるので楽に勝てます。

 

 

ダイマックスアドベンチャー色粘りの自動化

Poke-Controllerの画像認識を使ってダイマックスアドベンチャーでの色粘りを自動化しました。

 

捕まえた色カプコケコ

f:id:cq6vum:20201202000609j:plain

 

動作の様子

youtu.be

 

現在更新を停止しています。

これからダイマックスアドベンチャーの自動化を行う方はこちゃてす(@kochatece12)さんのプログラムを利用することをおすすめします。

note.com

 

目次

 

 

 

ダウンロードURL

Dropbox - AutoDaiMaxAdventure

 

Ver.1.0

2020/11/29 公開

Ver.1.1

2020/11/30 「ダイマックスできるターン」と「ppが切れたターン」が被った時に止まらないよう修正しました。

Ver.1.2.0

2020/11/30 色違いのポケモンが出ても連れて帰れていない時があったので修正しました。

ポケモンを連れて帰ると行先が消えてしまう不具合があります。今後修正します。

画像認識の精度を上げるためKoukaari.pngを変更しました。

Ver.1.3.0

2020/12/2 色違いが出た時に行先を消してしまう不具合を修正しました。
色違いかどうかの判定がポケモン3匹分しか行われていなかったので、4回判定するように修正しました。
ダイマックスしなくても効果抜群の技を選ぶようにしました。
その他細かい修正をしました。

Ver.1.3.1 

2020/12/4 はなびらのまいなど技の対象選択の時に自分を選ぶ技を出せない不具合を修正しました。

技の選択方法を変更しました。

ポケモンを3体しか捕まえられなかったとき、3体目のポケモンが色違いだった場合ボスの色違いとして判定されてしまう不具合を修正しました。

Ver.1.3.2

2020/12/5 PP切れ時の挙動を修正しました。

Ver.1.3.3

2020/12/25 漢字、ひらがなのどちらの設定でも動くようにしました。行先を選べるようにしました。(設定方法はこちら→ダイマックスアドベンチャーのオシャボ色厳選・ジガルデ色厳選の自動化 - アキルノのブログ)

画像を追加、変更しました。待機時間を増やすなど細かい変更をしました。

 

 

必要な物

  • PC
  • (liteじゃない)Switch
  • マイコン
  • USBシリアル
  • キャプチャーボード
  • Poke-controller

 

使い方

  • Poke-Controllerをインストールする

https://github.com/KawaSwitch/Poke-Controller

 

インストール方法や使用方法は作者様がgithubに詳しく書いてくれているので読んでください。

Poke-Controllerの起動、キャプボとマイコンの接続が出来るようにしてください。

 

  • 画像とプログラムをPoke-Controllerのフォルダに入れる

 

最初にダウンロードしたフォルダ(AutoDaiMaxAdventure)を開きます

 

DMA.pyを

Poke-Controller¥SerialController¥Commands¥PythonCommands¥ImageProcessingOnly

の中にコピーします。

 

picturesの中にある画像を全て

Poke-Controller¥SerialController¥Template

の中にコピーします。

 

追記 11/30

更新する時も同じ手順を踏んで古いファイルを新しいファイルに書き換えて下さい。

 

新しいPythonコマンドの作り方 · KawaSwitch/Poke-Controller Wiki · GitHub

このページが参考になります。 

 

f:id:cq6vum:20201129142739j:plain

 Aボタンを押したら研究員に話しかけられる位置に立ってください。

ダイマックスアドベンチャーチュートリアルは終わらせておいてください。

 

  • プログラムを開始する

 Poke-ControllerのCommandから「ダイマックスアドベンチャー」を選び、Startを押します。

プログラムファイルを入れてあるのに「ダイマックスアドベンチャー」が出てこない場合はStartの左のReroadを押して下さい。

色違いが出るかボールがなくなるまで自動で動き続けます。

 

備考

f:id:cq6vum:20201129142358j:plain

画像の並びだとゴージャスボールを投げます。

ボールを500個以上投げたら「ボール切れ」と表示して止まります。

間違えてオシャボを消費してしまっても責任は取れません。
不安ならポケモンにボールを持たせてバック内にオシャボを入れないようにするといいと思います。

  • マックス鉱石が1時間15個ぐらいのペースで増えます。
  • 色違いが2匹以上出た時は、終了後の選択画面でより下の方にいるポケモンを連れて帰るようになっています(ボスとモブが光った時にモブを連れて帰らないようにする為)。
  • ランダム要素が強いのでバラツキがありますが、1周10分〜20分程度で周回します。
  • 上手くいかなかった時は「どこかで止まりました」と表示して止まります。止まった時は詳しい状況と共に教えて頂けると助かります。

 

 

  • 勝率を上げるためにやったこと

効果抜群の技を選ぶ

 

  • 出来なかった/諦めたこと

タイプ相性を考慮して道を選ぶ
→画像認識で位置を認識するのが難しかった
威力が高い技を選ぶ
→数字を認識するのが大変

HP残量を考慮してダイマするか決める

→必要性をあまり感じなかった

 

  • そのうちやりたいと思っていること

「こうかなし」の技を選ばないようにする

タイプ一致技を選ぶ
ダイマックス出来るターンに空を飛んでいたり地中に潜っていたりしないようにする
ポケモン徹底攻略さんのDMAdbを元にポケモンを選ぶ


こうすれば勝率が上がるんじゃないかというアドバイスがあったら教えてください。

 

Q&A

質問はブログのコメントにお願いします。Twitterに質問を送るのは辞めて下さい。
Poke-controllerの導入方法、使用方法、キャプチャーボードの使用方法についての質問には(知識がないため)一切回答出来ません。

 

 

  • DMA終了後、連れて帰るポケモンを選ぶ画面で色違いが出たか確認せずに巣穴の前に戻ってしまう(Ver.1.1/1.2)


待機時間が足りない等の理由でA連打が入って失敗することがあります。(そのうち直せたら直します)
環境によっては待機時間が足りないことがあります。それぞれの環境に合わせて待機時間を調整して使って下さい。
バトル中など最初の入口以外の所でマクロを開始すると上手く動かないので、必ず研究員の前に立っている時に開始するようにしてください。

 

2020 12/25追記


ダイマックスアドベンチャー終了後に色違いかどうかの確認ができないという報告が多かったので待機時間を増やしました(Ver.1.3.3)


このプログラムは日本語用です。また、Ver.1.3.2以前のプログラムは漢字設定でしか使えません。(Ver.1.3.3でひらがなでも動くようになりました)
日本語以外でプレイしている方は画像を差し替えて使ってください。

 

 

  • interrupptと表示されて止まる


「どこかで止まりました」と表示されずに「interruppt」と表示されて止まった時はPowerShellの方にエラー内容が表示されるので、その内容をコピペするかスクショを貼るなどして教えていただけると助かります。

 

pyファイルを弄っていない場合は画像がTemplateフォルダに入っていないなどの問題だと思います。


画像を追加する時はTemplateフォルダの中にpicturesフォルダを入れるのではなく、picturesフォルダの中の画像をTemplateフォルダ直下に入れてください。


古いVer.は動くのに最新Ver.が動かない場合はプログラムにミスがある可能性があるので、修正が終わるまで古いVer.を使って下さい。

 

 

 

 

  • 画像認識が上手くいかない


画像認識に失敗している時は、画像認識の閾値(しきい値)を変更すれば解決する可能性があります。

 


しきい値の変更方法はこちらを参考にして下さい


しきい値を下げるには、(Ver.1.3.2の場合)プログラム206行目の
elif self.isContainTemplate('Tukamaeru.png', 0.95): # つかまえるコマンド
 

の数字(0.95)を書き換えて下さい。

今はサンプル画像と95%一致したら判定されるようになってるので、0.8(80%)ぐらいにするといいと思います。
下げすぎると捕まえるコマンドが出ていない時に間違えて認識してしまうので注意して下さい。
しきい値を下げても治らなかったら画質の関係で失敗している可能性があるので、Picturesフォルダの中にある"Tukamaeru.png"を自分でキャプチャしたものに置き換えてみてください。

 


キャプボの問題で縦横比が変わっていたりしたらしきい値を変更しても解決しないので、スクショを撮って差し替えて使ってください。
Poke-ControlletにあるCaptureボタンを押すとスクショが Poke-Controller/SerialController/Captures内に保存されます。
必要に応じてトリミングして、Templateフォルダ内にある画像と同じ名前にして上書きして変更して下さい。画像はCapturesフォルダからTemplateフォルダに移動して下さい。

 

 

 

 

 

 


色違いの出現報告等のコメントお待ちしております