This commit is contained in:
2025-09-22 12:37:07 +08:00
11 changed files with 562 additions and 40 deletions

View File

@@ -347,22 +347,21 @@
<cooldownTicksRange>6000</cooldownTicksRange>
<iconPath>ArachnaeSwarm/UI/Abilities/ARA_Toxic_Needle_Fire</iconPath>
<verbProperties>
<verbClass>Verb_AbilityShoot</verbClass>
<defaultProjectile>Bullet_ARA_RW_Basic_Fist_Needle_Gun</defaultProjectile>
<range>24.9</range>
<verbClass>Verb_CastAbility</verbClass>
<range>24</range>
<warmupTime>1</warmupTime>
<soundCast>Heatspikes_Shot</soundCast>
<soundCastTail>Heatspikes_Tail</soundCastTail>
<muzzleFlashScale>9</muzzleFlashScale>
<ticksBetweenBurstShots>6</ticksBetweenBurstShots>
<warmupTime>0</warmupTime>
<burstShotCount>12</burstShotCount>
<accuracyTouch>0.9</accuracyTouch>
<accuracyShort>0.8</accuracyShort>
<accuracyMedium>0.7</accuracyMedium>
<accuracyLong>0.6</accuracyLong>
<ai_IsWeapon>false</ai_IsWeapon>
<violent>false</violent>
<targetParams>
<canTargetPawns>True</canTargetPawns>
</targetParams>
</verbProperties>
<comps>
<li Class="ArachnaeSwarm.CompProperties_AbilityLaunchMultiProjectile">
<projectileDef>Bullet_ARA_RW_Basic_Fist_Needle_Gun</projectileDef>
<numProjectiles>12</numProjectiles>
</li>
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
<needDef>Food</needDef>
<needCost>0.1</needCost>
@@ -776,4 +775,72 @@
<speed>40</speed>
</projectile>
</ThingDef>
<AbilityDef>
<defName>ARA_Fighter_Invisibility_jump</defName>
<label>追猎种跳跃</label>
<description>以强力的肌腱向目标地点跳跃,会暴露追猎种的身形。</description>
<iconPath>UI/Abilities/Longjump</iconPath>
<cooldownTicksRange>1000</cooldownTicksRange>
<charges>3</charges>
<cooldownPerCharge>true</cooldownPerCharge>
<hostile>false</hostile>
<casterMustBeCapableOfViolence>false</casterMustBeCapableOfViolence>
<verbProperties>
<verbClass>Verb_CastAbilityJump</verbClass>
<violent>false</violent>
<forceNormalTimeSpeed>false</forceNormalTimeSpeed>
<!-- <warmupTime>0.5</warmupTime> -->
<range>23</range>
<requireLineOfSight>false</requireLineOfSight>
<soundCast>Longjump_Jump</soundCast>
<soundLanding>Longjump_Land</soundLanding>
<targetParams>
<canTargetLocations>true</canTargetLocations>
<canTargetPawns>false</canTargetPawns>
<canTargetBuildings>false</canTargetBuildings>
</targetParams>
</verbProperties>
<jobDef>CastJump</jobDef>
<comps>
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
<needDef>Food</needDef>
<needCost>0.1</needCost>
<failMessage>营养值不足,需要进食</failMessage>
</li>
</comps>
</AbilityDef>
<AbilityDef>
<defName>ARA_Fighter_Invisibility_Execution</defName>
<label>巨镰处决</label>
<description>追猎种挥动巨镰对敌人进行处决,造成一次高额伤害,处决完成后会暴露追猎种的身形。</description>
<iconPath>UI/Abilities/Longjump</iconPath>
<cooldownTicksRange>3800</cooldownTicksRange>
<cooldownPerCharge>true</cooldownPerCharge>
<hostile>false</hostile>
<casterMustBeCapableOfViolence>false</casterMustBeCapableOfViolence>
<stunTargetWhileCasting>true</stunTargetWhileCasting>
<warmupMote>Mote_HoraxSmallSpellWarmup</warmupMote>
<warmupEffecter>HoraxianAbilityCasting</warmupEffecter>
<warmupSound>AnomalyAbilityWarmup</warmupSound>
<jobDef>CastAbilityOnThingMelee</jobDef>
<verbProperties>
<verbClass>Verb_CastAbilityTouch</verbClass>
<drawAimPie>false</drawAimPie>
<range>-1</range>
<warmupTime>1</warmupTime>
<targetParams>
<canTargetSelf>false</canTargetSelf>
<canTargetMechs>false</canTargetMechs>
<canTargetBuildings>false</canTargetBuildings>
</targetParams>
</verbProperties>
<comps>
<li Class="CompProperties_AbilityGiveHediff">
<compClass>CompAbilityEffect_GiveHediff</compClass>
<hediffDef>ARA_Fighter_Execution_Damage</hediffDef>
<replaceExisting>true</replaceExisting>
</li>
</comps>
</AbilityDef>
</Defs>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<!-- 女皇 -->
<!-- T0 -->
<HediffDef>
<defName>ARA_Queen_0_Stage</defName>
@@ -218,6 +219,7 @@
</comps>
</HediffDef>
<!-- 工艺 -->
<!-- T0 -->
<HediffDef>
<defName>ARA_WeaponSmith_0_Stage</defName>
@@ -356,6 +358,7 @@
<description>这只阿拉克涅蜜罐种正在产出虫蜜以滋养虫群。一只蜜罐种每天产出10份阿拉克涅虫蜜。</description>
<descriptionHyperlinks>
<ThingDef>ARA_InsectJelly</ThingDef>
<HediffDef>ARA_Myrmecocystus_Production_Medicine</HediffDef>
</descriptionHyperlinks>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
@@ -470,8 +473,8 @@
</AbilityDef>
<HediffDef>
<defName>ARA_Myrmecocystus_Production_Medicine</defName>
<label>医疗专精</label>
<description>这只阿拉克涅蜜罐种已经获得拔耀,不再生产虫蜜,而是生产巢穴所稀缺的药物、化学品,并可以操纵拟线种。</description>
<label>亚种-疗愈种</label>
<description>这只阿拉克涅蜜罐种已经获得拔耀,不再生产虫蜜,而是生产巢穴所稀缺的药物、化学品,并可以操纵拟线种寄生虫</description>
<descriptionHyperlinks>
<ThingDef>ARA_InsectJelly</ThingDef>
</descriptionHyperlinks>
@@ -497,4 +500,283 @@
</li>
</comps>
</HediffDef>
<!-- 战士种 -->
<HediffDef>
<defName>ARA_Fighter_Base</defName>
<label>虫巢战士</label>
<description>阿拉克涅的战士虫们可以将身体变成自己的最强大的武装,随着科技的解锁,它们将获得繁多的技能以供使用。</description>
<descriptionHyperlinks>
<HediffDef>ARA_Fighter_Invisibility</HediffDef>
</descriptionHyperlinks>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<isBad>false</isBad>
<scenarioCanAdd>false</scenarioCanAdd>
<maxSeverity>1.0</maxSeverity>
<!-- <stages>
<li>
<becomeVisible>ture</becomeVisible>
</li>
<li>
<minSeverity>1.01</minSeverity>
<becomeVisible>false</becomeVisible>
</li>
</stages> -->
<comps>
<li Class="HediffCompProperties_GiveAbility">
<abilityDefs>
<li>ARA_AcidSprayBurst</li>
<li>ARA_Toxic_Needle_Fire</li>
<li>ARA_Fighter_Invisibility</li>
</abilityDefs>
</li>
<li Class="HediffCompProperties_RemoveIfOtherHediff">
<hediffs>
<li>ARA_Fighter_Invisibility</li>
</hediffs>
</li>
</comps>
</HediffDef>
<AbilityDef>
<defName>ARA_Fighter_Invisibility</defName>
<label>战士种转换——隐形杀手</label>
<description>使战士种发生内驱性进化,极大地损害其远程武器和特殊技能的使用能力,以换取近乎永久的隐形和强大的近战能力。\n\n该进化过程不可逆</description>
<iconPath>ArachnaeSwarm/UI/Abilities/ARA_Myrmecocystus_Production_Medicine</iconPath>
<cooldownTicksRange>1800</cooldownTicksRange>
<hostile>false</hostile>
<groupAbility>true</groupAbility>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<aiCanUse>true</aiCanUse>
<ai_IsOffensive>true</ai_IsOffensive>
<targetRequired>false</targetRequired>
<jobDef>CastAbilityOnThing</jobDef>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
<range>1</range>
<warmupTime>12</warmupTime>
<soundCast>AcidSpray_Resolve</soundCast>
<violent>false</violent>
<targetable>false</targetable>
<targetParams>
<canTargetSelf>True</canTargetSelf>
</targetParams>
</verbProperties>
<comps>
<li Class="CompProperties_AbilityGiveHediff">
<compClass>CompAbilityEffect_GiveHediff</compClass>
<hediffDef>ARA_Fighter_Invisibility</hediffDef>
<onlyApplyToSelf>True</onlyApplyToSelf>
<replaceExisting>true</replaceExisting>
<severity>1</severity>
</li>
<li Class="ArachnaeSwarm.CompProperties_AbilityResearchPrereq">
<requiredResearch>ARA_Technology_1MED</requiredResearch>
<failMessage>需要科技 节点MED-1"制药" 以解锁进化</failMessage>
</li>
</comps>
</AbilityDef>
<HediffDef>
<defName>ARA_Fighter_Invisibility</defName>
<hediffClass>HediffWithComps</hediffClass>
<label>亚种-追猎种</label>
<description>经过进化的战士种获得了特殊的覆盖全身的虹细胞,这些含纳米晶体的细胞可以折射各处的光线以达到永久隐身状态,直到其发起攻击。此外,它们也获得了更强大的近距离作战能力,缺点则是复眼的退化使其难以进行射击。</description>
<isBad>false</isBad>
<stages>
<li>
<minSeverity>0.01</minSeverity>
<statFactors>
<RangedCooldownFactor>2</RangedCooldownFactor>
<ShootingAccuracyPawn>0.05</ShootingAccuracyPawn>
<AimingDelayFactor>5</AimingDelayFactor>
<StaggerDurationFactor>0</StaggerDurationFactor>
</statFactors>
</li>
</stages>
<comps>
<li Class="HediffCompProperties_Invisibility">
<visibleToPlayer>true</visibleToPlayer>
<fadeDurationTicks>60</fadeDurationTicks>
<recoverFromDisruptedTicks>90</recoverFromDisruptedTicks>
</li>
<li Class="HediffCompProperties_GiveAbility">
<abilityDefs>
<li>ARA_Fighter_Invisibility_Execution</li>
<li>ARA_Fighter_Invisibility_jump</li>
</abilityDefs>
</li>
<li Class="HediffCompProperties_DisappearsOnDeath" />
</comps>
</HediffDef>
<!-- 蜜罐种 -->
<HediffDef>
<defName>ARA_Smokepop_Base</defName>
<label>活体烟罐</label>
<description>迷雾种是阿拉克涅虫族中的大家伙,它们毕不仅拥有厚实的外壳,其灌满信息素浓烟的腹部可以喷出覆盖战场的气体,吸引那些较小的辅虫破土而出对敌方发起疯狂的攻击。</description>
<descriptionHyperlinks>
<HediffDef>ARA_Smokepop_Production_Bacterium</HediffDef>
</descriptionHyperlinks>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<isBad>false</isBad>
<scenarioCanAdd>false</scenarioCanAdd>
<maxSeverity>1.0</maxSeverity>
<renderNodeProperties>
<li>
<nodeClass>PawnRenderNode_AttachmentHead</nodeClass>
<workerClass>PawnRenderNodeWorker_FlipWhenCrawling</workerClass>
<texPath>ArachnaeSwarm/Things/ARA_HiveNode/Addons/ArachnaeNode_Race_Addons_Smokepop_Armor</texPath>
<parentTagDef>Body</parentTagDef>
<useSkinShader>false</useSkinShader>
<useRottenColor>false</useRottenColor>
<rotDrawMode>Fresh, Rotting</rotDrawMode>
<drawSize>0.85</drawSize>
<drawData>
<dataNorth>
<offset>(0, 0, 0.2)</offset>
</dataNorth>
<dataEast>
<offset>(0, 0, 0.2)</offset>
</dataEast>
<dataSouth>
<offset>(0, 0, 0.2)</offset>
</dataSouth>
<dataWest>
<offset>(0, 0, 0.2)</offset>
</dataWest>
<defaultData>
<layer>800</layer>
</defaultData>
</drawData>
</li>
</renderNodeProperties>
<stages>
<li>
<minSeverity>0</minSeverity>
<statOffsets>
<ArmorRating_Blunt>0.75</ArmorRating_Blunt>
<ArmorRating_Sharp>0.8</ArmorRating_Sharp>
</statOffsets>
</li>
</stages>
<comps>
<li Class="HediffCompProperties_GiveAbility">
<abilityDefs>
<li>ARA_Ability_Smokepop</li>
<li>ARA_Smokepop_Production_Bacterium</li>
</abilityDefs>
</li>
<li Class="HediffCompProperties_RemoveIfOtherHediff">
<hediffs>
<li>ARA_Smokepop_Production_Bacterium</li>
</hediffs>
</li>
</comps>
</HediffDef>
<AbilityDef>
<defName>ARA_Smokepop_Production_Bacterium</defName>
<label>迷雾种转换——钜菌专精</label>
<description>使迷雾种发生内驱性进化,以牺牲喷射信息素和降低护甲为代价,使其可以定期产出阿拉克涅虫族的高级材料——活化钜菌。\n\n该进化过程不可逆</description>
<iconPath>ArachnaeSwarm/UI/Abilities/ARA_Myrmecocystus_Production_Medicine</iconPath>
<cooldownTicksRange>1800</cooldownTicksRange>
<hostile>false</hostile>
<groupAbility>true</groupAbility>
<displayGizmoWhileUndrafted>true</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>false</disableGizmoWhileUndrafted>
<aiCanUse>true</aiCanUse>
<ai_IsOffensive>true</ai_IsOffensive>
<targetRequired>false</targetRequired>
<jobDef>CastAbilityOnThing</jobDef>
<verbProperties>
<verbClass>Verb_CastAbility</verbClass>
<range>1</range>
<warmupTime>12</warmupTime>
<soundCast>AcidSpray_Resolve</soundCast>
<violent>false</violent>
<targetable>false</targetable>
<targetParams>
<canTargetSelf>True</canTargetSelf>
</targetParams>
</verbProperties>
<comps>
<li Class="CompProperties_AbilityGiveHediff">
<compClass>CompAbilityEffect_GiveHediff</compClass>
<hediffDef>ARA_Smokepop_Production_Bacterium</hediffDef>
<onlyApplyToSelf>True</onlyApplyToSelf>
<replaceExisting>true</replaceExisting>
<severity>1</severity>
</li>
<li Class="ArachnaeSwarm.CompProperties_AbilityResearchPrereq">
<requiredResearch>ARA_Technology_1MED</requiredResearch>
<failMessage>需要科技 节点MED-1"制药" 以解锁进化</failMessage>
</li>
</comps>
</AbilityDef>
<HediffDef>
<defName>ARA_Smokepop_Production_Bacterium</defName>
<label>亚种-育菌种</label>
<description>这只阿拉克涅迷雾种已经获得拔耀,前部甲壳脱落且无法再喷射信息素,转而换取了生产活化钜菌的能力。</description>
<descriptionHyperlinks>
<ThingDef>ARA_Activated_Bacterium</ThingDef>
</descriptionHyperlinks>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.6, 0.4, 0.8)</defaultLabelColor>
<isBad>false</isBad>
<scenarioCanAdd>false</scenarioCanAdd>
<maxSeverity>1.0</maxSeverity>
<stages>
<li>
<minSeverity>0.01</minSeverity>
</li>
</stages>
<comps>
<li Class="ArachnaeSwarm.MoharHediffs.HediffCompProperties_Spawner">
<!--
==================================================
基础设置 (Basic Settings)
==================================================
-->
<!-- [DEBUG] 如果为true则为此组件启用详细的调试日志记录。 -->
<debug>true</debug>
<!-- 要生成的物品的ThingDef。 -->
<thingToSpawn>ARA_Activated_Bacterium</thingToSpawn>
<!-- 每次生成的基础物品数量。 -->
<spawnCount>3</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>
</Defs>

