このブログは、2025年12月に開催された「traP 2025年度冬ハッカソン」のブログ記事です。他の班は上のリンクをチェック!!
おことわり
ゲーム中で扱っているスタンプに、部員の顔が写っているなど配慮すべきものがあるため、ゲーム画面の一部にぼかし処理を施しています。ご了承ください。また、本ゲームの外部公開は行っておりません。
Oyoo (オヨー)
はじめましての方ははじめまして。23B の@alt--erです。普段はゲーム制作とかWeb製作、動画編集とかしたりしてます。
さて、今回の冬ハッカソンでは 04班にてNintendoSwitchのコントローラー「JoyCon」を用いた多人数対戦パーティーゲーム「Oyoo」の製作を行いました!
タイトルから内容が全く想像できませんが、一体どんなゲームなのでしょう?

フィールド上には大量のスタンプが!どうやらアイテムとしてゲットできるらしい

これはtraQの画面!と、先ほど手に入れたスタンプたちが

在りし日の友人宅を思い出す、ディスプレイに張り付くプレイヤーの皆さん!!
などなど、対面でゲームを遊んでもらえるハッカソンの機会を活かした、traP部員なら盛り上がり間違いなしのパーティーゲームに仕上げました!
それでは、開発の経緯やタイトルの由来などを見ていきましょう
ゲームコンセプト
traQのスタンプを使いこなして、最強のtraQ人間になろう!!
traQとは、traP部内で用いられているコミュニケーションツール。メッセージ送受信といった基本機能はもちろん、traP部員の性格を鑑みた様々な機能が搭載された、独自性の高いツールとなっております。
そして、その独自性の高さゆえ様々な「文化」が醸成され、traP部員の結束を高めるきっかけとなっています。
スタンプもそんな「文化」の一つ。traQでは大量のスタンプが作られ、その中には部員の共通言語になっているようなスタンプも。
今回はそんなスタンプ文化に着目し、「traP部員がその場ですぐに盛り上がれる、話題性のあるゲームを作る」という方向性で企画を進めていきました。
制作の流れ
企画段階
最初は「合成音声を使いたい」から
当班は、冬ハッカソン開催およそ1ヶ月前ほどに「合成音声(いわゆる『ボイロ』や『ゆっくり』と呼ばれる機械音声の総称)」を用いた作品を作りたい!というコンセプトにより結成されました。
実際、班員にはそれら音声を用いた動画のファンも多く、動画編集経験の人も多かったので「動画制作をする班では?」と思われることもしばしばでした。
ただ、実際に作ることにしたのは「ゲーム」。音声要素を取り入れたゲームを制作するという挑戦を、当初からの目標としていました。
合成音声について詳しく知りたい方は以下のブログ記事をご覧ください!

音声を使ってどうやって面白く?
準備期間(開発期間の1週間前に設置される、主に企画や制作プロセスを話し合う期間)に入り最初のミーティング。
ここでは、「ゲームを作ること」を決めましたが、この時点では「音声そのものを作ってみる」といったアイデアもあってかなり着地点が広かったなぁ... と思ったり
ゲームへどのように組み込むかを考えた際に、「どんなことを言わせたら/音声化したら面白いか?」を軸として考えました。
ここで辿り着いたのが「traQのスタンプ」。traPの住民は特殊な方が多く、「スタンプの名前をそのまま発音して会話する」方も一定数います。
特に「ミーム化」されているスタンプは盛り上がりが大きく、「このスタンプといえばこの人!」みたいな文化も。
「スタンプの名前」を発音させたら面白い!
一つ考えるヒントになりました。
音声をどうやって組み込む?
それでは、そのスタンプ要素をどうやってゲームに組み込むか。当初はtraP部員を育成するゲーム、といった形でスタンプ名やtraQの投稿を読み上げさせる、といったものを考えましたが実装時間の側面で断念。
そこで目に入ったのが...

