This commit is contained in:
2026-01-27 11:59:07 +08:00
parent adc513c4eb
commit cd8398c064
12 changed files with 249 additions and 339 deletions

Binary file not shown.

View File

@@ -1555,7 +1555,7 @@
<verbClass>Verb_CastAbility</verbClass>
<range>24</range>
<warmupTime>0</warmupTime>
<soundCast>Heatspikes_Shot</soundCast>
<soundCast>SpitterSpit</soundCast>
<soundCastTail>Heatspikes_Tail</soundCastTail>
<targetParams>
<canTargetPawns>True</canTargetPawns>

View File

@@ -1299,7 +1299,7 @@
<HediffDef>
<defName>ARA_Skyraider_Hivelord</defName>
<label>亚种-领主种</label>
<description>这只阿拉克涅空天种已经获得拔耀,可以孵化大量的天巢种辅虫,这些灵敏的辅虫会后散开四处狩猎目标。</description>
<description>这只阿拉克涅空天种已经获得拔耀,可以投掷天巢种辅虫,这些灵敏的辅虫会后散开四处狩猎目标。</description>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<isBad>false</isBad>
@@ -1347,12 +1347,12 @@
<productionQueue>
<li>
<pawnKind>ArachnaeBase_Race_Skyhive</pawnKind>
<count>8</count>
<count>4</count>
<cooldownTicks>200</cooldownTicks>
</li>
</productionQueue>
</li>
<!-- <li Class="ArachnaeSwarm.HediffCompProperties_TopTurret">
<li Class="ArachnaeSwarm.HediffCompProperties_TopTurret">
<turretDef>ARA_Skyraider_Hivelord_Turret</turretDef>
<angleOffset>0</angleOffset>
<autoAttack>true</autoAttack>
@@ -1360,7 +1360,7 @@
<li Class="ArachnaeSwarm.HediffCompProperties_DrawMote">
<mote>ARA_Mote_Hivelord_Turret_Range</mote>
<hideMoteWhenNotDrafted>true</hideMoteWhenNotDrafted>
</li> -->
</li>
</comps>
</HediffDef>
<ThingDef ParentName="MoteBase">
@@ -1383,7 +1383,7 @@
<AbilityDef>
<defName>ARA_Skyraider_Empthrower</defName>
<label>空天种转换——电磁风暴</label>
<description>使空天种发生内驱性进化,以降低机动力和失去高空机动能力为代价,使其获得孵化磁暴种辅虫的能力——这种辅虫会以自杀式袭击的方式释放出EMP以对抗机械族。\n\n该进化方向提供3只阿拉克涅电磁种辅虫。</description>
<description>使空天种发生内驱性进化,以降低机动力和失去高空机动能力为代价,使其获得投掷磁暴种辅虫的能力——这种辅虫会以自杀式袭击的方式释放出EMP以对抗机械族。\n\n该进化方向提供阿拉克涅辅虫。</description>
<iconPath>ArachnaeSwarm/UI/Abilities/ARA_Skyraider_Empthrower</iconPath>
<cooldownTicksRange>1800</cooldownTicksRange>
<hostile>false</hostile>
@@ -1422,7 +1422,7 @@
<HediffDef>
<defName>ARA_Skyraider_Empthrower</defName>
<label>亚种-飓风种</label>
<description>这只阿拉克涅空天种已经获得拔耀,会孵化磁暴种辅虫这些辅虫以自杀性袭击释放EMP对抗敌方机械族。</description>
<description>这只阿拉克涅空天种已经获得拔耀,会投掷磁暴种辅虫这些辅虫以自杀性袭击释放EMP对抗敌方机械族。</description>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<isBad>false</isBad>
@@ -1466,16 +1466,7 @@
</li>
</stages>
<comps>
<li Class="ArachnaeSwarm.HediffCompProperties_ProductionQueue">
<productionQueue>
<li>
<pawnKind>ArachnaeBase_Race_Empsuicider</pawnKind>
<count>3</count>
<cooldownTicks>200</cooldownTicks>
</li>
</productionQueue>
</li>
<!-- <li Class="ArachnaeSwarm.HediffCompProperties_TopTurret">
<li Class="ArachnaeSwarm.HediffCompProperties_TopTurret">
<turretDef>ARA_Skyraider_Empthrower_Turret</turretDef>
<angleOffset>0</angleOffset>
<autoAttack>true</autoAttack>
@@ -1483,7 +1474,7 @@
<li Class="ArachnaeSwarm.HediffCompProperties_DrawMote">
<mote>ARA_Mote_Empthrower_Turret_Range</mote>
<hideMoteWhenNotDrafted>true</hideMoteWhenNotDrafted>
</li> -->
</li>
</comps>
</HediffDef>
<ThingDef ParentName="MoteBase">

