ModMix — 2つのゲームを混ぜて新しいゲームコンセプトを生み出すAIツール
(modmix.io)2つのゲームとメカニクスタグ3つを入力すると、AIが1ページのゲームデザインドキュメントとコンセプトアートを生成してくれるツールをサイドプロジェクトとして作ってローンチしました。
非開発者として、アイデアだけでサービスをローンチしてみる経験を積んでみたくて、インディーゲームへの関心も高かったのでこの方向性を考えました。
3週末スプリント、累計コストは $0.14。Next.js 15 + Anthropic Claude + fal Flux schnell + Upstash + Vercel Pro (Fluid Compute)。
🔗 https://modmix.io
作った理由
「どんなゲームを作ってみようか」と考えるときに、インスピレーションのきっかけになる trigger があるといいと思いました。
ChatGPT に一度聞いて終わりではなく、入力 → 出力が資料のように定型化された結果を受け取りたかったです。
入力・出力
- 入力: 2つのゲームタイトル + メカニクスタグ3つ(30個の whitelist から選択)
- 出力: 1ページのゲームデザインドキュメント (title / hook / core loop / 3~5 systems / scope / playtime) + Flux コンセプトアート
- デモ: https://modmix.io (会員登録不要、IPごとに1日10回)
3 weekends スプリントの構成
- W1 (Anthropic Claude): JSON スキーマ定義、拒否ケース処理(悪口・禁止語)、Upstash rate limit
- W2 (fal Flux schnell + 共有カード): Edge runtime ImageResponse で OG カード 1200×630、Threads/X ディープリンク
- W3 (Vercel デプロイ): Pro tier + Fluid Compute (300s budget) — Anthropic 20s + fal 15s のチェイニングのため
技術的な判断いくつか
- Anthropic vs OpenAI: 拒否ケース(adversarial input)の処理は Claude のほうがよりすっきりしていた。JSON flag でモデルが自律的に拒否し、サーバーは分岐だけ。
- Flux schnell vs dev/pro: 10倍安く、コンセプトアートの quality も許容可能。まずはコスト制御を優先。
- API 分離: /api/generate (Claude only, ~4s) → テキストを即時レンダリング / /api/image (fal, ~5s) → 画像を差し替え。体感待ち時間 11s → 4s。
- OG カード payload: concept + imageUrl の単一 base64 query string (
?c=)。X の URL 上限 2KB 以内で動作。next/og edge runtime。 - rate limit: IP ごとに1日10件。Upstash Redis。急増時は 5/day のホットフィックスを準備。
コスト
- 累計 $0.14 (W1+W2 合算、Anthropic + fal + Upstash)
- daily $5 alert を有効化。急増時は rate limit 強化またはモデルのダウングレード。
限界 (v0.2 backlog)
- プロンプトの quality。出力コンセプトは coherent ではあるが、interesting とまではまだいかない。ローンチ後30日分のデータで reground 予定。
- 共有 URL が base64 query のため長く、見た目も良くない。短縮 URL = DB・固有 ID が必要 → v0.2。
- 結果保存・履歴・再生成はすべて v0.2(auth インフラが必要)。
まだコメントはありません。