View File

@@ -253,4 +253,31 @@
</li>
</stages>
</HediffDef>
<HediffDef>
<defName>ARA_Fighter_Execution_Damage</defName>
<label>处决</label>
<description></description>
<defaultLabelColor>(1, 1, 0.8)</defaultLabelColor>
<hediffClass>ArachnaeSwarm.HediffCurseFlame</hediffClass>
<comps>
<li Class="HediffCompProperties_Disappears">
<disappearsAfterTicks>2</disappearsAfterTicks>
</li>
<li Class="HediffCompProperties_DisappearsOnDeath"/>
</comps>
<modExtensions>
<li Class="ArachnaeSwarm.CurseFlameModExt">
<damageDefName>Cut</damageDefName>
<damageRange>300</damageRange>
<damageIntervalTicks>1</damageIntervalTicks>
</li>
</modExtensions>
<stages>
<li>
<label>minor</label>
<becomeVisible>false</becomeVisible>
</li>
</stages>
</HediffDef>
</Defs>

View File

@@ -196,6 +196,7 @@
<defName>ArachnaeNode_Race_Fighter</defName>
<label>阿拉克涅战士种</label>
<race>ArachnaeNode_Race_Fighter</race>
<collidesWithPawns>false</collidesWithPawns>
<defaultFactionType>PlayerColony</defaultFactionType>
<invNutrition>0</invNutrition>
<backstoryFiltersOverride>
@@ -208,8 +209,6 @@
</backstoryFiltersOverride>
<abilities>
<li>ARA_BaseRace_Acid_Launcher</li>
<li>ARA_AcidSprayBurst</li>
<li>ARA_Toxic_Needle_Fire</li>
</abilities>
<apparelTags>
</apparelTags>

