Stream Deck プラグイン

YMSB4.0の目玉アップデートです。
Stream Deckに対応しました!ちょっと事前準備が大変ですがそんなに難しくない(と思います)ので、StreamDeckをお持ちの方は是非とも挑戦してみてください。

Stream Deck プラグインでできること

YMSBコントローラーを使わずに、Stream Deckにて以下の操作が可能になります。

・YMSBの表示/非表示
・データ更新(UPLOAD)
・1P2Pの入替(SWAP)
・スコアアップ、ダウン
・スコアクリア

【団体戦】
・勝ち星変更
・勝ち星クリア
・対戦中プレイヤー変更
・勝敗フラグ変更
・メンバーのライフ増減
・メンバー表示/非表示切り替え
・対戦中プレイヤー表示/非表示切り替え

【10先戦・長期戦】
・取得ラウンド変更

今後、更新することもあります。

事前準備

これらは既にお持ちであると思います……よね?
なんならStreamDeckについてはYMより皆さんの方が詳しいはず!

・Stream Deck本体(Stream Deck、Stream Deck Mk.2、Stream Deck+、Stream Deck Mobile)
・Stream Deckプラグイン(YMSB4.0β2に同梱)

YMSBのStreamDeckプラグインを使う為に、本体以外では以下3つのものが必要となります。

①Node.js
 →Node.jsの公式HPからインストーラーをダウンロードしてインストールします。
②npm、json-server
 →コマンドを直接入力します。Windowsの方は自動実行できるバッチファイルを用意しています。
③YMSB用Stream Deckプラグイン
 →YMSB4.0以降に同梱しています。

①Node.jsのインストール

以下サイトからNode.jsのインストーラーをダウンロードしてください。

Node.js — Download Node.js®
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
OSの種類別にインストーラーが用意されています

ダウンロードしたインストーラーを起動し、画面の指示に従ってインストールしてください。

必要なやつも自動的にインストールしますよー、らしいですが不要です。

②Node.jsの[json-server]をインストール

バッチファイルを使ったインストール手順(Windowsのみ)

Windowsユーザーの方については、自動実行するバッチファイルを用意していますので、「streamcontrol」フォルダにある「install.bat」をダブルクリックしてください。

「install.bat」をダブルクリックすると、自動的にjson-serverまでインストールします。
「インストール完了!」のメッセージが出ればOKです。

json-serverのインストールはこれで完了です。
そのまま手順③へ進んでください。

手動でのインストール手順

以下、Windowsの場合での手動インストール手順を解説します。
macの場合は「コマンドプロンプト」や「Windows PowerShell」を「ターミナル」と読み替えてください。YMはmacユーザーではないので試すことができません……。

まず、YMSBの「streamcontrol」のディレクトリを開き、空いたところを右クリック→「ターミナルを開く」を選択してください。

ターミナルを開いたら、必要なアプリをインストールします。
以下のコマンドを入力してください。

npm init --yes

動作が終わったら、次に下のコマンドを入力してください。

npm install json-server

こんな感じの画面になればOKです!

これで無事、json-serverがインストールされました。

③Stream Deck プラグインのインストール

YMSBの「streamcontrol」ディレクトリの「com.ymsb.scores.streamDeckPlugin」をダブルクリックすると、Stream Deckアプリが立ち上がり、プラグインがインストールされます。
あとは他のプラグイン同様、個別に設定してください。

ダブルクリックでインストールされます
アクションリストから使いたい機能を選択してください
機能に合わせたアイコンに変更されます

なお、アクションリストに「*」が付いているものがありますが、これらのアクションについては別途「UPLOAD」ボタンを押さないとスコアボードに反映されません。詳細は後述「操作方法」の【「UPLOAD」ボタンの必要な操作について】をご覧ください。

「*」が付いてるアクションは団体戦および長期戦にあります。操作詳細は後述します。

操作方法

json-serverを起動

使う前に、json-serverを起動する必要があります。
「streamcontrol」フォルダから右クリック「ターミナルを開く」を選択してから、以下のコマンドを入力してください。

npx json-server --watch streamcontrol.json -p 2997

こんな画面になればOK!

この画面は開きっぱなしにしておいてください。一番前でなくても大丈夫です。

これで、Stream Deckから操作できるようになりました!
事前準備で用意したStreamDeckから操作してみてください。

コントローラーからも操作したい場合

StreamDeckでYMSBを操作している際、プレイヤー名の変更などプラグインでできない操作は下記の手順でコントローラーから操作することが可能です。
1.「streamcontrol」ディレクトリの「YMSB_Expert.html」を開く
2.「Config」タブの「Stream Deck」の項目を「使う」に設定
3.「Init」ボタンを押してください。

コントローラーを開く→「StreamDeck設定を「使う」→「Init」をクリックの順です

ボタンの種類

共通・個人戦

名前説明
スコアボード表示/非表示スコアボード全体の表示・非表示を切り替えます。
SWAP1P2Pを入れ替えます。
UPLOAD(後述の[「UPLOAD」ボタンが必要な操作について]をご参照ください)
1P Score Up1P側のスコアを一つプラスします。
1P Score Down1P側のスコアを一つマイナスします。
2P Score Up2P側のスコアを一つプラスします。
2P Score Down2P側のスコアを一つマイナスします。
Clear Scores1P2P双方のスコアを0に戻します。

