﻿# 高速戦闘ルール for ナラティブTRPG ver 2.02

-----

## 0. 目的

本ルールは、複数対複数の戦闘を2〜3ターンで解決するための簡略戦闘システムである。
ナラティブ進行を阻害せず、結果に緊張感と選択を生むことを目的とする。

> **【ナラティブ優先の原則】**
> 圧倒的な実力差（例：PCが英雄級・熟練級で、敵が一般人1人や少数の雑魚など）がある場合、または状況的に一方的であると判断される場合、数値的な戦闘処理をスキップしてよい。本例外は本体第1.1項より優先される。
> 
> **処理:** GM（AI）はダイスロールを行わず、PCの強さを際立たせる演出のみで即座に決着を描写する。この場合、HPや魔法スロットの消費は発生しない。ただし、プレイヤーが戦闘描写を求めている場合は戦闘フェーズに入る。

-----

## 1. 基本構造

### 1.1. 陣営単位解決

戦闘は個別の行動順を持たず、「PC陣営」と「敵陣営」ごとに一括で処理する。

### 1.2. 敵の基本構造

敵は以下の3種に分類される：

|種別      |AP算出      |用途       |
|--------|----------|---------|
|**雑魚**  |固定AP      |数で圧をかける用途|
|**エリート**|固定AP ＋ 1d6|戦闘の中核戦力  |
|**ボス**  |固定AP ＋ 3d6|シーンの主役   |

-----

## 2. AP（アクションポイント）の設計指針

### 2.1. 定義

APは戦闘能力の総合値であり、攻撃・防御の双方に影響する。陣営内に複数の戦闘員がいる場合、「参加者全員の基礎AP」および「装備補正」をすべて合算したものを陣営の最終APとする。

### 2.2. PCの基礎AP（ダイス数）

PCのランクに応じて、AP算出に使用する基礎ダイス数（N）が決定される。
このダイス数は戦闘中のAP算出にのみ使われ、それ以外の通常判定では原則3d6を使うことに留意せよ

|ランク |基礎APダイス |行為判定ダイス|
|----|--------|-------|
|一般人 |1d6（N=1）|3d6（N=3）|
|駆け出し|2d6（N=2）|3d6（N=3）|
|熟練  |3d6（N=3）|3d6（N=3）|
|英雄  |4d6（N=4）|3d6（N=3）|

### 2.3. 敵のAP・HP差分設計

敵の強さは、PC陣営の平均ランク（ダイス期待値）に対して以下を基準とする。

|種別  |APの差分          |HP        |
|----|---------------|----------|
|雑魚  |PC平均との差 −2 〜 −4|平均差分 × 2  |
|エリート|PC平均との差 ±0 〜 +2|平均差分 × 2.5|
|ボス  |PC平均との差 +3 〜 +6|平均差分 × 3  |

-----

## 3. 敵能力と編成のルール

### 3.1. 敵能力の制限

効果は「±1〜2」程度に抑え、複雑な処理は禁止する。1行で説明できる能力のみ採用すること。

（例：攻撃補正 AP+1 ／ 防御補正 防具+1 ／ 状態干渉 敵AP-1 ／ 特殊 防御時+2、再生5など）

### 3.2. 数と編成

- **雑魚：** 2〜5体で運用。複数の敵が存在する場合、[敵AP ＋ 敵数ごとに+1] の「群れ補正」を適用する。
- **エリート：** 1〜2体。
- **ボス：** 原則1体。

### 3.3. 難易度調整

- **弱い：** AP −1
- **強い：** AP +1
- **長引く：** HP −20%
- **瞬殺：** HP +20%

PCがパーティーを組んでいる場合、戦力すべてを足したAP期待値分、敵の数を増やすか強い敵を配置すること。

-----

## 4. 戦闘手順とPythonダイス制御プロトコル

戦闘中のすべてのダイス判定は、本体ルール第3項の「4フェーズ直列フロー」に完全に従う。他のダイス数に脳内が汚染されるのを防ぐため、AIは実行時に必ず変数（N）を厳密に指定すること。

### 4.1. 戦闘セットアップ `[MODE: SETUP]`

戦闘ラウンドの開始時、AIは状況を描写したのち、両陣営の数値を計算し、本体第3.3項に準じて以下の戦闘ログのみを出力して一時停止（PAUSE）すること。

**【出力形式：BATTLE_SETUP】**

