コンテンツへスキップ
TCGON
汎用TCGシミュレーションエンジン

TCGONBuild the rules.
Run the game.

カード、盤面、フェーズ、ルール、効果。
異なるTCGを、ひとつのゲームエンジンへ。

ゲームの構造だけでなく、カードに書かれた「効果の意味」まで共通化する。TCGONは、そのためのエンジンと実行環境を開発しています。

CARDZONEPHASERULETEDLBOARD
TCGON ENGINE
SIMULATOR
HUMANAI
NEW

TCGON開発記⑥を公開しました

実戦で見つかった「暗黙のコナン前提」を取り除き、本当の汎用エンジンへ作り直すまで。

この端末からの訪問—
最新のnoteを読む ↗
コンセプト

TCGを、ゲームエンジンから考える。

一般的なカードゲームシミュレーターは、ゲームごとに専用の実装を作ります。TCGONは、ゲームの定義と共通エンジンを分離し、定義を差し替えるだけで異なるTCGを動かせる構造を目指しています。ルールやカードは「プログラム」ではなく「データ」として扱い、共通のエンジンがそれを読み解いて実行する——それがTCGONの出発点です。

ゲーム定義データとしての定義
共通エンジン汎用のゲームエンジン
実行可能なシミュレーター遊べるゲーム
データ駆動

定義はデータ

盤面・ゾーン・フェーズ・ルール・効果を、コードではなくデータとして記述します。

共通の基盤

共通エンジン

同じエンジンが定義を解釈し、ゲームを実行します。タイトルごとの作り直しを避けます。

再利用

再利用できる仕組み

一度作った仕組みを、異なるルール体系のTCGへ広げていくことを目指します。

TCGONの構成

構造と効果を定義し、同じエンジンで動かす。

TCGONは、ゲーム構造を扱う Generic TCG Engine、カード効果の意味を扱う TEDL、それらを実行する Simulator で構成されています。

Generic TCG Engine

ゲーム構造を定義

BoardZonePhaseRule
+

TCGON Effect Definition Language (TEDL)

カード効果を定義

TriggerCostTargetConditionAction
↓

Simulator

定義を読み込み、ゲームとして実行

Effect Definition / Experimental

カード効果を「文章」ではなく「意味」で扱う。

カードに書かれた文章は違っていても、ゲームとして行っている処理は似ています。TCGONでは、効果を発動条件・コスト・対象・条件・処理などに分解します。この開発中の共通表現を、TCGON Effect Definition Language——略して TEDL(テドル)と呼びます。

TCGON Effect Definition LanguageTEDL / テドル
CARD TEXT

登場時 DON!!-1: 相手のコスト5以下のキャラ1枚までをKOする

↓
TEDL
Trigger
登場時
Cost
DON!! -1
Target
相手 / キャラ
Condition
Cost <= 5
Count
<= 1
Action
KO
↓
TCGON ENGINE

ひとつの文章を、実行できる意味へ。

以前
  1. CARD TEXT
  2. ↓
    カードごとの実装
  3. ↓
    GAME LOGIC
現在
  1. CARD TEXT
  2. ↓
    意味を解析
  3. ↓
    TEDL
  4. ↓
    COMMON ENGINE
  5. ↓
    GAME LOGIC

カード効果を1枚ずつ実装するのではなく、カードの意味をTCGONが扱える形へ変換します。ここでいう Effect Translation は、人が読む言語の翻訳とは別の処理です。

検証

異なるルール体系で、エンジンを試す。

汎用性は完成宣言ではなく、異なるTCGを実際に動かして検証しています。現在はコナンとワンピースを同列のゲーム定義として扱える構造へ改修し、次のTCGでも使える基盤を整えています。

Detective Conan Card Game

シミュレーター検証

ゾーンとフェーズ構成の異なるルール体系の読み込み

検証テスト

ONE PIECE Card Game

シミュレーター検証

リーダー/ライフを持つ盤面モデルへのエンジン適合

検証テスト

Godzilla Card Game

データ収集

ルール・カードデータと固有表現の収集・整理

検証テスト

Ultraman Card Game

データ収集

異なる勝利条件とカード表現の調査

検証テスト

Disney Lorcana

データ収集

ロアを中心としたルール体系と効果語彙の調査

