Keep skill total labels visible in the grid; mod documentation

This commit is contained in:
cthangover committed 2026-10-29 09:26:16 +01:00
1 parent 4839ee71ad
commit 07648cc236
17 files changed
+494 -8

No files matched your search

+69
View File
@@ -0,0 +1,69 @@
# Skills Engine — プレイヤーのスキルカードコレクション
Skills Engine は、プレイヤーが集めたスキルを保管し、**スキル**パネルにカードとして並べます。スキルは、別のメカニクスの可能性を開く(パッシブの「門」)、戦闘用の新しいアクションカードを渡す、そして**コレクション効果** — 集めた全スキルの合計 — に数値を積み上げる、という働きを持ちます。
Cthangover の一部で、プレイヤーは一つのスキル**奴隷商人**から始めます。
## スキルパネル
ツールバーのスキル・アイコンで開きます。
![Cthangover のスキルパネル: 格子の中の奴隷商人のカード(エピック、パッシブ、スカウト成功率 +10%)、右側のカード研究にその説明、隅には「+10% スカウト成功率」と表示されるコレクション効果のプレート。](assets/skills-panel.jpg)
- **タブ**は種類で絞り込みます(**パッシブ**、**アクティブ**、**キャラクター用**)、レアリティの列はレアリティで絞ります。**コモン**から**レジェンド**まで。検索欄と並び替えで格子を狭められます。
- **枠の色とダイヤの模様**がカードのレアリティを示します。
- **カードをクリック**すると、カード研究で詳しく見られます。画像、レアリティと種類のバッジ、説明、その効果、そして付与スキルなら渡されるアクションカードです。
- **コレクション効果**は集めた全スキルの効果を合計します。+10% と +5% のスカウト成功率のスキル二つで +15% と表示されます。
奴隷商人のカードにはまだ画像がありません。ゲームは `characters/skills/slave_master` を画像として指定しますが、このファイルを同梱する mod がないため、枠は空のままです。
## スキルの定義
スキルは kind `skill` の JSON ファイルで、mod 内のどこに置いてもかまいません。こちらは Cthangover の奴隷商人です。上のパネルと見比べてください。
```json
{
"Kind": "skill",
"Items": [
{
"Id": "slave_master",
"Name": "characters/skills/slave_master_name",
"Description": "characters/skills/slave_master",
"Image": "characters/skills/slave_master",
"Type": 1,
"Rare": 3,
"Effects": [
{ "Key": "characters/skills/effects/recruit", "Value": 10, "Percent": true }
]
}
]
}
```
- `Name`、`Description` — 翻訳キー。
- `Image` — カードの画像。
- `Type` — `Active`(0)、`Passive`(1)、`ForCharacter`(2)。名前でも番号でもかまいません。奴隷商人は**パッシブ**。
- `Rare` — `Common`(0)、`Uncommon`、`Rare`、`Epic`(3)、`Legendary`。奴隷商人は**エピック**。
- `Effects` — コレクション効果に加算される数値。`Key` は何が強化されるかの翻訳キー、`Value` は量、`Percent` は % 付きで表示するかどうか。値は合計されるため、同じキーは全スキルで同じ単位である必要があります。
- `GrantsAction`(省略可)— アクションカードの id(Characters Engine を参照)。スキルを得ると、このカードもキャラクターアクションパネルのアクションプールに入ります。
## スキルがゲーム内ですること
パネルはスキルを見せるだけです。何を変えるかは、それを参照する mod が決めます。
- recruiting は、プレイヤーが `slave_master` を持っている間だけ、倒した敵を**奴隷にする**ことを提案します。成功確率は敵自身の `RecruitmentChance` で、カードの +10% はパネルに表示されるだけで、recruiting は加算しません。
- `GrantsAction` を持つスキルはそのアクションカードを渡し、プレイヤーは後でキャラクターのスロットに置きます。
## シナリオからスキルを与える
```scenario
action character.add_skill skill_id=slave_master
```
スキルを二度与えても二度目は何もしません。だから同じ場面が繰り返されても、スキルもそのアクションカードも複製されません。Cthangover は新しいゲームの開始時に奴隷商人を与えます。
## うまく動かないとき
1. **スキルが現れない。** `skill_id` はスキルの `Id` と一致しなければなりません。未知の id は警告としてログに書かれます。
2. **カードに画像がない。** `Image` に書かれた名前の画像を同梱する mod がありません。
3. **コレクション効果の合計がおかしい。** 二つのスキルが同じ効果 `Key` を異なる `Percent` で使っています。