Splatoon(スプラトゥーン)プレイ時に常駐してHDMIキャプチャボードの画像を監視し、ガチマッチのリザルトを自動収集するシステム。
- ガチマッチのリザルトをGoogle Spreadsheet上に送信
- 画面キャプチャ
- ガチマッチのルール
- ステージ名
- 試合前の自分のウデマエ(S+ 〜 C-)
- ウデマエポイント増減
- 試合後の自分のウデマエポイント
- 8人のプレイヤーのウデマエ、kill/death
resultoonの実行には以下の言語実行環境、ライブラリがすべて必要です。
- Python 2.7.10
- requests 2.7.0
- OpenCV 3.0
- Tesseract 3.02.02
- python-tesseract 0.9-0.4
Download Python 2.7.10のボタンからインストーラをダウンロードします。
あとはインストーラの指示通りにインストールしてください。
コマンドプロンプトで pip install requests
を実行するとインストールできます。
Version 3.0のOpenCV For Windowsのリンクからインストーラをダウンロードします。
あとはインストーラの指示通りにインストールしてください。
https://code.google.com/p/tesseract-ocr/downloads/detail?name=tesseract-ocr-setup-3.02.02.exe
3togo / python-tesseract / ダウンロード — Bitbucket
python-tesseract-0.9-0.4.win32-py2.7.exe
をダウンロードします。
あとはインストーラの指示通りにインストールしてください。
resultoon.ini
ファイルにて以下の設定を行うことができます。
項目 | 意味 | 初期値 |
---|---|---|
SAVE_IMAGE_PATH | キャプチャした画像の保存先フォルダ | ./ |
GOOGLE_APPS_SCRIPT_URL | Google Spreadsheetに送信する場合の送信先URL | |
CAPTURE_DEVICE_ID | HDMIキャプチャボードのデバイスID | 0 |
resultoon.py
をダブルクリックしてください。
(コマンドプロンプトで python resultoon.py
でも起動できます)
しばらくするとゲーム画面が表示されたウィンドウが立ち上がります。
あとは普通にガチバトルをプレイするだけで、リザルトを勝手に収集します。
また、任意のタイミングで スペースキー
を押すことで画面キャプチャを取得することができます。
Esc
キーを押してください。 ※ウィンドウを閉じても終了しません。
- PC上のウィンドウにもゲーム画面が表示されますが、fpsは一定ではありません。PCの処理内容によってはプレイに支障をきたすレベルでfpsが低下するおそれがあります。そのため、分配器を使った別モニタへの表示を強く推奨します。
- AmarecTV等で同じキャプチャボードの画像を同時に取得することはできません(本アプリがデバイスを占有するため)
Google Spreadsheet上にリザルトを記録するためには、以下の設定作業が必要です。
- https://docs.google.com/spreadsheets を開きます
- スプレッドシートを新規作成します
- このスプレッドシートのURL
https://docs.google.com/spreadsheets/d/xxxxxxxxxxxx/edit
をメモしておきます
- このスプレッドシートのURL
master
という名前のシートを新規作成しますツール > スクリプトエディタ
をクリックします空のプロジェクト
をクリックします- エディタの内容を
main.gs
の内容で上書きします- main.gsの1行目
SPREADSHEET_ID
の文字列を先ほどメモしたspreadsheetのURLのうちxxxxxxxxxxxx
に該当する文字列に置き換えます
- main.gsの1行目
公開 > ウェブアプリケーションとして導入
をクリックします- 「現在のウェブアプリケーションのURL」をメモしておきます
- プロジェクト名には
resultoon
と入力します 次のユーザーとしてアプリケーションを実行: 自分
、アプリケーションにアクセスできるユーザー: 全員(匿名ユーザーを含む)
を選択して更新
をクリックします
- 先ほどメモしておいた「現在のウェブアプリケーションのURL」をコピーして、
resultoon.ini
のGOOGLE_APPS_SCRIPT_URL
の=の右側にペーストします
設定完了後、resultoonを起動すると master
シートにリザルトが自動的に記録されていきます。
データ形式はjsonです。
{
udemae_point: 19,
udemae_diff: "+3",
members: [
{
team: "win",
udemae: "A+",
kill: 6,
death: 3
},
{
team: "win",
udemae: "S",
kill: 3,
death: 1
},
{
team: "win",
udemae: "S+",
kill: 2,
death: 1,
isPlayer: true
},
{
team: "win",
udemae: "A",
kill: 1,
death: 0
},
{
team: "lose",
udemae: "A+",
kill: 2,
death: 3
},
{
team: "lose",
udemae: "A",
kill: 1,
death: 3
},
{
team: "lose",
udemae: "A",
kill: 0,
death: 2
},
{
team: "lose",
udemae: "S",
kill: 0,
death: 4
}
],
rule: "ガチヤグラ",
stage: "シオノメ油田"
}
- リザルトをCSV形式で保存する機能の追加
- エラー例外処理
MIT
Copyright(c) 2015- Kenichi Koyama