SYNCROOM Lobby (ロビー機能)

はじめに

「SR過疎ってる」という話を最近よく聞きます。私も部屋リスト眺めてるだけで終わっちゃうことも多くなってきました。

SR出来る態勢で部屋リスト見てるだけの人同士が互いに「あの人が今SRやろうとしてる」という事を知ることが出来ればSRの活性化に繋がるのでは?と考え、ちょっとしたプログラム(以後、ロビー機能スクリプトと呼びます)を作りました。

「SYNCROOMロビー機能」とは?

このロビー機能スクリプトをインストールしたユーザーが見ている部屋リストの上に「ロビー」を表示させます。
ロビー枠にこのロビー機能スクリプトをインストールして部屋リストを見ている「待機者」が表示されます。

部屋リストを閲覧するのに「SYNCROOM Plus」というChrome拡張を利用している方も多いと思いますが、これにロビー機能を追加を追加するもので、「私は今SRしたい」という意思表明をする為のツールです。

  • ユーザー名を隠して匿名で利用することも可能です。
  • ひと言、短いメッセージを書くことも出来ます。

仕組みとしては、部屋リストを表示してる間、一定時間(60秒程度)ごとに、ユーザー情報(アイコン、名前、ユーザーID)をホゲの管理するサーバに送信して「待機者リスト」に登録。

この「待機者リスト」に登録されたユーザー群のアイコンやユーザー名等を「ロビー枠」に並べて表示します。
以下はイメージ図です。

動作環境

動作には以下の環境が必要です。

※「SYNCROOM Plus」をまだインストールしていない方は以下のリンクより「SYNCROOM Plus」をインストールして下さい。
SYNCROOM Plus

機能の説明

  • startを押すと読み込みが開始されます。stopを押すと止まります。つけっぱなしの場合は60分で自動停止します。
  • 動作中は、一定間隔で「ひとこと」も自動で投稿されます。(書いてる途中であってもw 対応検討中)
  • 「自動スタート」にチェックを入れると、以後は部屋リスト開くと自動でスタートするようになります。この設定は記憶されます。
  • 「匿名」にチェックをいれると名前などは表示されません。この設定も次回以降記憶されます。
  • 「ひとこと」に書いた文章がロビーの自分のアイコンの横に表示されます。
  • 「ひとこと」に書いた文章は読み込みと同時に自動で送信されますが、リターンキーを押すか[post]ボタンを押すと即時送信されます。
  • 省略されて末尾が「...」になっている文字はマウスを乗せて2〜3秒待つと全文が表示されます。
  • 既にどこかの部屋に入室してる人には色が付きます。
  • 匿名のユーザーは「?」で表示されます。
  • 匿名で書いた「ひとこと」は表示されません。
  • ホゲ側の作業のみで大抵のアップデートは出来ますが、ロビー機能スクリプトをユーザーにアップデートしていただく必要がある場合は下部の「システムメッセージ」に案内を出します。

インストール

残念ながら、本ツールは「Chrome拡張機能」ではありません。

ロビー機能スクリプトを動かす為の「Chrome拡張機能」をインストールし、そこに「ホゲが書いたロビー機能スクリプト」を読み込ませるという2つのステップが必要ですが、当ページで案内したURLのリンクに飛んでクリックして何度かOKボタンを押す、という程度で難しい事は何もありません。

手順

【1】Chrome拡張機能 「Tampermonkey」をインストール

「タンパーモンキー」と読みます。

ユーザー数を見れば分かると思いますが、多くのユーザーに使われる実績のあるChrome拡張機能です。

「何をするChrome拡張機能なのか?」というと、特定のサイトでの表示、動作をカスタマイズする為の「スクリプト」を実行する環境になるものです。
「ホゲが書いたロビー機能スクリプト」を動かす土台となります。

拡張機能を作るのは大変なんです。「Chrome ウェブストア」に登録して公開するには手続きや審査がありますし。
「スクリプト」というのは、その気になれば「メモ帳」でも書ける小規模なプログラムです。