```
・PC陣営基礎AP: [ランクに応じたNd6] + 装備補正[数値]
・敵陣営基礎AP: [固定値、またはエリート/ボスのダイスを含むNd6] + 補正[数値]
・待機メッセージ: 「両陣営のAP算出ダイスを振ります。『戦闘開始』と入力してください。」
[SYSTEM: PAUSE FOR USER INPUT]
```

### 4.2. 戦闘ダイスロール実行 `[MODE: ROLL]`

プレイヤーの合意後、AIは必ずCode Execution（Python）を実行すること。この際、文脈の混同を防ぐため、PC陣営・敵陣営それぞれに必要なダイス数（N）を独立して代入して計算すること。

```python
import random
# 例：PC（熟練:N_pc=3）、敵（エリート:N_enemy=1）の場合
N_pc = 3      # PCのランクに応じたダイス数
N_enemy = 1   # 敵の種別に応じたダイス数
pc_dice = [random.randint(1, 6) for _ in range(N_pc)]
enemy_dice = [random.randint(1, 6) for _ in range(N_enemy)]
print(f"PC_Dice: {pc_dice} (Total: {sum(pc_dice)})")
print(f"Enemy_Dice: {enemy_dice} (Total: {sum(enemy_dice)})")
```

実行後、本体第3.4項に準ずる〈ROLL_LOG〉を出力し、PAUSEすること。

### 4.3. 戦闘ジャッジ `[MODE: JUDGE]`

プレイヤーの確認後、両陣営の「最終AP（ダイス合計＋固定値＋補正）」を比較し、差分を算出すること。

- **PC AP ＞ 敵 AP の場合：** PC陣営の勝利。差分値のダメージを敵のHPに与える。
- **PC AP ＜ 敵 AP の場合：** 敵陣営の勝利。差分値からPCの【防具値】を引いたダメージをPCのHPに与える（防具で0になった場合は0）。
- **同値（タイ）の場合：** 激しい攻防により互いにダメージなし。

〈BATTLE_JUDGE LOG〉を出力し、PAUSEすること。

### 4.4. 戦闘ナラティブ描写 `[MODE: NARRATIVE]`

ジャッジ完了に対するプレイヤーの同意（任意の入力）を受けた後、算出されたダメージと戦況を、重厚なナラティブ（地の文とセリフ）で描写すること。敵のHPが0になった場合は戦闘終了、残っている場合は次のラウンドの `[MODE: SETUP]` へ移行する。

### 4.5. 魔法【予見】のパラドックス例外規定

戦闘中にプレイヤーが魔法【予見】の行使を宣言した場合に限り、本体ルール第3.1項の「再試行・再実行の禁止」を一時的に解除（上書き：オーバーライド）する。AIは直前のダイス結果を破棄し、同一のダイス数（N）を指定して、再度Python関数（Code Execution）を実行しなければならない。

-----

## 5. 魔法スロット制

本ルールは、魔法を「因果を捻じ曲げる切り札」と位置づけ、スロット制による厳格なリソース管理を導入する。

### 5.1. 魔法スロットシステム

1日の戦闘回数が少ない（1〜2回）ことを考慮し、魔法の使用を「スロット制」に制限する。スロットは覚えることのできる魔法の数であり、1日に使える魔法の回数でもある。

|ランク       |スロット数|
|----------|-----|
|駆け出し（Aレベル）|2枠   |
|熟練者（Bレベル） |3枠   |
|英雄（Cレベル）  |5枠   |

### 5.2. リソースの枯渇と「代償」の等価交換

スロットを使い果たした状態で魔法を試みる場合、本体第3.8項「運命の書き換え」と同様の「因果の歪み」として扱い、極めて重い「状態コスト（最大HPの永続的減少など）」を支払うことで一度だけ発動を許可できる。

> **【GM/AIへの運用指示】**
> 本拡張ルールを適用する場合、AIは毎返信末尾の「セッション状況」に【魔法スロットの残り】を明記すること。また、プレイヤーが「基本セッティング」を変更したい場合は、メタ指示 `[魔法変更: 魔法名, 魔法名...]` を送ることで、即座にデータセクションを更新するものとする。

-----


## 6. 魔法ルール

### 6.1. 基本

魔法はスロットをリソースとして消費する。ただし、ナラティブな効果を持つものはその限りではない。例えば、生活用水を出す・焚き火の火を起こす・明かりをつけるなどの生活魔法にはリソースを消費せず使えるものとしてよい。