View File

@@ -152,6 +152,7 @@
<li>ArachnaeBase_Race_Acidcut</li>
<li>ArachnaeBase_Race_Baneling</li>
<li>ArachnaeBase_Race_Skyhive</li>
<li>ArachnaeBase_Race_Locust</li>
<li>ArachnaeNode_Race_MimicNematode</li>
</targetRaces>

View File

@@ -83,14 +83,6 @@
</headPosPerRotation>
</race>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>12</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_HediffGiver">
<hediffs>
<li>ARA_TemperatureRegulation</li>
@@ -174,6 +166,14 @@
</race>
<comps>
<li Class="ArachnaeSwarm.CompProperties_HoneyProduction_Animal"></li>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>12</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_AdvancedTraining">
<trainables>
<li>
@@ -246,13 +246,21 @@
<capacities>
<li>Cut</li>
</capacities>
<power>7</power>
<power>4</power>
<cooldownTime>2.8</cooldownTime>
<linkedBodyPartsGroup>HeadAttackTool</linkedBodyPartsGroup>
<ensureLinkedBodyPartsGroupAlwaysUsable>true</ensureLinkedBodyPartsGroupAlwaysUsable>
</li>
</tools>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>12</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_AdvancedTraining">
<trainables>
<li>
@@ -323,6 +331,14 @@
</deathAction>
</race>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>12</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_SwarmMaintainer">
<showDebugInfo>false</showDebugInfo>
<relevantSkill>Crafting</relevantSkill>
@@ -411,6 +427,14 @@
</li>
</tools>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>12</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_AdvancedTraining">
<trainables>
<li>
@@ -469,6 +493,14 @@
<MoveSpeed>6.6</MoveSpeed>
</statBases>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>30</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_AdvancedTraining">
<trainables>
<li>
@@ -538,6 +570,14 @@
<MoveSpeed>6.6</MoveSpeed>
</statBases>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>0.5</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_AdvancedTraining">
<trainables>
<li>
@@ -625,6 +665,14 @@
</li>
</tools>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>12</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_PawnFlight">
<flightCondition>Always</flightCondition>
@@ -706,6 +754,14 @@
</li>
</tools>
<comps>
<li Class="ArachnaeSwarm.CompProperties_NodeSwarmLifetime">
<immuteHediff>ARA_Cycle_Suppression_Hediff</immuteHediff>
<lifespanHediff>ARA_LifespanHediff</lifespanHediff>
<lifetimeDays>15</lifetimeDays>
<labelOverride>寿命</labelOverride>
<tooltipOverride>阿拉克涅辅虫从出生起就走在死亡的道路上了——它们的寿命就是如此短暂。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_AdvancedTraining">
<trainables>
<li>

View File

