This commit is contained in:
2025-10-10 15:37:07 +08:00
parent 33da85bb0f
commit 39ee331be5
4 changed files with 240 additions and 63 deletions

View File

@@ -39,8 +39,7 @@
<cooldownTicksRange>601</cooldownTicksRange>
<hostile>false</hostile>
<showOnCharacterCard>true</showOnCharacterCard>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<aiCanUse>false</aiCanUse>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -69,8 +68,7 @@
<cooldownTicksRange>601</cooldownTicksRange>
<hostile>false</hostile>
<showOnCharacterCard>true</showOnCharacterCard>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<aiCanUse>false</aiCanUse>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -99,8 +97,7 @@
<cooldownTicksRange>5000</cooldownTicksRange> <!-- 2 hours -->
<aiCanUse>true</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -139,8 +136,7 @@
<cooldownTicksRange>5000</cooldownTicksRange>
<aiCanUse>false</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<targetRequired>false</targetRequired>
<hostile>false</hostile>
<casterMustBeCapableOfViolence>false</casterMustBeCapableOfViolence>
@@ -398,8 +394,7 @@
<cooldownTicksRange>5000</cooldownTicksRange>
<aiCanUse>true</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<charges>3</charges>
<cooldownPerCharge>true</cooldownPerCharge>
@@ -451,8 +446,7 @@
<cooldownTicksRange>5000</cooldownTicksRange>
<aiCanUse>true</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<charges>3</charges>
<cooldownPerCharge>true</cooldownPerCharge>
@@ -874,8 +868,7 @@
<hostile>false</hostile>
<casterMustBeCapableOfViolence>false</casterMustBeCapableOfViolence>
<stunTargetWhileCasting>true</stunTargetWhileCasting>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupMote>Mote_HoraxSmallSpellWarmup</warmupMote>
<warmupEffecter>HoraxianAbilityCasting</warmupEffecter>
<warmupSound>AnomalyAbilityWarmup</warmupSound>
@@ -934,8 +927,7 @@
<aiCanUse>true</aiCanUse>
<ai_SearchAOEForTargets>true</ai_SearchAOEForTargets>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<statBases>
<Ability_EffectRadius>12</Ability_EffectRadius>
<Ability_Duration>500</Ability_Duration>
@@ -996,8 +988,7 @@
<aiCanUse>true</aiCanUse>
<ai_SearchAOEForTargets>true</ai_SearchAOEForTargets>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<statBases>
<Ability_Duration>100</Ability_Duration>
</statBases>
@@ -1089,8 +1080,7 @@
<cooldownPerCharge>true</cooldownPerCharge>
<aiCanUse>true</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -1161,8 +1151,7 @@
<cooldownTicksRange>601</cooldownTicksRange>
<hostile>false</hostile>
<showOnCharacterCard>true</showOnCharacterCard>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<aiCanUse>false</aiCanUse>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -1191,8 +1180,7 @@
<cooldownTicksRange>601</cooldownTicksRange>
<hostile>false</hostile>
<showOnCharacterCard>true</showOnCharacterCard>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<aiCanUse>false</aiCanUse>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -1307,8 +1295,7 @@
<cooldownTicksRange>5000</cooldownTicksRange>
<aiCanUse>true</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -1348,8 +1335,7 @@
<cooldownTicksRange>5000</cooldownTicksRange>
<aiCanUse>true</aiCanUse>
<displayOrder>300</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -1390,7 +1376,6 @@
<aiCanUse>true</aiCanUse>
<displayOrder>9900</displayOrder>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<warmupStartSound>AcidSpray_Warmup</warmupStartSound>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
@@ -1419,6 +1404,7 @@
<cooldownTicksRange>144000</cooldownTicksRange>
<targetRequired>false</targetRequired>
<casterMustBeCapableOfViolence>false</casterMustBeCapableOfViolence>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<displayOrder>9901</displayOrder>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>

View File