検証テスト

TCGONは個人開発による汎用TCGシミュレーションプロジェクトです。特定のTCGタイトルの公式サービスではありません。実在するTCGを用いた検証は、異なるゲームルールへの対応を確認するため、開発者個人の範囲で行っています。

TCGONは各TCGタイトルの公式サービスではなく、各権利者による承認・運営・提携を示すものではありません。

Language Translation

カードを、読みたい言語で。

カードタイトルや効果テキストを、必要に応じてオンデマンドで翻訳。元のカードデータを保持したまま、異なる言語でもカード内容を確認できる環境を整えています。

TEDLは効果の意味をエンジン向けに変換する仕組み。オンデマンド翻訳は、カードを人が読みたい言語へ変換する機能です。

Original Card Text
↓
On-demand Translation
↓
日本語 / English / ...
プレイ

TCGON Simulator

Builderで組み立てたTCGを、ブラウザ上で実際に動かすためのシミュレーション環境です。実体は tcgon.net で動作し、このページでは概要を紹介しています。

ゲームの状態はエンジンが一元管理し、プレイヤーの操作はコマンドとして検証されてから適用されます。人間同士はもちろん、人間とAI、そしてAI同士でも、同じ仕組みの上でゲームを進められることを目指しています。

TCGON Simulatorは現在も開発中です。機能や仕様は変更される場合があります。

  • ブラウザで動作インストール不要で、ブラウザ上で動作します。
  • 状態管理ゲームの状態をエンジンが一元管理します。
  • コマンド検証操作はコマンドとして検証されてから適用されます。
  • 複数TCG定義複数のTCG定義を同じエンジンで読み込みます。
  • 人間/AI対応人間とAIが同じ仕組みで操作します。
  • ネットワーク対戦ネットワーク越しの対戦を想定した設計です。
定義

TCGON Builder

TCGON Builderは、TCGの設定を並べるだけの管理画面ではありません。ルール・盤面・フェーズ・カード・カード効果をひとつずつデータとして定義し、ゲームとして実行可能な状態まで組み立てるための開発環境です。

「既存のTCGを再現する」ためだけの道具ではなく、いずれは自作のTCGそのものを作り、TCGON上で動かしていく——そうした環境へ発展させることを目指しています。ここで組み立てたゲームデータは、そのままSimulatorで実行できるようになることを想定しています。

ルールを定義勝利条件やターンの進行など、ゲームの根幹となるルールを記述します。
盤面・ゾーンを定義手札・場・山札など、カードが置かれるゾーンと盤面の構造を組み立てます。
フェーズを定義ドロー・メイン・バトルといったフェーズの流れを定義します。
カードを定義カード一枚ごとの属性やパラメータをデータとして記述します。
カード効果を定義カードが引き起こす挙動を、効果として組み立てます。
実行可能なデータを生成定義した内容から、Simulatorで動かせるゲームデータを生成します。
Builderで定義する
BoardZonePhaseCardRuleEffect
Generateゲームデータを生成
TCGON Simulatorブラウザ上で実行
シミュレート

人も、AIも。
同じゲーム。

人間用のルールとAI用のルールを別々に実装するのではありません。エンジンが実行可能な操作を決定し、人間もAIも同じCommand Pipelineを通ってゲーム状態を更新します。この設計により、同じ仕組みのままAI同士を対戦させることもできます。

エンジンが「今できる操作」を提示する

人間もAIも同じ候補から操作を選ぶ

同じCommand Pipelineでゲーム状態を更新する

同じ仕組みでAI vs AIも設計できる

ENGINE
AVAILABLE ACTIONS
HUMANAI
COMMAND PIPELINE
GAME STATE
将来構想

AI Simulation → Match Report → Analysis

TCGONでは今後、AIを単なる対戦相手としてだけでなく、TCGを大量にシミュレーションしてデータを生成するプレイヤーとしても活用していく構想です。多数のAI対戦を実行し、その結果を集計・分析することで、ゲームバランスを確認する材料をつくることを目指します。

