RimWorld

RimWorld

Compressed Raid(Abandoned)
 This topic has been pinned, so it's probably important
ryouta#503PogoLegend  [developer] May 10, 2021 @ 8:31am
Compressed Raidへのパッチ方法(薬物効果追加機能)
※このスレッドはMOD開発者さんに向けた内容となっています。

共通事項
LoadFolders.xmlIfModActiveに設定するpackageId
"miyamiya.compressedraid.latest" を指定してください。
"latest"の部分が揺れる可能性が気になるかもしれませんが、
今後もずっと"latest"から変わることはありませんし、
"latest"以外のバージョンを出す予定もありません。

簡易QA
  • Q. そもそもCompressed Raidがアイテムを薬物として識別する条件はなんですか?
  • A. Compressed Raidは以下の条件を全て満たすThingDefを取り扱うべき薬物であると識別し、抽選テーブルに乗せています。
    1. ThingDef/ingestible/drugCategoryNoneではない。
    2. ThingDef/ingestible/outcomeDoersClass="IngestionOutcomeDoer_GiveHediff"が設定されている要素があり、その内1つ以上が次の条件を満たす。
    3. hediffDefisBadがFalseかつ、戦闘に直接関連する能力が向上する作用を持つHediffDefが設定されている。

  • Q. 除外パッチを適用した場合、除外された薬物はゲームに登場しなくなるのですか?
  • A. Compressed Raidが勝手に襲撃者に付与する薬物抽選テーブルから除外されるだけです。

  • Q. パッチがうまく適用できたかわかりません。何度も襲撃をおこして検証する以外に良い方法はないですか?
  • A. パッチが適用されていれば、ゲーム起動時に出力されるデバッグログの[Compressed Raid] Infomation:...の行に反映されているはずです。

除外パッチ作成要領
あなたのMODで追加される特定の薬物を抽選テーブルから除外するパッチは次の要領で作成してください。
  • PatchOperationAddを使用してください。
  • パッチ対象: <xpath>*/CompressedRaid.ExcludeDrugDef[defName="CR_ExcludeDrug_Any"]/drugs</xpath>
  • パッチ追加要素: <li>あなたのMODの薬物のdefName</li>

薬害強制パッチ作成要領
あなたのMODで追加される特定の薬物の薬害を襲撃者に強制するようにするパッチは次の要領で作成してください。
  • PatchOperationAddを使用してください。
  • パッチ対象: <xpath>*/CompressedRaid.MustNegativeEffectDef[defName="CR_MustNegativeEffect_Any"]/drugs</xpath>
  • パッチ追加要素: <li>あなたのMODの薬物のdefName</li>
Last edited by ryouta#503PogoLegend; May 10, 2021 @ 8:31am