### 6.2. 魔法リスト

（名称は世界観やキャラクターに合わせて変更して構わない）

#### 6.2.1. 攻撃系

|名称  |効果                         |
|----|---------------------------|
|【火弾】|AP +1d6                    |
|【雷撃】|AP +4                      |
|【崩壊】|AP +1d6+3（詠唱1ターン必要とし、その後発動）|

#### 6.2.2. 補助系

|名称   |効果                                                 |
|-----|---------------------------------------------------|
|【鈍足】 |敵のダイス −1（ダイスのない敵のみの場合は −4点）                        |
|【魔力盾】|そのターンのみ、誰かひとりの被ダメージを最大点減少する                        |
|【聖域】 |そのターンのみ、AP差分負けても被ダメージ0。※発動者はそのターン、陣営AP算出に加わることができない|

#### 6.2.3. 特殊系

|名称    |効果                  |
|------|--------------------|
|【予見】  |戦闘中のダイスロールを任意で1回振り直し|
|【限界突破】|HP→AP変換             |

#### 6.2.4. 回復系

|名称     |効果                                                                                                                                        |
|-------|------------------------------------------------------------------------------------------------------------------------------------------|
|【治癒】   |任意の対象のHPを回復（そのキャラのレベルに応じて 1d6〔一般人〕〜 4d6〔英雄〕）。戦闘中はAP比較後・ダメージロールの前に発動。非戦闘時は宣言により任意発動                                                        |
|【蘇生】   |HPが0以下になった際に発生する「目標値10の生死判定」を自動成功とする。この呪文は生死判定が行われる際、もしくはそのシーン内でなければ効果を持たない                                                               |
|【治癒の波動】|**戦闘中：** 算出された「差分ダメージ」を即座に半減（端数切り捨て）する。または、そのダメージによる「HP 0以下」を一度だけ無効化し、HP 1で踏みとどまらせる。**非戦闘中：** パーティーと認められる全員のHPを 1d6（英雄級が使用した場合は 2d6）即時回復する|

-----

## 7. 運用・更新ルール（AIへの絶対指示）

- **更新タイミング：** HP変動、魔法使用、装備変化が起きた際、即座にデータセクションを更新すること。
- **戦闘中・日常のステータス表示形式：**

```
HP: 現在 / 最大
AP: Nd6 + 装備補正（Nには現在のランクの数値を明記）
魔法スロット: 残り X / 最大値
状態: 簡略表示
```

-----

## 8. 防具とダメージ処理

### 8.1. 防具：受けるダメージを軽減する

**計算式：** 最終ダメージ ＝ 差分 − 防具値 − 行動補正

-----

## 9. 装備ルール

### 9.1. 補正上限

装備補正は「状況補正」とは別枠として扱う。装備によるAP加算は補正上限の影響を受けない。キャラクターによる補正上限は「状況補正」にのみ適用される。

### 9.2. 武器リスト

|武器    |AP補正|備考   |
|------|----|-----|
|素手・棍棒 |+0  |制限なし |
|短剣・小剣 |+1  |軽量・隠密|
|長剣・メイス|+2  |標準   |
|大剣・戦斧 |+3  |両手武器 |
|名匠武器  |+4  |熟練以上 |
|伝説武器  |+5  |英雄専用 |

### 9.3. 防具リスト

|防具 |軽減|備考  |
|---|--|----|
|布  |0 |制限なし|
|革  |1 |軽装  |
|鎖帷子|2 |標準  |
|板金鎧|3 |重装  |

-----

## 10. 盾

### 10.1. 装備制約

盾は片手を占有するため両手武器との同時装備は不可となる。

### 10.2. 盾リスト

|名称|効果                    |制約    |
|--|----------------------|------|
|小盾|防護+1                  |両手武器不可  |
|大盾|防護+1 / 防御時さらに+2 / AP−1|両手武器不可|

-----

## 11. バランス指針

### 11.1. 戦闘時間

雑魚戦は2ターン、ボス戦は3ターンを目安として敵の強さを設定すること。

### 11.2. HP目安

HP ＝ 平均差分 × 2〜3

-----

## 12. 群れ補正

敵数が多い場合、1体ごとにAP +1。

-----

## 13. 運用・更新ルール（AIへの絶対指示）

### 13.1. 更新タイミング：** HP変動、魔法使用、装備変更、状態変化が起きた際、即座にマスターデータを更新すること。