View File

@@ -1091,6 +1091,17 @@
<tooltipOverride>阿拉克涅的督虫们生命如精密的发条般运转着。</tooltipOverride>
<showGizmoOnNonPlayerControlled>true</showGizmoOnNonPlayerControlled>
</li>
<li Class="ArachnaeSwarm.CompProperties_HediffGiver">
<hediffs>
<li>ARA_Fighter_Base</li>
</hediffs>
<addChance>1.0</addChance>
<allowDuplicates>false</allowDuplicates>
</li>
<li Class="ArachnaeSwarm.CompProperties_FighterInvisible">
<InvisibilityDef>ARA_Fighter_Invisibility</InvisibilityDef>
<stealthCooldownTicks>120</stealthCooldownTicks>
</li>
</comps>
</AlienRace.ThingDef_AlienRace>
<AlienRace.ThingDef_AlienRace ParentName="ARA_NodeBase">
@@ -1230,8 +1241,8 @@
<!-- <TradePriceImprovement>0.5</TradePriceImprovement> -->
<!-- 自带的甲壳可以防御外部攻击 -->
<ArmorRating_Blunt>1</ArmorRating_Blunt>
<ArmorRating_Sharp>1.2</ArmorRating_Sharp>
<ArmorRating_Blunt>0.25</ArmorRating_Blunt>
<ArmorRating_Sharp>0.4</ArmorRating_Sharp>
<ArmorRating_Heat>0.75</ArmorRating_Heat>
</statBases>

