Slay the Spire型ローグライクカードバトル
アーキテクチャ設計と商用化プロセス

技術調査レポート · 2026年5月14日 · Game Architecture Roguelike Deckbuilder Commercial Release

本レポートは、商用化を前提とした Slay the Spire 型ローグライクデッキビルダーの開発に必要な アーキテクチャ設計の全体像 と、企画から Steam リリース後運用までの開発プロセス を整理したものです。エンジン選定、コアゲームアーキテクチャ、データ駆動設計、Mod対応、 バランス調整、チーム規模・予算・スケジュール、リリース戦略の各観点で実務的な指針を示します。

目次
  1. ジャンル特性と市場ポテンシャル
  2. エンジン選定(Unity / Godot / 自作)
  3. コアアーキテクチャ:3層構造 + Action Queue
  4. カードシステムと効果定義
  5. マップ生成・シード・セーブ設計
  6. データ駆動バランス調整
  7. Mod対応アーキテクチャ
  8. 開発プロセスとチーム構成
  9. Steamリリース・価格戦略
  10. リスクと落とし穴
  11. 推奨ロードマップ(12ヶ月)

1. ジャンル特性と市場ポテンシャル

ジャンル売上順位
No.1
Steam インディー全ジャンル中、推定中央売上トップ
2019年以降の参入数
~99本
他ジャンル比で意外と少ない(Game World Observer)
推奨価格帯
$15〜$20
2025年データで最も投資効率が良い帯
Steam ピア中央売上
~$249
19,000本中の中央値。差別化が必須

ローグライクデッキビルダーは 「インディーで最も商業的に成功しやすいジャンル」 と評されつつも、Slay the Spire・Monster Train・Inscryption・Balatro 等の成功作の影に 多数の埋没作があります。Slay the Spire 2 や Balatro の登場でジャンル全体が再加熱しており、 2026年現在も新規参入の余地はあるものの、明確な差別化軸(テーマ性・メカニクス・テンポ) なしでは中央売上の壁を超えられません。

商用化の前提
Steam 中央売上 $249 はジャンル全体ではなく Steam 全体の数字。デッキビルダーは中央値が高い一方、 「Slay the Spire の劣化版」と認識された瞬間に売上が崩れる 競争激しい市場でもあります。 PoC段階で 1つの新規メカニクス をデモで見せられるかが、生存ラインです。

2. エンジン選定(Unity / Godot / 自作)

選択肢 長所 短所 商用判断
Unity 6 2Dアセット・プラグイン豊富、人材確保しやすい、コンソール移植容易、URP/2D Renderer 安定 $200k売上以降は$2,040/年/席、Asset Store依存度高くなりがち チーム3名以上 / コンソール展開予定なら第一候補
Godot 4.x MITライセンス、ホットリロード約0.3秒、2Dは事実上Unityと同等以上、Slay the Spire 2 採用実績 3Dは未成熟、コンソール公式サポートなし(W4社経由)、人材プール小 ソロ〜2名の小規模、PC/モバイル先行なら最有力
LibGDX (Java) Slay the Spire 1の実績、Mod文化が成熟、JVMによりMod読み込み自由度が高い UI構築が面倒、モバイル/コンソール展開で負債、若年人材が少ない Mod文化を売る場合のみ。新規プロジェクトでは非推奨
自作エンジン 完全な制御、特殊な演出が可能 商用ROIで成立しにくい、人材教育コスト 原則 非推奨。差別化は中身で出すべき

実務上の 推奨は Godot 4.x(小規模) / Unity 6(中規模・コンソール志向) の二択です。ホットリロードの差は数百回のイテレーションで効いてきます。 Slay the Spire 1 が LibGDX、続編 Slay the Spire 2 が Godot を選んだ事実そのものが、 2026年時点のジャンル定石を示しています。

3. コアアーキテクチャ:3層構造 + Action Queue

Slay the Spire 系のターン制カードバトルは、UI/演出と戦闘ロジックを密結合すると バランス調整・Mod対応・テストの全てが破綻します。商用品質では以下の 3層分離 が事実上の標準です。

Presentation Layer (View) UI, アニメーション, 演出, 入力受付(純粋にロジックを購読/再生するのみ) CardView / HandUI CombatRenderer VFX/Animator SFX/AudioBus Domain Layer (Pure Logic) CombatState, ActionQueue, Effect解決, ダメージ計算(テスト容易・決定論的) CombatStateMachine ActionQueue / Effects EventBus (Publish) RNG (Seeded) Data Layer (Static + Runtime) JSON/CSV/ScriptableObject — Card / Relic / Enemy / Floor / Run状態 cards.json relics.json enemies.json save_slot_*.dat
図1. View / Domain / Data の3層と依存方向(Domain は View を知らない)

3.1 Action Queue(命令キュー)