以下の★リンクにアクセスして「SYNCROOM Plus」をインストールした時と同じ要領でインストールすればOKです。

★Tampermonkey
https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo

【2】ホゲが書いた「ロビー機能スクリプト」をインストール

「Tampermonkey」をインストールしただけでは何事も起こりません。
ホゲが書いたロビー機能スクリプトはホゲのサーバに置いてあります。
以下の★リンクをクリックすると、「Tampermonkey」の画面が出ますので「インストール」ボタンを押します。

★ロビー機能スクリプト
https://sr-lobby.hoge.in/script/hoge_sr-lobby.user.js

【3】動作確認

上記の準備が終わったら
プレイヤーズサイト|SYNCROOM(シンクルーム)
https://syncroom.yamaha.com/play/
にアクセスしてみて下さい。

部屋リストの上に見慣れない「ロビー枠」が出現していれば成功です!

アップデート

[インストール済み UserScript] を新しいウインドまたはタブで開きます。

「最終更新時刻」の下、画像では「0 min」と出ている箇所をクリックすると最新版に更新されます。
※「0 min」の部分なインストールしてからの経過時間なので表記は変わります。

トラブルシューティング

動作や表示がおかしい場合は [拡張機能] を新しいウインドまたはタブで開きます。

「Tampermonkey」の右下のスイッチで Tampermonkey をオフにします。

アンインストール

当ツールの使用をやめて元の状態に戻したいときは

  1. [インストール済み UserScript] を新しいウインドまたはタブで開きます。
  2. [hoge_sr-lobby]の一番右側のゴミ箱アイコンをクリックしてロビー機能スクリプトを削除します。
  3. [拡張機能] を新しいウインドまたはタブで開き、Tampermonkey を削除します。

更新履歴

  • 既に入室中のユーザーに付ける色を薄い黄色から緑に変更しました。
  • 省略された文章にマウス乗せると即座に下部にユーザー名とひとことを表示する様に修正
  • ver 1.0.87 URLの末尾にパラメータがついていても動作する様に修正
  • ウィンドのリサイズで再度レイアウトし直す様に修正
  • ボタン、入力欄などのUIを改善

注意事項

  • お約束の文言ですが、当ツール(Tampermonkeyとロビー機能スクリプト)を利用した事で被害が生じても一切責任は負えません。利用するかは自己責任ということで。
  • まだ開発段階ですので、一時的に動作や表示がおかしくなる場合があります。そういう場合は「Tampermonkey」を停止しちゃえばOKです。
  • 部屋リストページを開いた直後に、画面右上のメニューが一瞬開きますが仕様です。
  • おかしい時は部屋リストページを再読み込み!
  • 部屋リストを開いたタブを裏に回すと更新は止まってしまう(または頻度が落ちる)様です。離席中などで開きっぱなしにしたい場合は単独のウインドで開いて部屋リストを前面にするのが良い様です。
  • 充分な設計をせず、実験的に作ったものですので、UIが雑、細かいところがおかしい等、いろいろあります。特に技術者の方にソースを見られるのは恥ずかしい限りでございます。
  • 読み込み間隔はホゲのサーバのパワーと利用者数をみながら調整します。読み込み間隔はロビー枠の左上に表示されます。
  • 直近何分以内の待機者をロビーに表示するか?などの設定は実用性を見ながら調整してきます。
  • SRを楽しむためのツールです。特に「ひとこと」機能の悪用は禁止します。悪質と判断したユーザーに対しては措置を取ります。
  • 匿名での「ひとこと」は出来ない仕様にしてあります。
  • 技術的に不可能なことも多々あると思いますが問題や要望があればお知らせ下さい。暇な時に対応します。
  • 動作に問題が起きた場合、このページの情報が必要になるのでブックマークしておいて下さい。
  • 当ツールは多くの方に使っていただいてナンボのものです。公開ツールでので、誰かに教えるのにホゲの許可は不要です。