# 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` で使っています。