カード使用 → ダメージ → 状態異常付与 → 反応 → ドロー、といった連鎖を 1フレームで全解決 すると不正な状態遷移が起こります。Slay the Spire 系では、すべての効果を GameAction として キューに積み、毎フレーム1〜N個ずつ消化する Action Queue パターン が定石です。

// 概念コード
queue.push(new DamageAction(target, 6));
queue.push(new ApplyPowerAction(target, "Vulnerable", 2));
queue.push(new DrawCardAction(player, 1));
// → CombatState.update() がキューを順に解決し、
//    各解決後に EventBus.publish(CardResolved/DamageDealt/...) で View に通知

3.2 EventBus(疎結合のイベント配信)

レリック・パッシブ・状態異常の効果は 「いつ・何が起きたら発動するか」 という反応型ロジックです。 Domain 層が OnDamageDealt / OnCardPlayed / OnTurnStart 等を EventBus に publish し、効果側が subscribe する構成にすると、効果同士の組み合わせ爆発を回避できます。

3.3 ECS は使うべきか

結論:ECS は本質的には不要。Slay the Spire 系は同時アクティブなエンティティ数が 数十〜百程度で、ECS のキャッシュ効率の恩恵を受けません。 OOP + Composition + EventBus の組み合わせの方が、カードや効果の表現力で勝ります。 ただし大量Mob戦が中心の派生ジャンル(例: Vampire Survivors型の派生)なら ECS を検討する余地があります。

4. カードシステムと効果定義

4.1 データ駆動 vs スクリプト埋め込み

カード数が100枚を超えるあたりから、「カード = データ + 効果ID列」 という データ駆動アプローチでないと運用不能になります。設計選択肢は3つあります。

方式表現力ローカライズMod適性備考
純粋JSON + 効果enum シンプル。複雑カードを表現しきれない
JSON + 内蔵DSL 推奨。 "draw 2" のような小さなDSLで90%カバー
コードクラス継承 ○(要コンパイル) Slay the Spire 1 方式。 1〜2人開発で全権限を持つ場合に有効

4.2 カードデータの最小スキーマ例

{
  "id": "strike_basic",
  "name_key": "card.strike_basic.name",
  "cost": 1,
  "type": "attack",
  "rarity": "starter",
  "target": "single_enemy",
  "effects": [
    { "op": "damage", "value": 6, "scaling": ["strength"] }
  ],
  "upgrade": { "effects": [{ "op": "damage", "value": 9 }] }
}

name_key をローカライズキーにし、テキスト本体は別ファイルに分けるのが基本です。 効果の op を有限個のプリミティブ(damage / block / draw / apply_power / energy / discard / exhaust …) に絞ると、ロジック側のテストが網羅可能になります。

5. マップ生成・シード・セーブ設計

5.1 シードRNG

ローグライクは 「同じシードで同じラン」 を保証するのが原則です。 System Random を直接使うと再現性が破綻するため、独自のSeededRandom をラン全体で使います。 さらに、用途別に分割したRNGストリーム(マップ用 / カード報酬用 / 敵パターン用)を 持たせると、ある乱数消費の追加が他系列に影響するのを防げます。

5.2 マップ生成

Slay the Spire のフロアマップは「列数固定 × 列内ノード数可変 のDAG」を パス再帰生成 + 後処理(交差排除・最終ボス強制収束)で作る方式です。 生成ロジックは Domain 層に閉じ込め、UI は 生成済みノード列 を受け取って描画するだけにします。

5.3 セーブシステム

商用品質では以下の3点が必須です。

セーブ対象は「ラン状態」「永続メタ進行」「設定」「実績」の4ファイルに分離し、 Steam Cloud と互換のあるシンプルなファイル名規約(例: save_slot_1.dat)にします。

6. データ駆動バランス調整

Slay the Spire 開発チームは、少人数では数百枚のカードを手動で調整できないと判断し、 「カードを束(archetype)で追加 → メトリクスで彫刻する」 方式を採用しました。 商用化を狙う以上、リリース直後からこの仕組みが必要です。

最重要KPI(Slay the Spire 開発知見)
① ピック率(Pick Rate):カードが提示された時に選ばれる割合
② 勝利デッキ含有率(Win Rate in Deck):勝利したランのデッキに含まれていた割合
両者の乖離が大きいカードはバランス上の警告(過小評価/過大評価)

6.1 必須テレメトリ

6.2 オプトインとプライバシー

PII(個人特定情報)を含めない・初回起動でオプトイン確認・ストアページとプライバシーポリシーで明示 の3点はEU/カリフォルニア州規制およびSteam規約上で必須です。

7. Mod対応アーキテクチャ

Slay the Spire の長寿は BaseMod / ModTheSpire を中心とするMod文化 に支えられました。 商用ローグライクデッキビルダーが2024年以降、ジャンル平均より長くプレイされる条件として Mod対応はほぼ必須要素です。設計選択肢は次の通り。

