Ktory LogoKtory
Ktory Logo

Ktory

対話を中心に、ホストが拍ごとに進める物語言語

個人作者のための、対話を中心としたホスト駆動の物語言語とランタイム。セリフ、引数付き修飾子、同一ファイルの多言語が物語構造を共有し、リソースと演出はホストが実装します。

Screenplay Syntax & Discrete Step

脚本構文と離散ステップ

脚本の書式と拍ごとの選択を説明する簡易シミュレーションです。C# コアを実行せず、完全な実行意味を検証しません。実際の脚本確認にはオンライン試読器を使ってください。

sample.ja.ktr
Anchor-Decorator
1// Title: プロローグ:旅立ち
2アリス: 今日の風は、どこかいつもと違うみたい。
3 .expression(pensive)
4 .wait(400)
5 
6窓の外で落ち葉が渦を巻き、時計塔の鐘が三度鳴り響く。
7 
8アリス: 準備はいい? もうすぐ出発するよ。
9 .voice(alice_03_ready)
10 
11#choice.loop
12 * [準備はできた] -> Proceed
13 + [もう少し待って] => WaitMore
14 
15=== Proceed ===
16 アリス: じゃあ私の手をしっかり握って、離さないでね。
17 .expression(smile)
18 .sfx(dash)
19 -> end
20 
21=== WaitMore ===
22 アリス: わかった、装備を整えるのにあと3分あげる。ここで待ってるから。
23 .expression(neutral)
24 .wait(180)
25 -> return
26 
Sequencer Output BeatSuspendedAtBeat
1 (root)
Speaker:
Attached Decorators (Tags):
Core Pillars

4つのコア設計思想

Anchor-Decorator モデル

セリフと指令は論理的な停止点を作り、修飾子は演出意図と引数を持ちます。物語構造とリソース、動作、表示方法を分けて管理します。

表示と時間はホストが管理

コアは物語の制御、選択肢、履歴を管理します。ホストはゲーム状態、リソース、描画、時計、入力を管理し、次の拍へ進む時点を決めます。

共通の C# コア

コアは netstandard2.1 を対象とし、外部 NuGet 依存はありません。試読ツールは net9.0 を使い、Unity 公開処理で共有ソースを com.ktory.unity にまとめます。

単一ファイル内インライン多言語

@locale で同一ファイルの訳文を管理します。要求言語または既定言語を選び、実行中の切替でも物語の位置とセッション履歴を維持します。