団体戦

名前説明
1P Star Up1P側の勝ち星を一つプラスします。
1P Star Down1P側の勝ち星を一つマイナスします。
2P Star Up2P側の勝ち星を一つプラスします。
2P Star Down2P側の勝ち星を一つマイナスします。
Clear Stars1P2P双方の勝ち星を0に戻します。
1P オーダー設定*1P側のオーダー設定を次のメンバーにします。
2P オーダー設定*2P側のオーダー設定を次のメンバーにします。
1P Lose*1P側のメンバーの敗退状態を変更します。
2P Lose*2P側のメンバーの敗退状態を変更します。
1P Life*1P側のメンバーのライフを一つマイナスします。
2P Life*2P側のメンバーのライフを一つマイナスします。
メンバー表示/非表示団体戦メンバーの表示・非表示を切り替えます。
対戦中メンバー表示/非表示対戦中メンバーの表示・非表示を切り替えます。

長期戦

名前説明
設定セット 次*次のセットに移動します。
設定セット 前*前のセットに移動します。
1P ラウンド*1Pの現在のセットのラウンドを一つプラスします(1→2→3→0……の順)
2P ラウンド*2Pの現在のセットのラウンドを一つプラスします(1→2→3→0……の順)

「UPLOAD」ボタンが必要な操作について

事前準備の手順③で用意した、Stream Deckのボタンを押せばスコアボードの内容が更新されます。
YMSBコントローラー同様に「UPLOAD」ボタンも用意してありますが、「UPLOAD」ボタンの必要がない操作があります。

アクションリストに「*」が付いていない→「UPLOAD」の必要なし

これらのアクションは、ボタンを押した時点でスコアボードに内容が反映されます。
なので「UPLOAD」ボタンを押す必要はありません。

アクションリストに「*」が付いている→「UPLOAD」の必要あり

逆にアクションリストに「*」が付いているメニューについては、スコアボードに反映させる為に「UPLOAD」ボタンを押す必要があります。別途「UPLOAD」ボタンを用意してください。

団体戦の各操作について
オーダー設定、勝敗設定、ライフ設定は「UPLOAD」が必要な操作です。

団体戦についての基本的な操作として、どのメンバーに対して操作をするかの指定が必要です。
各ボタンは以下のように動作します。

・オーダー設定
 →誰が対戦中メンバーかの設定します。
  ボタン内の数字はチーム表示の上から何番目のプレイヤーかを表しています。
  (「TEAM」はコントローラーでいう一番上のボタンで誰も指定していない状態です)
・Lose(メンバーの敗退設定)
 →オーダー設定で指定したメンバーが敗退したかどうかを設定します。
  上の図の場合、2P側は4番目のプレイヤーが敗退状態です。
  敗退状態からもう一度ボタンを押すと敗退状態が解除されます。
・Life(ライフ設定)
 →オーダー設定で指定したメンバーのライフを設定します。
  ボタンを1回押すたびにライフが1減少し、0の状態でボタンを押すと最大値まで戻ります。

以下、団体戦イベントでの使用例です。ご参考までに。

 ① 「オーダー設定」ボタンで、誰が対戦中かを設定して「UPLOAD」
 ↓
 ② 対戦後、結果を入力(敗退、ライフ減少)する
 ↓
 ③ 「オーダー設定」ボタンで次の対戦メンバーを設定して「UPLOAD」
 ・・・
長期戦での操作方法

長期戦スコアをStreamDeckから操作するのですが、どのセットに対して操作をするのか設定が必要です。各ボタンは以下の通りに動作します。

・設定セット 次、設定セット 前
 →スコアを設定するセットを指定します。
  最終セットの時点で「次」を押すと1セット目に、1セット目で「前」を押すと最終セットに移動します。
・1Pラウンド、2Pラウンド
 →設定セットで指定したセットの、1P2Pの取得ラウンドを設定します。
  ボタンを押すたびに増加し、最大である3ラウンドの時にボタンを押すと0になります。
  ラウンド数を表示しない場合は「1」か「0」で充分でしょう。

これについては設定するセットを指定して取得したラウンドを設定するだけなので、使用例は割愛します。

遠隔操作コントローラーもStream Deckから操作可能

遠隔操作のコントローラーをStream Deckから操作する際、以下のデータが必要です。

・WebAPIのURL

これらデータの取得方法については下記ページをご参照ください。

この2つのデータが分かったら、Stream Deckの画面からそれぞれ入力し、スイッチを「ON」に設定してください。

最新版ではSSIDは必要ありません。

これで遠隔操作側のコントローラーを操作できるはずです。

終了させる場合

OBSやコントローラーは従来通り閉じてもらって大丈夫です。
json-serverについては「Ctrl(macはCmd)+C」を押すと「ジョブを終了しますか?」と聞かれますので「Y」キーを押して終了し、その後コマンドプロンプトを閉じてください。

まだ手探り状態なのでご意見求む!!

YMSB4.0ではStreamDeckプラグインを作成し、操作の補助ができるようになりましたが、どのデータをどのように操作するかについてはまだ手探りの状態です。
お使いになられたら、是非使い勝手などについてYMのXまでご意見いただければ幸いです。


      
PAGE TOP
タイトルとURLをコピーしました