View File

@@ -119,4 +119,33 @@
<allowedArchonexusCount>80</allowedArchonexusCount>
<possessionCount>50</possessionCount>
</ThingDef>
<ThingDef ParentName="ResourceBase">
<defName>ARA_Activated_Bacterium</defName>
<label>活化钜菌</label>
<description>一种被阿拉克涅虫族驯化和改造的极端微生物菌落。它具有超强的生物催化能力和腐蚀同化能力,是不少虫族高级装备的必需品。</description>
<graphicData>
<texPath>ArachnaeSwarm/Item/ARA_Carapace</texPath>
<graphicClass>Graphic_Single</graphicClass>
</graphicData>
<genericMarketSellable>false</genericMarketSellable>
<soundInteract>Standard_Drop</soundInteract>
<soundDrop>Standard_Drop</soundDrop>
<useHitPoints>true</useHitPoints>
<healthAffectsPrice>false</healthAffectsPrice>
<stackLimit>30</stackLimit>
<statBases>
<MarketValue>1</MarketValue>
<MaxHitPoints>50</MaxHitPoints>
<Mass>0.01</Mass>
</statBases>
<thingCategories>
<li>ResourcesRaw</li>
</thingCategories>
<burnableByRecipe>false</burnableByRecipe>
<smeltable>false</smeltable>
<terrainAffordanceNeeded>Medium</terrainAffordanceNeeded>
<allowedArchonexusCount>80</allowedArchonexusCount>
<possessionCount>50</possessionCount>
</ThingDef>
</Defs>