steam版ダンガンロンパV3のモノモノマシーン自動化
要約
pydirectinputを利用してsteam版ダンガンロンパV3のモノモノマシーン等の自動化を行った。 本編のネタバレはしません。
実装
import pydirectinput import time time.sleep(2) for i in range(100): pydirectinput.press("w") pydirectinput.press("enter") time.sleep(2) pydirectinput.press("enter")
説明
上記のパッケージを利用した。 特にダンガンロンパのウィンドウをactive化する実装を含まないので、Alt+Tabなどで最初の2秒のスリープの間に自力でフォーカスしてください。
また、このスクリプトを実行している間は他の操作は不可能です。通常のキーボード入力等の操作をスクリプトが代行しているに過ぎないため。
感想
最初はWindows API叩くつもりだったけど、いい感じのラッパがあったので助かる。 pyautoguiはDirectX を利用するゲームには入力できないがちなので気をつける(1敗)。
pydirectinputはあんまりメンテされてないけどとても便利。 これをフォークしてるactiveなリポジトリもあったんだけど、こっちはなぜかうまくいかなかった。
pydirectinputについて付記しておくべき事項として、clickがうまくいかないので、clickが必要な場合はmousedown→mouseupするとよい。
おまけ
ギャラリーの解放も自動化した。これもかなりめんどいよね……。
import pydirectinput import time time.sleep(2) for i in range(20): pydirectinput.press("enter") time.sleep(0.2) pydirectinput.press("enter") time.sleep(1) pydirectinput.press("s")