Roblox ゲームパイプライン
1つのゲームを最初から最後まで、開発者が各ゲートを承認しながら進めます。このスキルは指揮者です。各フェーズは、作業を行うスキルやツール、そのフェーズで生成すべきもの、完了の判断基準を示します。それらのスキルがすでに説明している内容を書き換えず、フェーズ開始時にロードしてください。
SK = このスキルフォルダ。PB = あなた自身の任意のプレイブック:<playbook>/ フォルダに、game-design/、building/、engineering/、thumbnails/ などのトピックフォルダに分類された汎用レッスン集。まだ持っていない場合は、以下の PB の指示はスキップし、レッスンが出てくるたびに作成を始めてください。
以下に挙げるコンパニオンスキル(studify、roblox-ui-maker、roblox-vfx、roblox-game-score、claude-music、デザインアドバイススキル、jest-luau、scrapling、agent-browser)と meshlab ツールキット(github.com/zriptic/roclicks-skills、フォルダ meshlab/)はオプションです。インストールされていない場合は、同じ「生成物」と「ゲート」を使ってそのフェーズを直接実行してください。
最初に行うこと
- ゲームフォルダを見つけるか作成する:
<projects>/<slug>/。SK/templates/GAME.mdをGAME.mdとしてそのフォルダにコピーします。このファイルが唯一の情報源です:フェーズの状態、決定事項、プレイスIDとユニバースID、アセットID、未解決の質問。各フェーズの終了時と、決定が下されるたびに更新します。このゲームの新しいセッションはGAME.mdを読むことから始めます。 - メモリを読む: このゲームと開発者の定常ルールについて。ルールの概要は
SK/references/rules.mdに、実測されたエンジンとツールの事実はSK/references/gotchas.mdにあります。最初のStudio呼び出しの前に両方を読んでください。 - Studioを見つける: すべての編集には1つのStudio MCPサーバーを使用します(このスキルはコミュニティの
robloxstudioMCPサーバーに対して作成されました。公式の組み込みRoblox_Studioサーバーはupload_imageにのみ使用します)。書き込みの前にどのプレイスが開いているかを確認してください:同じデフォルト名を持つ複数のプレイスが開いていることがよくあります。 - 実行するフェーズを計画し、1つのメッセージで伝える: フェーズ、何を生成するか、どのスキルを使うか。リクエストに不要なフェーズはスキップします。既存ゲームのリメイクはフェーズ0「study」から始め、全く新しいアイデアはフェーズ0「concept」から始めます。
フェーズ
| # | フェーズ | 生成物 | スキル/ツール |
|---|---|---|---|
| 0 | コンセプト/調査 | GAME.md のピッチ+参考資料分析 | デザインアドバイススキル、SK/references/study-a-game.md、scrapling / agent-browser で調査 |
| 1 | デザイン+経済 | PLAN.md:コアループ、進行、収益化、数値;ペーシングシミュレーション | デザインアドバイススキル、PB/game-design/*、sim/ スクリプト(Python または luau) |
| 2 | ワールド | Studio内のマップ、スタッドスタイル、見えるすべてのピースをmeshlabモデルに | meshlab(SK/references/meshlab.md);レイアウトコードがベイクしたモデルを配置;レイアウトのアイデアに PB/building/* |
| 3 | モデル | すべてのプロップ、建物、乗り物、キャラクターギアをmeshlabモデルとして、MeshDataにベイク | meshlab(SK/references/meshlab.md、並列モデリングエージェント);クリーチャーはSDFスカルプト;開発者が依頼した場合のみ Meshy/Blender(SK/references/models.md) |
| 4 | システム | サーバー/クライアント Luau:データ、リモート、ループ、プロダクト | PB/engineering/*、テスト用 jest-luau、純粋ロジック用 luau CLI |
| 5 | UI | すべての画面、まずHTML、次に実際のScreenGui | roblox-ui-maker(常に;LESSONS.md を読む) |
| 6 | VFX | すべての重要な瞬間のパーティクルエフェクト | roblox-vfx(LESSONS.md を読む) |
| 7 | オーディオ | 音楽キュー+SE、SoundGroups | roblox-game-score、claude-music*;SK/references/rules.md に記載されている、検証済みの再利用可能なUIサウンドIDを保持する |
| 8 | QA | 修正済みの欠陥リスト;スクリーンショット;ループタイミング | SK/references/qa.md |
| 9 | ローンチ | サムネイル、アイコン、プロダクト、公開されたプレイス、分析 | SK/references/launch.md |
| 10 | ライブ運用 | 分析の読み取り、次のアップデートの計画 | SK/references/launch.md(分析)、デザインアドバイススキル |
フェーズ2〜7は、フェーズ1が承認されれば並行して実行できます。ワールドとそのUIは互いに待つ必要はありません。システム(4)がQA(8)のゲートになります。
フェーズゲート(「完了」の意味)
- 0 → 1: 開発者がピッチとコアループをそれぞれ1文で同意する。
- 1 → ビルド:
PLAN.mdが開発者に承認される;シミュレーションが意図したペーシングを示す(最初のアップグレードは1分以内、目標ウィンドウ内での初リバース、停滞区間なし)。数値は「雰囲気」ではなくシミュレーションから得る。 - 各ビルドフェーズ: 「コンパイルが通った」ではなく、測定とスクリーンショットで検証する(
qa.md参照)。開発者にスクリーンショットを見せ、質問し、フィードバックを作業中のスキルのLESSONS.md(UI、VFX)またはメモリに書き込む。 - 8 → 9: ループがプレイテストで最初から最後まで実行され、
get_runtime_logsにエラーがなく、モバイルレイアウトを確認し、12枚以上のプレイヤー身長からのスクリーンショットをレビューする。 - 9: 開発者の明示的な許可なしに公開しない(公開、アップロード、Dev Products、価格変更)。
フェーズの並行実行(レーン)
大規模なプッシュには、独立したフェーズごとにバックグラウンドサブエージェントをレーンとして使用します(Agentツール):ワールド、UI、VFX、オーディオ。ルールと既製のレーンプロンプトは SK/references/lanes.md にあります。Studioは1つの共有リソースです:一度に1つのレーンだけが特定のプレイスに書き込み、他のレーンはファイル(HTML UI、テクスチャ、モデル、音楽)を準備してインポート用に渡します。
常に
- デフォルトでStudスタイル。ただし、概要や参考資料が別途指定している場合は除く。
- エフェクトには3Dオブジェクトではなくパーティクルを使用する。
- HTMLファーストのUI。アイコンはプロジェクトの選択したアイコンパックからのみ使用し、絵文字は使用しない。
- 見えるものはすべてmeshlabで作成する(開発者のルール):ワールド、プロップ、乗り物、ギア。パーツは見えないコライダー、トリガー、シート、スポーンにのみ使用。MeshDataにベイクし、クライアントが再構築してApplyMeshesする(
SK/references/meshlab.md)。フリーモデルは使用しない。 - 開発者に見せる前に、スクリーンショットと測定で自分で検証する。
- 費用がかかるもの(Meshyクレジット、アップロード、Robux価格のプロダクト)と公開前のものは、実行前に許可を得る。
- Luauは
.rbxmx+import_rbxmを通してプッシュする。文字列内に\nがあるものには決してset_script_sourceを使用しない(gotchas.md)。 - すべての決定、ID、レッスンを記録する:このゲームについては
GAME.mdに、ゲーム横断的な事実はメモリに、汎用レッスンはPBに(ゲーム名やシークレットは含めない)。