AI SimulationAI同士に多数のゲームをプレイさせる
Match Report対戦結果を集計してレポート化する
Analysis勝率や傾向からバランスを読み解く
想定している分析項目の例
  • 対戦数
  • 勝率
  • 先攻 / 後攻の勝率
  • 平均ターン数
  • デッキ別の勝率
  • カードの使用状況
  • 特定カードが使われたゲームの勝率
  • 使われにくいカード
  • ゲーム終了パターン
  • AIの行動傾向

AIが自動的に正しいバランスを決めるわけではありません。AIはゲームをプレイしてデータを生成する役割で、最終的なゲームデザインとバランスの判断は人間が行います。

アーキテクチャ

定義から状態へ、一本の流れ。

TCGONは、ゲーム定義を共通エンジンが解釈し、実行可能なコマンドを算出、人間 / AIの選択を検証して状態を更新する、という流れで動きます。より詳しい話は開発記事で発信しています。

もっと詳しく知りたい方は 開発 へ。

  1. GAME DEFINITION盤面・ルール・カード・効果のデータ定義
  2. TCGON ENGINE定義を解釈する共通ランタイム
  3. AVAILABLE COMMANDS現在実行可能な操作を算出
  4. PLAYER / AI候補から操作を選択
  5. COMMAND EXECUTION選択された操作を検証・適用
  6. GAME STATE更新されたゲーム状態
  7. SIMULATORブラウザ上で描画・実行
Develop Together

TCGONで、一緒に試してみませんか。

個人開発の相談、オリジナルカードゲームの実装テスト、異なるルールやカード効果の検証。TCGONを実際の題材で育てるパートナーを探しています。

開発

オープンに開発しています。

TCGONは個人開発のプロジェクトです。単一タイトルのシミュレーターから、データ駆動の汎用エンジンへ。その開発の過程をnoteなどで発信しています。

TCGON Development Notes

2つ目のTCGによる実証から、カード効果の翻訳、暗黙の専用処理を取り除く大改修まで。6本の記事で現在地を追えます。

将来構想
For TCG Creators

TCGを作る人のために。

TCGONは、既存のTCGを再現するだけのシミュレーターを目指しているわけではありません。将来的には、自作TCGのルール・盤面・カード・効果をBuilderで定義し、Simulatorで実際に動かし、さらにAI同士による多数の対戦からゲームバランスを検証できる——TCG制作のための環境そのものを目指しています。

作って終わりではなく、動かし、シミュレーションし、結果を見て、また調整する。TCGONは、そうしたTCG開発のサイクルをひとつの場所で回せる基盤になることを構想しています。

開発サイクル

TCGONが想定するTCG開発の流れは、次の5ステップをくり返すサイクルです。

  1. 1BUILD
    TCGON Builder

    ルール・盤面・フェーズ・カード・効果を定義し、ゲームを組み立てる。

  2. 2PLAY
    TCGON Simulator

    作成したゲームをブラウザ上で実際に動かして確認する。

  3. 3SIMULATE
    TCGON AI

    AI同士にゲームをプレイさせ、多数の対戦を実行する。

  4. 4ANALYZE
    Match Report / Analysis

    対戦結果を集計し、勝率やゲームの傾向を確認する。

  5. 5IMPROVE
    Game Design

    分析を参考にルールやカードを調整し、Builderへ戻る。

IMPROVE → BUILD IMPROVE から BUILD へ。分析結果をもとに調整し、またサイクルを回します。

Roadmap

いま動いている基盤と、これから取り組んでいく方向を整理しています。実装済みの機能と、これから開発する構想は分けて示しています。

現在の基盤Current
  • Generic TCG Engine
  • TCGON Builder
  • TCGON Simulator
  • Multi-TCG Game Definition
  • TEDL
  • Card Effect Translation
  • On-demand Card Translation
  • Human / AI Command Pipeline
  • AI vs AI
次に取り組むことNext
  • TEDL Vocabulary Expansion
  • Multi-TCG Effect Analysis
  • Additional TCG Experiments
将来の構想Future
  • AI Match Reports
  • Simulation Statistics
  • Balance Analysis
  • Custom TCG Creation

現時点で、第三者が自由に自作TCGを登録・公開できるサービスが完成しているわけではありません。ここで紹介しているのは、TCGONが向かおうとしている将来の方向性です。

エンジンを動かす

エンジンを、動かそう。

TCGONは現在も開発中です。実際に動作するシミュレーターは tcgon.net にあります。