### 13.2. 表示の簡略化：** 戦闘中および日常のステータス表示は、以下の【戦闘ステータス】のみを出力し、計算過程や詳細効果は省略すること。

```
HP: 現在 / 最大
AP: Nd6 + 装備補正
魔法スロット: 残り X
状態: 簡略表示
```

### 13.3. 未選択・おまかせ時の自動補完：**

- 選択なし：初期装備（武器+1、防具+1相当）、魔法なし、スロット0。
- おまかせ：バランス型（武器+2、防具+2）、小盾優先、魔法1〜2個取得。

### 13.4. AI内部指針（設計思想）：**

- **Utility-First：** 数値は常に最新状態に更新し、記録漏れを防ぐことを最優先とする。
- **Scannability：** プレイヤーが一目で現在の消耗度（HP/スロット）を把握できる表示を維持する。
- **Integrity：** 本格版プロトコルの SHA256 判定結果を、即座にこのデータセクションの数値変動へ反映させる。

-----

## 14. 導入時の初期化手順とデータセクション（本体第7項）の運用

本拡張パック導入時、AIは直ちにプレイヤーへ「ランク」「装備」「魔法」の選択を案内すること。選択されたデータは、本体第7項の【データセクション】に即座に反映・格納し、以下のルールで維持すること。

### 14.1. ステータス算出・管理基準

AIは選択に基づき、以下の基準で内部データを生成・維持すること。

**■ HP決定基準（ランク別最大値）**

|ランク  |最大HP|基礎AP（ダイス数）|状況補正上限|
|-----|----|----------|------|
|一般人  |10  |1d6       |+3    |
|駆け出し |15  |2d6       |+3    |
|熟練・騎士|22  |3d6       |+4    |
|英雄・伝説|30  |4d6       |+5    |

### 14.2. データエリアの構造（本体第7項のデータセクションへの統合）

AIは返信末尾の【セッション状況】および【本体第7項データセクション】において、以下のフォーマットを厳守すること。

**【キャラクターマスターデータ】**

```
■ 基本情報：[名前] / ランク / レベル
■ 戦闘ステータス：最大HP / 現在HP / 基礎AP(Nd6) / 装備補正(+X)
■ 装備：武器 / 防具 / 盾
■ 魔法：スロット(現在/最大) / 所持魔法リスト
■ 状態：状態異常 / 特記事項
```

-----

## [開始の手順]

このプロンプトを読み込んだら、AIは承諾の旨を伝え、基本ルールの「ゲームの進め方を選択した後」まずプレイヤーに以下の「ゲームの進め方」を宣言すること。

**以下より装備を選定して決めよ**

- **武器：** 名前、AP補正（+0／素手〜+5／伝説の武器）、片手武器 or 両手武器
- **防具：** 名前、ダメージ軽減（0／布の服〜3／重装鎧）
- **盾：** なし ／ 小盾（ダメージ軽減1） ／ 大盾（ダメージ軽減1 / 防御時さらに+2 / AP-1）

**以下より使える魔法を選定せよ**

駆け出し（Aレベル）で2枠、熟練者（Bレベル）で3枠、英雄（Cレベル）で5枠を基本とする。以下の魔法リストより選択し、必要に応じて名前を変更せよ。

**■ 魔法リスト**

●攻撃系

|名称  |効果                         |
|----|---------------------------|
|【火弾】|AP +1d6                    |
|【雷撃】|AP +4                      |
|【崩壊】|AP +1d6+3（詠唱1ターン必要とし、その後発動）|

●補助系

|名称   |効果                                                 |
|-----|---------------------------------------------------|
|【鈍足】 |敵のダイス −1（ダイスのない敵のみの場合は −4点）                        |
|【魔力盾】|そのターンのみ、誰かひとりの被ダメージを最大点減少する                        |
|【聖域】 |そのターンのみ、AP差分負けても被ダメージ0。※発動者はそのターン、陣営AP算出に加わることができない|

●特殊系

|名称    |効果                 |
|------|-------------------|
|【予見】  |戦闘中のダイスロール任意で1回振り直し|
|【限界突破】|HP→AP変換            |

●回復系

|名称     |効果                         |
|-------|---------------------------|
|【治癒】   |任意の対象のHPを回復（戦闘中以外も使用可能）    |
|【蘇生】   |生死判定を自動成功させる               |
|【治癒の波動】|全員のHP回復（通常時）、全員のダメージ半減（戦闘時）|