「カービィのエアライダー(エアライド)」のゲームモードの一つ、「シティトライアル」です。
前半にパワーアップアイテムを集め、後半のミニゲームで勝負をする。この形式がシンプルかつ盛り上がりがあり、さらに「スタンプ要素と相性が良さそう!」ということでゲームの流れはシティトライアルを踏襲することに。
スタンプを集め、そのスタンプを使ってゲームをする。この流れを軸に具体的なゲームの中身を詰めていくことに。
開発コストを鑑みて、フィールド上のスタンプを収集する「スタンプ収集ゲーム」、集めたスタンプを使って、traQの投稿にリアクションしスコアを稼ぐ「リアクションゲーム」の2つのゲームを作り、つなげることにしました。
また、ゲームの盛り上がりのために「1画面を分割した4人対戦の実装」「コントローラを用いた操作」を組み込むことにもしました。
目指すは「traQ版シティトライアル」
4人対戦可能なパーティーゲームの雰囲気に
コントローラーを用いた操作をしたい
開発段階
スタンプ収集ゲーム
スタンプ収集ゲームパートは、主に@Suimaくんと@renkonくんが担当。ほとんどのタスクを25Bの2人に任せましたが、しっかりとゲームとして出来上がっておりtraP部員の成長速度に驚かされました。
リアクションゲーム
リアクションゲームでは、スタンプ収集ゲームパートで集めたスタンプを使ってtraQの投稿にリアクションしていきます。
複数人プレイに対応すべくUIを配置する、データのやり取りを簡易的にするためにシーンを分けずに制作しているなどの工夫がありました。