@@ -0,0 +1,192 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<HediffDef Name="ARA_AddedMutationBase" ParentName="AddedBodyPartBase" Abstract="True">
<organicAddedBodypart>true</organicAddedBodypart>
</HediffDef>
<HediffDef ParentName="AddedMutationBase">
<defName>ArachnaeFighter_Swarm_Claws_Part</defName>
<label>战士种虫镰</label>
<labelNoun>战士种虫镰</labelNoun>
<description>一个属于虫虫而不是人类的身体部件.</description>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<defaultInstallPart>Shoulder</defaultInstallPart>
<stages>
<li>
<statOffsets>
<PawnBeauty>-1</PawnBeauty>
</statOffsets>
</li>
</stages>
<renderNodeProperties>
<li>
<debugLabel>ARA_Swarm_claws</debugLabel>
<workerClass>PawnRenderNodeWorker_AttachmentBody</workerClass>
<texPaths>
<li>ArachnaeSwarm/Things/ARA_HiveNode/Addons/ArachnaeNode_Race_Addons_Fighter_Claw</li>
</texPaths>
<baseLayer>60</baseLayer>
<texSeed>1</texSeed>
</li>
</renderNodeProperties>
<addedPartProps>
<solid>true</solid>
<partEfficiency>1.20</partEfficiency>
</addedPartProps>
<comps>
<li Class="HediffCompProperties_VerbGiver">
<tools>
<li>
<label>巨镰</label>
<capacities>
<li>Cut</li>
</capacities>
<power>20</power>
<cooldownTime>2.5</cooldownTime>
<chanceFactor>0.5</chanceFactor>
</li>
</tools>
</li>
</comps>
</HediffDef>
<HediffDef ParentName="AddedMutationBase">
<defName>ArachnaeNode_Race_Myrmecocystus_Tail_Part</defName>
<label>蜜罐种虫尾</label>
<labelNoun>蜜罐种虫尾</labelNoun>
<description>一个属于虫虫而不是人类的身体部件.</description>
<descriptionHyperlinks>
<ThingDef>ARA_InsectJelly</ThingDef>
</descriptionHyperlinks>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<defaultInstallPart>Stomach</defaultInstallPart>
<stages>
<li>
<statOffsets>
<PawnBeauty>-1</PawnBeauty>
</statOffsets>
</li>
</stages>
<renderNodeProperties>
<li>
<debugLabel>ARA_Swarm_Myrmecocystus_Tail</debugLabel>
<workerClass>PawnRenderNodeWorker_AttachmentBody</workerClass>
<texPaths>
<li>ArachnaeSwarm/Things/ARA_HiveNode/Addons/ArachnaeNode_Race_Myrmecocystus_Addons_Stomach</li>
</texPaths>
<baseLayer>60</baseLayer>
<texSeed>1</texSeed>
<drawData>
<dataNorth>
<layer>70</layer>
</dataNorth>
<dataSouth>
<layer>0</layer>
</dataSouth>
<dataEast>
<layer>50</layer>
</dataEast>
<dataWest>
<layer>50</layer>
</dataWest>
</drawData>
</li>
</renderNodeProperties>
<addedPartProps>
<solid>true</solid>
<partEfficiency>1.20</partEfficiency>
</addedPartProps>
<comps>
<li Class="ArachnaeSwarm.MoharHediffs.HediffCompProperties_Spawner">
<!--
==================================================
基础设置 (Basic Settings)
==================================================
-->
<!-- [DEBUG] 如果为true则为此组件启用详细的调试日志记录。 -->
<debug>true</debug>
<!-- 要生成的物品的ThingDef。 -->
<thingToSpawn>ARA_InsectJelly</thingToSpawn>
<!-- 每次生成的基础物品数量。 -->
<spawnCount>5</spawnCount>
<!--
==================================================
生成周期 (Spawning Interval)
==================================================
-->
<!-- 下一次生成事件发生前的最少天数。 -->
<minDaysB4Next>1</minDaysB4Next>
<!-- 下一次生成事件发生前的最大天数。 -->
<maxDaysB4Next>1</maxDaysB4Next>
<randomGrace>0</randomGrace>
<!--
==================================================
与年龄相关的调整 (Age-Related Adjustments)
==================================================
-->
<!-- 如果为true生成数量将根据宿主的年龄进行调整。 -->
<ageWeightedQuantity>false</ageWeightedQuantity>
<!-- 如果为true且ageWeightedQuantity为true则随着宿主年龄增长生成数量变多。 -->
<olderBiggerQuantity>true</olderBiggerQuantity>
<!-- 如果为true且ageWeightedQuantity为true则随年龄增长的数量缩放将是指数性的而非线性的。 -->
<exponentialQuantity>true</exponentialQuantity>
<!-- 指数级数量缩放的最大乘数,以防止出现荒谬的数字。 -->
<exponentialRatioLimit>20</exponentialRatioLimit>
<!--
==================================================
生成条件 (Spawning Conditions)
==================================================
-->
<!-- 如果为true当宿主Pawn饥饿时生成将暂停。 -->
<hungerRelative>true</hungerRelative>
<!-- 如果为true当宿主Pawn受伤时生成将暂停。 -->
<healthRelative>false</healthRelative>
</li>
</comps>
</HediffDef>
<HediffDef ParentName="AddedMutationBase">
<defName>ArachnaeNode_Race_Skyraider_Wings_Part</defName>
<label>空天种翼翅</label>
<labelNoun>空天种翼翅</labelNoun>
<description>一个属于虫虫而不是人类的身体部件.</description>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<defaultInstallPart>Spine</defaultInstallPart>
<stages>
<li>
<statOffsets>
<PawnBeauty>-1</PawnBeauty>
</statOffsets>
</li>
</stages>
<renderNodeProperties>
<li>
<debugLabel>ARA_Swarm_Wings</debugLabel>
<workerClass>PawnRenderNodeWorker_AttachmentBody</workerClass>
<texPaths>
<texPath>ArachnaeSwarm/Things/ARA_HiveNode/Addons/ArachnaeNode_Race_Addons_Skyraider_Wing</texPath>
</texPaths>
<baseLayer>60</baseLayer>
<texSeed>1</texSeed>
<drawData>
<dataSouth>
<layer>-10</layer>
</dataSouth>
</drawData>
</li>
</renderNodeProperties>
<addedPartProps>
<solid>true</solid>
<partEfficiency>1.20</partEfficiency>
</addedPartProps>
<comps>
<li Class="HediffCompProperties_GiveAbility">
<abilityDefs>
<li>ARA_Skyraider_jump</li>
</abilityDefs>
</li>
</comps>
</HediffDef>
</Defs>

