The Elder Scrolls Online日本語版のゲーム本編には不要なDMM Game Playerを自動停止させるバッチファイルを作ってみた
2017/6/23まで、DMM.comが初期費用負担キャンペーン(=実質無料)を行っている『The Elder Scrolls Online』日本語版(以下、TESO日本語版)を始めて数週間が立とうとしている。
そこそこに面白いと思いつつ、ゲーム本編の起動までが煩雑かつ余計なランチャーを都度停止させるのが面倒なので、バッチファイルを書いた。
【2018/01/11 追記】
筆者は、すでにTESO日本語版をプレイしていません。
【2018/06/01 追記】
どうやら、現時点でも本バッチで停止できる様子。
(TESO本体のインストールまでは行っていないけど、TESO側ランチャー起動までは確認した)
【2021/01/13 追記】
記事にあるバッチファイルを流用して「DMM Game Player →目的のゲーム起動→DMM Game Player 終了」が可能なのは、以下の場合だけ。
- 「dmmgameplayer://~~」というURLショートカットでゲーム起動が出来ること。
これは、「目的のゲームがインストーラーを使い、PCへインストールする」必要があるタイプということ。
(インストールの途中で、デスクトップショートカットを作成してくれるものであればよい)
DMMでサービスしているGAMEには「ダウンロード版」というのもある。
こちらは、本記事(のバッチファイル)で行っている方法では無理。
1. バッチファイルの目的
TESO日本語版だけをプレイする人にとっては、 DMM Game Player は常時起動する必要がなく、TESO側のランチャーが起動したら用済み。*1
そのため、毎回手作業でアプリを止めるのも面倒なので、自動で止めちゃおうというのがこのバッチの目的。
2. バッチファイル本体
先人の知恵(ブログ記事)を参考に書いたのが以下のもの。
@ECHO OFF @IF NOT "%~0"=="%~dp0.\%~nx0" ( START /min cmd /c,"%~dp0.\%~nx0" %* GOTO :EOF ) START dmmgameplayer://eso/cl/general/eso :TASK_CHECK TASKLIST | FIND "Bethesda.net_Launcher.exe" > NUL IF NOT ERRORLEVEL 1 ( GOTO KILL_DMM ) ELSE ( GOTO TASK_CHECK ) :KILL_DMM TIMEOUT 3 > NUL FOR /F "usebackq tokens=2" %%a IN ( `TASKLIST /fi "IMAGENAME eq DMMGamePlayer.exe" ^| FINDSTR "[0-9]"`) DO ( TASKKILL /PID %%a ) EXIT
3. 準備作業
テキストエディタ(メモ帳でもよい)で、上のバッチファイル本体の内容を適当な名前(例:TESO起動.bat)で保存(セーブ)する。
保存(セーブ)したバッチファイルを右クリックして、『ショートカットの作成』を行う。
出来上がったショートカットを右クリックして、『プロパティ』を選択する。
表示された『プロパティ - 詳細』タブ右下にある [詳細設定...] ボタンを押す。
『(バッチファイル名)のショートカットの詳細設定』が表示されるので、『管理者として実行(R)』にチェックを入れから、 [OK] ボタンを押して『詳細設定』を抜ける。
『プロパティ - 詳細』に戻ったら、[OK]ボタンを押して変更を反映させる。
上記作業を行ったショートカットをデスクトップに置いておく 。
4. 使い方
デスクトップに置いたショートカットをダブルクリックして実行する。
UAC警告(ユーザ制御ダイアログ)が出たら、[OK]を押す。
あとは、TESOランチャーが立ち上がるまで放置する。
5. 注意書き
- Windows10 Pro(64bit)でしか動作確認してません。
- ショートカットを用いない場合、バッチファイルを『管理者として実行』しないとDMM Game Player を停止することはできません。*2
- Windows10では、ショートカットをタスクバーやスタートメニューに登録できない仕様のため、デスクトップへ置くことで代用しています。
あとがき
これで Bethesda.net_Launcher (TESOランチャー) にある 『プレイ』を押すまえに DMM Game Player を手動で止めていた手間がなくなった。
ゲーム本編起動と合わせていろいろとアプリ起動が必要な人は、EXITの前に処理を加えてください。
例えば、動画配信/録画アプリを起動させる、タイマーをセットさせる、など。
また、マウスイベントをエミュレートするモノを付け加えれば『プレイ』ボタンを押す操作も自動化できる。(要望があれば、別途記事を書くかも)
付録. バッチファイルの簡単な流れ:
コマンドプロンプトを最小化するためのおまじない (冒頭の@IF ~ GOTO :EOF)
DMM Game Player 経由で Bethesda.net_Launcher (TESOランチャー)を起動 (START dmmgameplayer:~ )
Bethesda.net_Launcher (TESOランチャー)が起動するまで待つ(:TASK_CHECK)
- 起動して 3秒後に DMM Game Player を停止 (:KILL_DMM 以降)