方式導入容易性表現力採用例
JSON-only データMod 多数のインディー
Lua/JSスクリプトMod Balatro (Lua)
ネイティブDLLパッチ Slay the Spire 1 (Java)
Steam Workshop統合 配布レイヤとして上記と組合せ

実務的な推奨は 「JSON-onlyデータMod + 限定的なLuaフック」 のハイブリッド構成。 Cardの追加・差し替えはJSON、特殊効果のみLuaフック関数で記述させる方式が、 導入のしやすさと表現力の両立に最も近づきます。

8. 開発プロセスとチーム構成

8.1 推奨チーム構成

役割必要工数(FT換算)主な責務
ゲームデザイナー / ディレクター1.0カード設計・バランス・テレメトリ分析
プログラマ1.0〜2.0コアアーキテクチャ・ツール・運用
2Dアーティスト0.5〜1.0カードイラスト・UI・アイコン
サウンド0.2〜0.5BGM 10〜15曲・SE 200〜300個(外注可)
QA / コミュニティ0.3〜1.0EA期はコミュニティ運営も兼務

8.2 予算とスケジュールの目安

想定予算(小規模)
$50k–$150k
2〜3名 / 12〜18ヶ月
想定予算(中規模)
$300k–$800k
4〜6名 / 18〜30ヶ月
月次バーンレート
$10k–$30k+
4〜6名チーム想定(地域・契約形態で変動)
最低必要カード数
~200枚
クラス3つ × 60〜70枚相当

9. Steamリリース・価格戦略

9.1 リリースまでの流れ

  1. Steamworksアカウント作成(個人 or 会社)
  2. Steam Direct手数料 $100(売上$1,000で実質返却)
  3. 納税書類W-8BEN等提出(米国外開発者)
  4. ストアページ作成 → Valveレビュー(合法性チェック、品質判定ではない)
  5. Steam Next Festへのデモ出展(露出最大の機会、年3回)
  6. Wishlist 7,000以上を目標にプロモーション
  7. リリース → 初週10〜20%割引で可視性アルゴリズムに乗せる

9.2 価格と収益分配

項目条件分配
Steam収益分配$10M未満開発70 / Valve30
$10M〜$50M開発75 / Valve25
$50M超開発80 / Valve20
推奨価格初作・実績なし$5〜$15
標準的なEA品質$15〜$20
1.0 リリース/高品質$19.99〜$24.99

9.3 Early Access戦略

Slay the Spire・Hades・Dead Cells の3作はいずれも Early Access期間に売上の半分以上を獲得 しています。デッキビルダーは「コミュニティとカードを作る」相性が極めて良く、EA期に 「カード追加バッチ」を月次で更新するロードマップが定石です。

10. リスクと落とし穴

11. 推奨ロードマップ(12ヶ月モデル)

Phase 0: プロトタイプM1–M2

1クラス・カード30枚・敵5体・3フロアでコアループを完成。 Domain層 + Action Queue + EventBus を最初に作り、UIは仮置きで可。 この時点で 1ランをプレイ可能 にする。

Phase 1: バーティカルスライスM3–M4

1クラスを完成品レベル(カード70枚 / レリック40 / ボス3)。 演出・SE・BGMも本番品質。Steamストアページ公開 + Wishlist集めを開始。

Phase 2: コンテンツ拡張M5–M8

2クラス目・3クラス目を追加。テレメトリ実装、内部Closed Beta開始。 Steam Next Fest出展でデモ公開、ストリーマーへの個別アウトリーチ。

Phase 3: Early AccessリリースM9

$14.99〜$17.99でEA開始。月次パッチ計画とコミュニティDiscordを公開。 最初の3パッチはバランスとUX改善に集中、コンテンツ追加は4ヶ月目から。

Phase 4: 1.0リリースM12〜(実態は EA + 12〜18ヶ月)

4クラス目・新ボス・難易度ラダー(Ascension相当)・Mod APIを実装。 価格を $19.99〜$24.99に引き上げ、20%以上の割引を初週設定。 その後はDLC / 新クラス追加で長期収益化。

12. 結論

Slay the Spire 型ローグライクデッキビルダーの商用化において、技術的成功の鍵は 「Domain と View の徹底分離」「データ駆動カード定義」「EventBus + Action Queue」「シードRNGとテレメトリ」 の4点です。これらは初日から組み込まれていなければ、後付けでは機能しません。

ビジネス的成功の鍵は 「1点の独自性」「Early Access期のコミュニティ運営」「データ駆動バランス調整」 の3点。技術と運営の両方が噛み合って初めて、ジャンルの中央売上を超えられます。 エンジンはGodot 4またはUnity 6、チームは2〜6名、予算$50k〜$800k、期間12〜30ヶ月が 現実的なレンジです。


主要参照情報