【Python】ウマ娘 自動リセマラ周回のやり方

Uncategorized
1.3k words

巷で話題になっているスマホゲーム「ウマ娘 プリティーダービー」のリセマラを自動周回させます。

はじめに

ウマ娘の最終目標である「URAファイナルズ」に出場するため、リセマラを使って出来るだけ有利にスタートダッシュを決めたい。

そのためリセマラを何十回もやって、キャラクターを厳選する必要があります。

1回のリセマラが5分以内で終わるので、そこまで苦じゃないがやっぱり楽をしたい。

そんな私の欲望を叶えるため、ひと肌脱いできました。

目標

この記事を読んで出来ること。

1周する毎にフォルダの中にガチャ結果とデータ連携の結果が保存されて行きます。

1周5分ぐらいかな、たまに失敗してるけど。

ガチャ結果

それぞれのフォルダの中身はこんな感じ。

今の時期だと10連ガチャが7回出来るみたい。

ガチャ結果

あとはガチャ結果がよかったアカウントを、データ連携で戻して最高のスタートダッシュを決めます。

さらに今回の方法を使うと、マウスカーソルが奪われずに複数のNoxPlayerを同時に操作してリセマラを行うことができます。ネットサーフィンしていても問題ないですよ。

準備

Python

NoxPlayerを自動操作して、ウマ娘のリセマラをしていくのに Python をインストールする必要があります。 Python はインタプリタ型のプログラム言語で、Microsoft Store から誰でも簡単にインストールすることができます。

こちらから Python 3.8 をインストールして下さい。若干バージョンが違っていても問題ありません。

Python

アンドロイド自動操作モジュール

NoxPlayerを自動操作するために、アンドロイド自動操作モジュール を使います。なので事前に、コマンドプロンプトからインストールしておきます。

インストール方法

「Win」キーと「R」キーを同時に押して「ファイル名を指定して実行」ダイアログに「cmd」と入力し、コマンドプロンプトを開きます。

で、開いたコマンドプロンプトに 下記コマンド を入力して アンドロイド自動操作モジュール をインストールします。

1
pip install android-auto-play-opencv

Successfully と出ればインストール成功です。

ウマ娘自動リセマラ周回スクリプト

Python の準備が整ったので、私が組んだ ウマ娘自動リセマラ周回スクリプト をダウンロードして展開しましょう。

https://github.com/noitaro/python-umamusume

上記サイトからを ウマ娘自動リセマラ周回スクリプト をダウンロードし、

展開すると「umamusume.py」とテンプレート画像が入っています。

NoxPlayer

次に NoxPlayer をインストールします。NoxPlayer は PC上でアンドロイドを動かすことが出来るツールです。複数同時起動ができるので、いろいろなアプリを同時に実行することができて、とっても役にたつツールです。

NoxPlayer を使う場合は 64bitベータ版 を使うことをオススメします。

NoxPlayerをダウンロード

私の環境で試したところアプリ起動時によくクラッシュしていましたが、64bit版を使うようになったら多少改善されました。まあ落ちる時は落ちるので、気休め程度ですけどね。

解像度 960x540

今回のスクリプトは「解像度 960x540」で作っちゃったので、このサイズでしか上手く動かせません。

タップ位置とか比較画像のサイズを再設定すれば別の端末でも動かせるので、別の端末で動かしたい人はスクリプトの修正が必要です。

解像度 960x540

ウマ娘 チュートリアル

事前にチュートリアルを1回終わらせて、スキップ出来る状態にしておいて下さい。

チュートリアルスキップ

実行

展開したフォルダに「umamusume.py」が入っています。

そのフォルダでコマンドプロンプトを開いて Python を実行すると自動で動き出します。

1
python umamusume.py

python umamusume.py

自動リセマラ周回

コマンドプロンプトの開き方は?

「umamusume.py」があるフォルダでコマンドプロンプトを開かないと正しく実行されません。

テンプレート画像が相対パスなので、ちょっと注意が必要です。

エクスプローラーのアドレスバーに「cmd」と入力しエンタキーで開けます。

コマンドプロンプトの開き方

ADBパス設定

もし動かない場合は、NoxPlayer の ADBパスを設定する必要があります。

候補を何個か登録してありますが、NoxPlayer のインストール設定によっては変わることがあるので、動かない場合は手動で追加して下さい。

1
2
3
4
5
adbpathCandidates = [
'C:\\Program Files\\Nox\\bin\\',
'C:\\Program Files (x86)\\Nox64\\bin\\',
'C:\\Program Files (x86)\\Nox\\bin\\'
]

NoxPlayer用の adb.exe の調べ方

デスクトップにある NoxPlayerのショートカットを右クリックして「ファイルの場所を開く」を選択

開いたフォルダに NoxPlayer用の adb.exe があります。なので、そのフォルダパスを adbpathCandidates に追加すればOK

Python は エンマークがエスケープ文字に設定されているので、エンマークを使いたい時は2回続けて書く必要があります。

1
2
'D:\Program Files\Nox64\bin\' # NG
'D:\\Program Files\\Nox64\\bin\\' # OK

複数端末に対応 2021/06/20:追記

同時に複数の端末で自動操作できるように修正しました。

https://noitaro.github.io/multi-startup/

効率アップですね。