
昨日のFGC人狼の放送をご覧頂いた方、ありがとうございました(⊃∪`*)
みんなの演技力と推理力で、緊張感のあるとても楽しい放送になりました(*′\/`*)
コメントで参加して頂いたリスナーの皆さんも含めて、皆さんに感謝しております☆
さて、今回の放送の技術的なお話を書かせていただきます。
といっても今回は、すごくシンプルな構造になってます(⊃∪`*)

ゲームマスターなしでも遊べるように、
node.js + socket.ioで専用サーバーを建てました(⊃∪`*)
参加者には常時接続してもらい、役職の割当と勝敗の判定をサーバー側で行います。
シンプルな構造なので簡単にサクッと作っちゃおうと思ってたんですが、
socket.ioってテストが面倒くさいんですよね。。。。
全員分マッチングしないとテストにならないので、
最初はブラウザを沢山開いて、全員分ログインしてやってたんですが、
途方も無い時間がかかるんで、結局テスト用のコードを追加する羽目になったり。。
あと、サーバーはローカル環境にあるので、僕はローカルIPで接続するけど
参加者はグローバルIPで接続しないといけないので、
そこらへんの対応もちょっとめんどくさかったです。。
人狼みたいに接続人数によって役職の数が変化する仕組みって、
作った事がなかったので少し悩みました🤔💦
( プログラムを書くのは ド素人なので:;(∩´﹏`∩);: )
考えたのは、マッチングしたメンバー情報を配列にして、
順番をランダムにシャッフルします。そして配列の順番の、
0,1番目 → 人狼に。
2番目 → 占い師に。
3,4番目 → 市民に。
5番目 → 裏切り者に。
6番目以降は全員市民に。
これで想定してた役職に割振る事ができたので満足ですん(⊃∪`*)

こんな感じで画面にはめ込んで、喋ってる人が誰なのかわかるようにしました(⊃∪`*)
(放送中に並び順がずれるバグがあった影響で途中からアイコン消しましたがw)
という具合で、FGC人狼は放送されていました(⊃∪`*)✌
今回の放送で、色々改善点が見えてきたので、Part2も放送したいです!(⊃∪`*)







めっちゃ楽しかったです(人●´ω`●)
寝てるところを人狼にやられるのは、恐怖でした(;´・ω・)