View File

@@ -60,9 +60,9 @@
</apparelTags>
<apparelMoney>0</apparelMoney>
<abilities>
<li>ARA_BindDrone</li>
<li>ARA_AcidSprayBurst_Queen</li>
<li>ARA_TumorSpew</li>
<li>ARA_BindDrone</li>
<li>ARA_AcidSprayBurst_Queen</li>
<li>ARA_TumorSpew</li>
</abilities>
</PawnKindDef>
@@ -204,7 +204,7 @@
<defName>ArachnaeNode_Race_Fighter</defName>
<label>阿拉克涅战士种</label>
<race>ArachnaeNode_Race_Fighter</race>
<collidesWithPawns>false</collidesWithPawns>
<collidesWithPawns>false</collidesWithPawns>
<defaultFactionType>PlayerColony</defaultFactionType>
<invNutrition>0</invNutrition>
<backstoryFiltersOverride>
@@ -272,9 +272,9 @@
<apparelMoney>0</apparelMoney>
<modExtensions>
<li Class="ArachnaeSwarm.SuperCarryExtension">
<canSuperCarry>true</canSuperCarry>
<requiresFlight>true</requiresFlight>
<canCarryHostile>false</canCarryHostile>
<canSuperCarry>true</canSuperCarry>
<requiresFlight>true</requiresFlight>
<canCarryHostile>false</canCarryHostile>
</li>
</modExtensions>
</PawnKindDef>
@@ -312,7 +312,7 @@
<defName>ArachnaeNode_Race_Praetorian</defName>
<label>阿拉克涅禁卫种</label>
<race>ArachnaeNode_Race_Praetorian</race>
<collidesWithPawns>false</collidesWithPawns>
<collidesWithPawns>false</collidesWithPawns>
<defaultFactionType>PlayerColony</defaultFactionType>
<invNutrition>0</invNutrition>
<backstoryFiltersOverride>
@@ -330,7 +330,7 @@
</apparelTags>
<apparelMoney>0</apparelMoney>
</PawnKindDef>
<PawnKindDef Name="ARA_InsectKindBase" ParentName="AnimalKindBase" Abstract="True">
<defaultFactionType>PlayerColony</defaultFactionType>
@@ -469,7 +469,7 @@
<li>
<bodyGraphicData>
<texPath>ArachnaeSwarm/Things/ARA_Skyhive/Bodies/Naked_Thin</texPath>
<graphicClass>Graphic_Multi</graphicClass>
<graphicClass>Graphic_Multi</graphicClass>
<drawSize>1.5</drawSize>
<!-- <color>(145,140,109)</color> -->
<shadowData>
@@ -479,32 +479,32 @@
</bodyGraphicData>
<dessicatedBodyGraphicData>
<texPath>ArachnaeSwarm/Things/ARA_Skyhive/Bodies/Naked_Thin</texPath>
<graphicClass>Graphic_Multi</graphicClass>
<graphicClass>Graphic_Multi</graphicClass>
<drawSize>1.5</drawSize>
<color>(255,255,255)</color>
</dessicatedBodyGraphicData>
</li>
</lifeStages>
</PawnKindDef>
<PawnKindDef ParentName="MutantBase" Name="ARA_ShamblerBase" Abstract="True">
<mutant>ARA_MimicNematodeShambler</mutant>
<generateInitialNonFamilyRelations>false</generateInitialNonFamilyRelations>
</PawnKindDef>
<PawnKindDef ParentName="ARA_ShamblerBase">
<defName>ARA_MimicNematodeShamblerSwarmer</defName>
<label>阿拉克涅拟线种寄生体</label>
<combatPower>40</combatPower>
<gearHealthRange>0.2~0.4</gearHealthRange>
<itemQuality>Poor</itemQuality>
<apparelMoney>0~100</apparelMoney>
<apparelAllowHeadgearChance>0</apparelAllowHeadgearChance>
<apparelTags>
<li>IndustrialBasic</li>
<li>Neolithic</li>
</apparelTags>
<meleeAttackInfectionPathways>
<li>EntityAttacked</li>
</meleeAttackInfectionPathways>
</PawnKindDef>
<PawnKindDef ParentName="MutantBase" Name="ARA_ShamblerBase" Abstract="True">
<mutant>ARA_MimicNematodeShambler</mutant>
<generateInitialNonFamilyRelations>false</generateInitialNonFamilyRelations>
</PawnKindDef>
<PawnKindDef ParentName="ARA_ShamblerBase">
<defName>ARA_MimicNematodeShamblerSwarmer</defName>
<label>阿拉克涅拟线种寄生体</label>
<combatPower>40</combatPower>
<gearHealthRange>0.2~0.4</gearHealthRange>
<itemQuality>Poor</itemQuality>
<apparelMoney>0~100</apparelMoney>
<apparelAllowHeadgearChance>0</apparelAllowHeadgearChance>
<apparelTags>
<li>IndustrialBasic</li>
<li>Neolithic</li>
</apparelTags>
<meleeAttackInfectionPathways>
<li>EntityAttacked</li>
</meleeAttackInfectionPathways>
</PawnKindDef>
</Defs>

View File

@@ -721,8 +721,7 @@
<!-- 额外身体部件 -->
<bodyAddons>
<li>
<path>
ArachnaeSwarm/Things/ARA_HiveNode/Addons/ArachnaeNode_Race_Myrmecocystus_Addons_Stomach</path>
<path>ArachnaeSwarm/Things/ARA_HiveNode/Addons/ArachnaeNode_Race_Myrmecocystus_Addons_Stomach</path>
<inFrontOfBody>false</inFrontOfBody>
<scaleWithPawnDrawsize>true</scaleWithPawnDrawsize>
</li>