@@ -9,7 +9,7 @@
<MoveSpeed>5</MoveSpeed>
</statBases>
<race>
<lifeExpectancy>2500</lifeExpectancy>
<lifeExpectancy>100</lifeExpectancy>
<body>ArachnaeSlayer_Body</body>
<thinkTreeMain>ARA_Insect_Beast</thinkTreeMain>
<!-- 身形大小 -->

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<ThinkTreeDef>
<defName>ARA_Insect_Beast</defName>
<thinkRoot Class="ThinkNode_Priority">
@@ -1010,9 +1009,6 @@
<treeDef>MentalStateCritical</treeDef>
</li>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<!-- Do a queued job -->
<li Class="ThinkNode_QueuedJob"/>
@@ -1110,9 +1106,11 @@
<subNodes>
<li Class="ArachnaeSwarm.ThinkNode_ConditionalNotProducedByMechCarrier">
<subNodes>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<li Class="JobGiver_AIFightEnemies">
<targetAcquireRadius>100</targetAcquireRadius>
<targetKeepRadius>100</targetKeepRadius>
<targetAcquireRadius>30</targetAcquireRadius>
<targetKeepRadius>35</targetKeepRadius>
</li>
<li Class="JobGiver_AITrashColonyClose" />
<li Class="JobGiver_AITrashBuildingsDistant" />
@@ -1372,9 +1370,6 @@
<treeDef>MentalStateCritical</treeDef>
</li>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<!-- Do a queued job -->
<li Class="ThinkNode_QueuedJob"/>
@@ -1472,9 +1467,11 @@
<subNodes>
<li Class="ArachnaeSwarm.ThinkNode_ConditionalNotProducedByMechCarrier">
<subNodes>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<li Class="JobGiver_AIFightEnemies">
<targetAcquireRadius>100</targetAcquireRadius>
<targetKeepRadius>100</targetKeepRadius>
<targetAcquireRadius>30</targetAcquireRadius>
<targetKeepRadius>35</targetKeepRadius>
</li>
<li Class="JobGiver_AITrashColonyClose" />
<li Class="JobGiver_AITrashBuildingsDistant" />
@@ -2265,9 +2262,6 @@
<treeDef>MentalStateCritical</treeDef>
</li>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<!-- Do a queued job -->
<li Class="ThinkNode_QueuedJob"/>
@@ -2303,8 +2297,8 @@
<subNodes>
<!-- Wild insects with no lord will fight nearby enemies -->
<li Class="JobGiver_AIFightEnemies">
<targetAcquireRadius>100</targetAcquireRadius> <!-- Same as DefendAndExpandHive -->
<targetKeepRadius>100</targetKeepRadius>
<targetAcquireRadius>30</targetAcquireRadius>
<targetKeepRadius>35</targetKeepRadius>
</li>
<!-- Wild insects leave map in some conditions -->
@@ -2365,9 +2359,11 @@
<subNodes>
<li Class="ArachnaeSwarm.ThinkNode_ConditionalNotProducedByMechCarrier">
<subNodes>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<li Class="JobGiver_AIFightEnemies">
<targetAcquireRadius>100</targetAcquireRadius>
<targetKeepRadius>100</targetKeepRadius>
<targetAcquireRadius>30</targetAcquireRadius>
<targetKeepRadius>35</targetKeepRadius>
</li>
<li Class="JobGiver_AITrashColonyClose" />
<li Class="JobGiver_AITrashBuildingsDistant" />
@@ -2540,9 +2536,6 @@
<treeDef>MentalStateCritical</treeDef>
</li>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<!-- Do a queued job -->
<li Class="ThinkNode_QueuedJob"/>
@@ -2640,9 +2633,11 @@
<subNodes>
<li Class="ArachnaeSwarm.ThinkNode_ConditionalNotProducedByMechCarrier">
<subNodes>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat"/>
<li Class="JobGiver_AIFightEnemies">
<targetAcquireRadius>100</targetAcquireRadius>
<targetKeepRadius>100</targetKeepRadius>
<targetAcquireRadius>30</targetAcquireRadius>
<targetKeepRadius>35</targetKeepRadius>
</li>
<li Class="JobGiver_AITrashColonyClose" />
<li Class="JobGiver_AITrashBuildingsDistant" />
@@ -2815,11 +2810,6 @@
<treeDef>MentalStateCritical</treeDef>
</li>
<!-- React to close melee threat -->
<li Class="JobGiver_ReactToCloseMeleeThreat">
<maxDistance>2.9</maxDistance>
</li>
<!-- Do a queued job -->
<li Class="ThinkNode_QueuedJob"/>