Ei-TypeBombは、オンラインでプレイできるタイピングゲームです。事前に設定した単語を、最大6人のプレイヤーと入力し合って爆弾を渡し合い、時間が切れたときに持っていた人の負けというルールです。スマートフォンでもプレイすることができます。
プレイ方法
接続
Playをクリックし表示名を設定して、接続が完了すると画面にその表示が出てきます。Joinをクリックすると、ルームに入ることができます。Watch Onlyを選択すると、ルームでのプレイの様子を閲覧することができます。ゲームには参加しません。プレイ
Start Gameをクリックしてプレイを開始すると、1人のプレイヤーに爆弾が渡されます。画面の左側で、現在参加しているプレイヤーと、爆弾を持っている人を把握することができます。
爆弾を所持しているプレイヤーは、画面の右側に表示された日本語の単語の英語のつづりを画面に入力します。
単語を間違えるごとに、3文字づつ正解の単語が薄く表示されます。表示された3文字も正確に入力する必要があります。
他の人が爆弾を保持しているときは、その人の入力欄を見ることができます。
ゲームが開始されると、時間が経つにつれて一定期間ごとに爆弾の色が黒色から赤色に変色ていきます。最終的に、爆弾が爆発したときに持っていたプレイヤーが負けになります。
勝敗が決まると、画面に敗者の表示名が表示されます。
設定
設定からはBGMのオンオフと、接続先を変更したい場合用に、URLの指定の欄があります。
ルーム作成方法
アカウントを作成すれば、Ei-TypeBombで自分で入力した単語を使って友達とゲームをプレイすることができます。
それぞれ独立してゲームをプレイすることができるため、自分が招待した友達とで、ゲームをプレイできます。
ルームの設定からは、ゲームで使用する単語を設定できます。JSONの形式でインポート、エクスポートすることもできます。
また、
Visibilityをタップすることで、ルームにパスワードをつけて、プレイヤーがリンクを踏んだ時にパスワードが要求されるようにしたり、パスワードなしで公開するように設定することもできます。最終的に、
https://ei-typebomb.vgnz93hs.com/join/[Room Id]のようなリンクをコピーすることができます。プレイヤーはそのリンクを踏むことによってルームに入ることができます。実装
接続にはSocket.IOを使用した通信を使用しています。
初めのプレイヤーが接続された時点で、ルームの情報をSupabaseから取得して、実際のプレイに関する状態はNode.jsのRenderが保持する仕様にしています。
デザイン
ゲームには独自の丸いカーソルを用意して、ボタンに触れるとシームレスにボタンの形に変形するようにしました。