なお、traQの投稿は収集機能を作成し半自動化しています(投稿のスクショ撮影は手動)。
traQでのBOT制作の経験も活きた開発となりました。
コントローラ接続
今回の開発一番の山場となったのが、このコントローラ接続のパート。
今回はコントローラとして、NintendoSwitchのコントローラ「Joycon」を利用することにしました。
Joyconを用いる経緯としては以下のようなものがありました
- 複数人プレイに対応する上で、各人がコントローラを持つことが必須となること
- 可能な限りシンプルな作りで、操作説明ほぼ無しで直感的に操作してもらえること
- 無線での接続に対応できること
- 素人でも簡単に接続できるプラクティスが存在すること
特に一番下の要件に関しては、Joyconを使ってみよう!と思った時にかなり気にした点で、ちょっとした調査で可能性が薄かったら別の方法を検討する(人数を減らすなど)ところでした。
そんな状況で出会ったのが、「Joyconlib (https://github.com/Looking-Glass/JoyconLib) 」と呼ばれるライブラリ。
これは、Unity上で作成されたプロジェクトに、Joyconでの操作を簡単に導入できるよう必要な(特に低レイヤーな部分の)処理をパッケージ化したものになります。
最も難しい部分である通信の制御をクリアできたため、Joyconを活用したゲームにすることを決定しました。

開発最終日までバグ取り等粘り、演出等実現できなかった部分やコントローラ関連で取り除けなかったバグがあったものの、ゲームとしてプレイできる作品に仕上がりました!!
受賞は叶わずでしたが、発表や試遊での盛り上がり、JoyConを用いるという技術的な成長を叶えることができたのは良かったでしょう。ゲームの完成度上げて、来年こそは!!
各メンバーの感想
@Alt--er
04班で実質(?)リードのポジションかつプログラマをしていたAlt--erです。冬ハッカソンは3回目、ゲームとしての冬ハッカソンは2回目の出場となります。
今回のハッカソンでは、「1週間を持て余さず、ただ未完のままで終わらないようにする。『ゲームと呼べる何か』を作る」という点を意識していました。
結果として、計画よりややスケールダウンしてしまった部分はありますが、ひとまず遊べるものを試遊会の場で出せたのは大きな進歩でしょう。
また、「何かユニークな事柄に挑戦する」というのも持っていた目標となります。正直、経験こそあれ技術的 / センス的な面ともに他の部員にまだまだ及ばないところも多い自分。
開発期間が長い冬のハッカソンだからこそ、例えばコントローラ対応といった新たな知見を身につける機会にもできると考えました。
アイデア勝負になりやすい、インパクトのぶつかり合いであるところのハッカソン。部員の注目を受け、さらに「ハッカソンの場で」面白いと思ってもらえるようなゲームって何か? これを考えることができていたような気がします。
最後になりますが、チームメンバーの皆様には大感謝です!
チーム発起のきっかけとなり、作品上では多くのtraP部員にインパクトを与えたスタンプ音声の作成者、@0mnadoくん。
ひたすらに、黙々とグラフィック素材を作ってくれた @mirin くん。このゲームにぴったりな、ポップで楽しげ、ユーモアあるイラストを提供してくれました。
同じく、ゲームの雰囲気にマッチしたBGMを提供してくれた @Carroto くん。最後まで音楽の進捗を産んでくれて感謝です!方向性も一緒に決めることができて助かりました。
プログラムを担当してくれた @Suima くん @renkon くん
本当にUnity初心者...? ってほどまで物事を素早く吸収してくれました。自分がもうちょっと設計詰めていれば、2人も動きやすかったかなぁ.. とちょっと反省。
それでも、その(汚い)設計を乗り越えて実装を進めてくれた2人には圧倒的感謝!!改めてありがとうございました!!また同じチームで開発したいなぁ...
@0mnado
合成音声を用いた作品を作りたい!とtraQで呟いたところAlt--er先輩とSuima君が声をかけてくれて、合成音声を用いたゲームを作ることに。
冬ハッカソン期間中は課題が忙しかったですが最低限何かしたいと思い、結果的にスタンプの音声を担当することになりました。
長音の調声が難しかったですが、調声後の音声を聞いてみると面白く、特にずんだもんがオヨーって言ってる状況が面白かったです。(ちなみに作品発表の時にどのスタンプを拾ってもオヨーと言うバグが発生して腹抱えて笑いました)
時間の都合上断念したゲーム制作の部分、次のハッカソンではやっていきたいです。
@mirin
絵を描きました
楽しかったです。やはり何らかの目的のために何かをするということは良い経験になるなと感じました。
ぶっちゃけ力不足を常時感じているかんじではありましたが、身の程をわきまえている分無理に背伸びしないとか、あるいはちょっとするとか、時間をいっぱい割くとか、頑張り賞ってとこやねだったと思います。
今後もっと頑張らないとなとも思いました。夜中にも絶えずプログラムチームがgit更新していたのをすげーって指を咥えて見てましたが、そういうのもわかってた方が自分のすべきことももっと明確になってたと思うし、あるいはもっと貢献できただろうし、普通にもっとあのときああすりゃよかったニャとか、キャラクター考えるのむずかしーとか、何するのもむずかしーとか、とにかく色々と貴重な収穫が得られました。
チームメンバーの皆々様ありがとうございましたと、誘っていただいたことにも感謝したいです
でした。
@Suima
雑用兼プログラマのSuimaです。
普段は††をしています。
私がてんやわんやしている間にものすごい速度でゲームができあがっていきました…ひぇぇ…
所用あって試遊会には行けなかったのですが、ウケていたらしいです。よかった。
@rencon
プログラマー(兼雑用)を担当しました renkonです。普段も自認プログラマーやってます
えー、Unityわからんおじさんは名乗れないくらいになりました (圧倒的成長💪)
Giteaでの共同開発にも慣れてきたのでそろそろ†経験者以上†を名乗って行きたいですね。
ゲーム開発の経験がなかった分、不安でしたが一週間必死にコードを書いていたらC#さんとは仲良く慣れました!Unityエディターさんはもうちょっと時間がかかりそうです(汗) (MVPパターン?知らない子ですね、)
試遊会でも作ったゲームが思ったよりウケてて、頑張った甲斐があったなと!!
チームメンバーにも恵まれて自分なりに満足のハッカソンでした!ありがとうございました!
(これは余談ですが、) 「Alt--erさんをどれだけサポートできるかが4班の成功する鍵だ(意訳)」と他班のある人に助言をもらっていました。なので、意思決定以外の雑用の部分を積極的に担うムーブを最初から意識しました。兼雑用担当としてはここも頑張れた気がします
それでは皆さん、また次回の記事でお会いしましょう!
