2か月でVRボクシングゲームを製作してVketで大会を開いた話(大会本番編)
「ギミックを制作できる方を募集しています!」
2022年6月10日、そのツイートに乗ってリプライしたが最後
2か月で対戦ボクシングギミックとジムワールド、大会ワールドを制作しVket杯を開催することになるとは、夢にも思わなかったのである……
ムシコロリです。
VRCボクシング Vket Summer 2022杯お疲れさまでした。少しでもVRCボクシングについて知っている方は、大会配信のアーカイブ等は以下のURLにありますので是非見ていただけると嬉しいです
1.そもそもVRCボクシングって何?
『VRCボクシングって何?』という方もいらっしゃると思うので、簡単に説明させていただきます
VRC BOXINGとは、もともとVRChatにあった「Udon Boxing」とうゲームワールドを基にして日本向けに一から制作したVRChatのボクシングゲームワールドです(※1)。
おおまかなルールは簡単で、
- 相手を殴って3回ダウンさせる
- スタミナがない状態の相手を殴ってTKOを取る
です。
ただし、Udon Boxingと違う点がいくつかあります。
- パンチスピードが一定以上出てないとパンチ扱いにならない(助走スピードも含)
- ガードが片手だけでできる
- エフェクト等がリッチになっている
- 同期周りが多少良くなっている
- リアルで身体を動かしてもらうため、リング上での移動速度が遅くなっている
- 公平性を確保するため、「アグニ(※2)」というアバターを公式アバターとして使用推奨している
- 他細かいパラメータの調整
2.VRCボクシングを作ることになった経緯
冒頭の通りです。
ボクシングギミックがもともとあって、そこに加えて何か制作するのかな……と思って話を聞いたら、まさかの一から製作だったという経緯です。
というのも、もともとVRCボクシング練習会(https://twitter.com/VrcBoxing ※3)様にて使用していたワールドUdon Boxingの更新が止まってしまい、今後VRChatで大きなアップデートがあった場合に次回以降の大会開催が不可能になってしまう恐れがあったという、やむにやまれぬ事情があったからです。
自作ワールドなら興行的にもやりやすくなるだろうという理由もあり、新しくゲームワールドを制作する人員を募集していたそうです。
私「で、いつまで作る感じですか?」
「できればVketには大会を開催したいですね……」
「Vketっていつの?」
「8月ですね……(現時点で6月10日)」
「できらあっ!」
「!?」
「ええっ!? 二か月でVket生放送に耐えうるゲームワールドを!?」
というわけで6月11日から製作が開始しました。
3.「できそうじゃね?」
さて実際に製作に入ったのですが、6月11の朝に早起きして軽くプログラムを書きました。その時に撮った動画がこちらです。
いかにもいい感じにできていますね。これからヘビィパンチやメガパンチ、ガードを実装すればゲームにはなりそうですね。
ユーザー間同期を除けば
4.ユーザー間同期との闘い、Udonsharpとの闘い、VRChatとの闘い
同期は全VRChaterの敵です。
オブジェクトのオン・オフ程度ならまあサクサク動くし実装も楽で問題はありませんが、
こ れ は 格 闘 ゲ ーム で す
かなり苦悩の日々が続きました 今回実装している内容は以下の記事にサラッとまとめてありますが、これに至るまでに相当時間の調査と実験と実装がありました。
https://www.wantedly.com/users/163384756/post_articles/418878
記事の内容を簡単にまとめて+αすると以下の通りです。
- ヒットしたかどうかの同期はSendCustomNetworkEventを使わずにマニュアルの変数同期とコールバックで行う
- グローブの追従は、VRC Object Syncを使わず、指定したプレイヤーのボーンに追従するプログラムを各プレイヤーのローカルで動作させる
- パンチを当てたかどうかはグローブのオーナーであるプレイヤー(グローブを付けている人)のみが判定を行う
そこそこ苦戦しましたが、今思うと「なんでこんなんに苦戦したんだ……?」と疑問符が出ちゃいますね……
5.ジムワールドの製作
さて、ギミックがある程度固まったところで実際のジムを製作……と言いたいところでしたが、私はボクシングジムに行ったことがありません。
なので、実際に近所にあるボクシングジムを見学させてもらいました。快く見学させてくださったジムの方には感謝しています。
が、入会はしてません、ごめんなさい……
痛いのは嫌なので
次に考えたのが、実際のワールドの構成です。
「せっかく作るんなら現実では到底無理な豪華なものにしたいよな」ということで、広いジムにしました。初期案がこちらというか、今もだいたいこんな感じです(後々アップデートしますけど)。ギミックに反してサクサク進んだので設計・製作三日です。
miyabiさん(https://twitter.com/miyabi_VRgamer) に製作していただいたゲームワールドPVがこちらです
6.試合会場の製作
後楽園ホール+eスポーツ会場をイメージして作りました(雑)。座席等以外はほぼcubeの組み合わせで作ったワンオフです
配信ギミック等も盛り込んでおり、それはまあ冒頭の配信アーカイブを見てもらった方が早いです。カメラが切り替わって見えるのが自分の作ったギミックです。
ゲームワールドと同様にmiyabiさん(https://twitter.com/miyabi_VRgamer) に製作していただいた大会PVがこちらです
7.負荷確認やスタッフ練習を兼ねたVRChat関西部杯
これもだいたい以下のブログに書いてあります。ここからさらに軽量化を行い、70人いても選手がまともに試合できる会場を完成させました
詳細:https://www.wantedly.com/id/issei_yarimitsu/items/a15629dd-efe5-4474-a791-ef06cabcbe2a
8.本番
事前にyahooニュース等で取り上げていただいた(※4)おかげなのか、本番は現地に70名以上のユーザーが集まり、youtubeの配信も1000弱の閲覧がありました。
ギミックはおおむね安定して動作して……欲しかったのですが、大会で初見のバグが二つ発生してしまい、プログラムを組んで選手同士の何百試合も見てきて「大丈夫だ」と思っていた当事者としては悔しい結果になってしまいました。
大会自体はつつがなく進行しましたが……
次回はデバッグ期間を三倍ほどとる予定です。
それでもなんとか最後までやり切りました。 選手もスタッフも、観客の皆様もご協力ありがとうございました!
※1 Udon Boxing作者の許諾も得て、ワールド内に作者のpatronサイトURLも設置してあります
※2 アグニくんはBoothで好評発売中!(https://booth.pm/ja/items/3352124)
※3 VRCボクシングを使用した大会を一年程度運営している団体です。木曜、日曜の週二回、練習会イベントも開いています。
※4 記事はこちらです。 https://news.yahoo.co.jp/articles/f476b225eaa4e1d41bf3f416d8d8f98fc539df7a