息子がGeminiで作ったゲームをClaudeCodeでRobloxに移植してみた
おはようございます。ほったりたです。
先日我が子とGeminiで作ったゲームの話がGemini公式noteに取り上げていただいたので、今日はその後の話を・・
GAS版の息子が作った3D ObbyというゲームをRobloxに作り替えてみたお話です。
今回は息子のゲームのステージ1をまず移植してみました。
息子がGeminiと作った元ゲーム
GAS版「PERFECT OBBY」
概要
・3ステージ × 各3回クリアでALL CLEAR
・各ステージ: パス(坂道/浮島/極細ポール)→ 螺旋タワー(マグマ上昇)→ ゴール
・マグマはトリガーに触れると上昇開始、リスポーンでリセット
ステージ構成はこんな感じです。
・STAGE 1「はじまりの草原」: 柵付きの坂道を登って、螺旋タワーへ。初心者向け
・STAGE 2「夕暮れの浮島」: 浮島をジャンプで渡っていく。落ちたらアウト
・STAGE 3「深夜の極細ポール」: めちゃくちゃ細い足場を慎重に渡る。鬼畜ステージ
どのステージも、最後は螺旋タワーを登りながらマグマから逃げるというもの。
これが結構難しくて、僕はクリアするのに時間がかかりました。
Robloxにどう移植するか
GAS版はThree.jsで全部自前実装していたんですが、
Robloxには物理エンジンやキャラクター制御が最初から用意されています。
つまり、自分で作る必要がある部分がかなり減ります。
ゲーム作るにはRobloxってとっても楽なんです。
移動、ジャンプ、カメラは全部Roblox任せでOK。
ステージのオブジェクト配置とゲームロジック
(マグマ、ステージ遷移、UI)に集中できるわけです。
開発環境: Rojo + Claude Code
Robloxの開発は通常、Roblox Studioだけで完結しますが、
現在VSCodeで実装するためにRojoというツールを導入しています
これによりRojo+ClaudeCode(もしくはCodex)で実装がかなり楽になります・・!
実際の開発フローはこうです
・今回はGASのプロジェクトがそもそもあるので、解析させる
・Claude Codeにコードを書いてもらう(Luauファイル)
・rojo serveでRoblox Studioと同期
・Studio上でテスト
という流れです
実際にできたもの(STAGE 1)
※STAGE 2,3はまだ作っていないので、現状1をクリアで全クリです。笑
今回はまずSTAGE 1「はじまりの草原」の移植が完了しました。
できたこと:
坂道パス(手すり付き)を登っていく最初のエリア
螺旋タワー(緑の足場を登っていく)
マグマ上昇ギミック(トリガーに触れると上がってくる)
ゴール判定(3回到達でステージクリア)
HUD表示(ステージ名、勝利数、高度)
GAS版の座標データを10倍スケールにしてRobloxのPart(ブロック)に変換しています。
542行のJavaScriptが、Luau 5ファイルの構成に分かれました。
src/
├── client/
│ └── init.client.luau # UI
├── server/
│ ├── init.server.luau # ゲームロジック
│ └── StageBuilder.luau # ステージ生成
└── shared/
├── Config.luau # 設定値
└── StageData.luau # ステージデータ
苦労した点: ジャンプと足場の調整
正直、ここが一番大変でした。
GAS版とはスケール感が変わってしまって、デフォルトのキャラクターサイズに対してステージが大きすぎたり、ジャンプ力が足りなかったりしました
特に螺旋タワーの部分。上の足場に頭がぶつかって登れない問題が何度も発生しました。ここはコードで調整させているから結構調整が面倒でした。
本来こういうオブジェクトは自分でRoblox Studioの方で作るのですが、コードで作りましたので、位置調整が簡単にはできないのですね。
結構時間かかりました。やはり3Dオブジェクトの配置は自分でやった方がいいかも(今回はclaudeだけでどこまでできるかにトライしてみました。)
今後やること
STAGE 1をまずは移植しました。次は他を移植する必要があります。
STAGE 2「夕暮れの浮島」の調整
STAGE 3「深夜の極細ポール」の調整
ステージ遷移のテスト
見た目の仕上げ(空の色、霧の演出など)
今回は僕1人でやってしまったので、息子の誕生日気分が落ち着いたら一緒に開発してみようと思います。
最後まで読んでいただきありがとうございました!普段は「はっきんぐパパ」として電子工作やものづくりの記事も書いていますので、こちらもぜひ覗いてみてください。
はっきんぐパパはこちら↓
https://note.com/hackingpapa



