This commit is contained in:
Tourswen
2026-03-30 00:02:25 +08:00
parent f757abad5e
commit 4dd6e71b50
33 changed files with 217 additions and 2535 deletions

Binary file not shown.

View File

@@ -943,22 +943,30 @@
<displayGizmoWhileUndrafted>false</displayGizmoWhileUndrafted>
<aiCanUse>false</aiCanUse>
<verbProperties>
<verbClass>Verb_AbilityShoot</verbClass>
<defaultProjectile>Bullet_ARA_MimicNematode_Needle</defaultProjectile>
<verbClass>Verb_CastAbility</verbClass>
<range>5</range>
<warmupTime>0.1</warmupTime>
<soundCast>Heatspikes_Shot</soundCast>
<soundCastTail>Heatspikes_Tail</soundCastTail>
<muzzleFlashScale>9</muzzleFlashScale>
<ticksBetweenBurstShots>2</ticksBetweenBurstShots>
<warmupTime>0</warmupTime>
<burstShotCount>32</burstShotCount>
<accuracyTouch>1</accuracyTouch>
<accuracyShort>1</accuracyShort>
<accuracyMedium>1</accuracyMedium>
<accuracyLong>1</accuracyLong>
<ai_IsWeapon>false</ai_IsWeapon>
<violent>false</violent>
<targetable>false</targetable>
<targetParams>
<canTargetSelf>true</canTargetSelf>
</targetParams>
</verbProperties>
<comps>
<li Class="ArachnaeSwarm.CompProperties_AbilityLaunchMultiProjectile">
<!-- 默认状态参数 -->
<projectileDef>Bullet_ARA_MimicNematode_Needle</projectileDef>
<numProjectiles>32</numProjectiles>
<!-- 偏移配置 -->
<offsetRadius>1</offsetRadius>
<useRandomOffset>true</useRandomOffset>
<offsetInCircle>true</offsetInCircle>
<avoidOverlap>false</avoidOverlap>
<shotIntervalTicks>3</shotIntervalTicks>
</li>
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
<customLabel>饮食</customLabel>
<showProgressBar>true</showProgressBar>
@@ -975,6 +983,52 @@
</li>
</comps>
</AbilityDef>
<AbilityDef>
<defName>ARA_SymbioticStabilizer</defName>
<label>拟线控制</label>
<description>向目标注射阿拉克涅拟线种的控制溶液,溶液将保证目标不会因为阿拉克涅拟线种在体内的扩散而死亡。</description>
<iconPath>ArachnaeSwarm/UI/Abilities/ARA_Dissolver_Touch</iconPath>
<cooldownTicksRange>6000</cooldownTicksRange>
<charges>5</charges>
<cooldownPerCharge>true</cooldownPerCharge>
<hostile>false</hostile>
<casterMustBeCapableOfViolence>false</casterMustBeCapableOfViolence>
<stunTargetWhileCasting>true</stunTargetWhileCasting>
<aiCanUse>true</aiCanUse>
<!-- <warmupStartSound>AcidSpray_Warmup</warmupStartSound> -->
<jobDef>CastAbilityOnThingMelee</jobDef>
<verbProperties>
<verbClass>Verb_CastAbilityTouch</verbClass>
<violent>false</violent>
<forceNormalTimeSpeed>false</forceNormalTimeSpeed>
<warmupTime>0.5</warmupTime>
<range>-1</range>
<requireLineOfSight>false</requireLineOfSight>
<soundCast>AcidSpray_Resolve</soundCast>
<targetParams>
<canTargetPawns>true</canTargetPawns>
<canTargetAnimals>true</canTargetAnimals>
<canTargetMechs>false</canTargetMechs>
<canTargetSubhumans>true</canTargetSubhumans>
<canTargetEntities>false</canTargetEntities>
<canTargetBuildings>false</canTargetBuildings>
</targetParams>
</verbProperties>
<comps>
<li Class="ArachnaeSwarm.CompProperties_AbilityNeedCost">
<customLabel>饮食</customLabel>
<showProgressBar>true</showProgressBar>
<needDef>Food</needDef>
<needCost>0.2</needCost>
<failMessage>营养值不足,需要进食</failMessage>
</li>
<li Class="CompProperties_AbilityGiveHediff">
<compClass>CompAbilityEffect_GiveHediff</compClass>
<hediffDef>ARA_SymbioticStabilizer</hediffDef>
<replaceExisting>true</replaceExisting>
</li>
</comps>
</AbilityDef>
<ThingDef ParentName="BaseBullet">
<defName>Bullet_ARA_MimicNematode_Needle</defName>
<label>拟线种寄生针</label>

View File

@@ -1,96 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Defs>
<IncidentDef>
<defName>ARA_Loop_Raid_Incident</defName>
<label>虫群袭击</label>
<category>Misc</category>
<targetTags>
<li>Map_PlayerHome</li>
</targetTags>
<!-- This uses the vanilla quest giver worker -->
<workerClass>IncidentWorker_GiveQuest</workerClass>
<!-- This points to our custom QuestScriptDef -->
<questScriptDef>ARA_Loop_Raid_Quest</questScriptDef>
<!--
<baseChance>1.0</baseChance>
<earliestDay>0.001</earliestDay>
<minRefireDays>99999</minRefireDays>
-->
</IncidentDef>
<QuestScriptDef>
<defName>ARA_Loop_Raid_Quest</defName>
<label>虫群袭击</label>
<description>虫群袭击description</description>
<root Class="QuestNode_Sequence">
<nodes>
<li Class="QuestNode_ResolveQuestName">
<rules>
<rulesStrings>
<li>questName->虫群袭击</li>
</rulesStrings>
</rules>
</li>
<li Class="QuestNode_ResolveQuestDescription">
<rules>
<rulesStrings>
<li>questDescription->虫群袭击questDescription</li>
</rulesStrings>
</rules>
</li>
<li Class="ArachnaeSwarm.QuestNode_Root_EventLetter">
<letterLabel>虫群袭击Label</letterLabel>
<letterTitle>虫群袭击Title</letterTitle>
<letterText>虫群袭击Text</letterText>
<options>
<li>
<label>袭击开始</label>
<optionEffects>
<li>
<effects>
<li Class="ArachnaeSwarm.Effect_OpenCustomUI">
<defName>ARA_Loop_Raid_Main_Event_1</defName>
</li>
</effects>
</li>
</optionEffects>
</li>
</options>
</li>
</nodes>
</root>
</QuestScriptDef>
<ArachnaeSwarm.EventDef>
<defName>ARA_Loop_Raid_Main_Event_1</defName>
<characterName>嘻嘻</characterName>
<hiddenWindow>true</hiddenWindow>
<immediateEffects>
<li>
<!-- 系统会从这个列表中根据权重随机选择一个执行 -->
<randomlistEffects>
<li Class="ArachnaeSwarm.Effect_TriggerRaid">
<points>10000</points>
<faction>ARA_Hostile_Hive</faction>
<raidStrategy>ImmediateAttack</raidStrategy>
<raidArrivalMode>EdgeWalkIn</raidArrivalMode>
<groupKind>Combat</groupKind>
<pawnGroupMakers>
<li>
<kindDef>Combat</kindDef>
<commonality>100</commonality>
<options>
<ArachnaeBase_Race_Acidcut_Enermy>7</ArachnaeBase_Race_Acidcut_Enermy>
<ArachnaeNode_Race_ShieldHead_Enermy>3</ArachnaeNode_Race_ShieldHead_Enermy>
</options>
</li>
</pawnGroupMakers>
</li>
</randomlistEffects>
<effects>
</effects>
</li>
</immediateEffects>
</ArachnaeSwarm.EventDef>
</Defs>

View File

@@ -221,6 +221,7 @@
<li Class="HediffCompProperties_GiveAbility">
<abilityDefs>
<li>ARA_MimicNematode_Needle_Fire</li>
<li>ARA_SymbioticStabilizer</li>
</abilityDefs>
</li>
</comps>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<ArachnaeSwarm.EventUIConfigDef>
<defName>ARA_EventUIConfig</defName>
<!-- General Style -->
<labelFont>Small</labelFont>
<drawBorders>false</drawBorders>
<showDefName>false</showDefName>
<showLabel>true</showLabel>
<defaultBackgroundImagePath></defaultBackgroundImagePath>
<!-- Virtual Layout Dimensions -->
<lihuiSize>(500, 800)</lihuiSize>
<nameSize>(650, 130)</nameSize>
<textSize>(650, 350)</textSize>
<optionsWidth>750</optionsWidth>
<!-- Virtual Layout Offsets -->
<textNameOffset>0</textNameOffset>
<optionsTextOffset>0</optionsTextOffset>
<defaultWindowSize>(750, 600)</defaultWindowSize>
<!-- New Layout Dimensions -->
<newLayoutNameSize>(200, 50)</newLayoutNameSize>
<newLayoutLihuiSize>(600, 200)</newLayoutLihuiSize>
<newLayoutTextSize>(600, 200)</newLayoutTextSize>
<newLayoutOptionsWidth>600</newLayoutOptionsWidth>
<newLayoutPadding>20</newLayoutPadding>
<newLayoutTextNameOffset>20</newLayoutTextNameOffset>
<newLayoutOptionsTextOffset>20</newLayoutOptionsTextOffset>
</ArachnaeSwarm.EventUIConfigDef>
</Defs>

View File

@@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<LetterDef>
<defName>ARA_EventChoiceLetter</defName>
<letterClass>ArachnaeSwarm.Letter_EventChoice</letterClass>
<arriveSound>LetterArrive_Good</arriveSound>
<color>(120, 150, 255)</color>
</LetterDef>
</Defs>

View File

@@ -774,6 +774,7 @@
<body>ArachnaeMyrmecocystus_Body</body>
<!-- 血量上限 -->
<baseHealthScale>2</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -927,6 +928,7 @@
<baseBodySize>1.5</baseBodySize>
<!-- 血量上限 -->
<baseHealthScale>3</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -1041,6 +1043,7 @@
<body>ArachnaeWeaponSmith_Body</body>
<baseBodySize>0.8</baseBodySize>
<baseHealthScale>0.75</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -1187,6 +1190,7 @@
<body>ArachnaeFighter_Body</body>
<baseBodySize>0.7</baseBodySize>
<baseHealthScale>3</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -1313,6 +1317,7 @@
<body>ArachnaeFacehugger_Body</body>
<baseBodySize>0.5</baseBodySize>
<baseHealthScale>0.25</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
<li Class="ArachnaeSwarm.CompProperties_HediffGiver">
@@ -1394,6 +1399,7 @@
<!-- 身体类型 -->
<body>ArachnaeSmokepop_Body</body>
<baseHealthScale>4</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -1519,6 +1525,7 @@
<flightStartChanceOnJobStart>1.0</flightStartChanceOnJobStart>
<!-- <baseBodySize>0.8</baseBodySize> -->
<baseHealthScale>2</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -1735,6 +1742,7 @@
<flightStartChanceOnJobStart>1.0</flightStartChanceOnJobStart>
<baseBodySize>0.8</baseBodySize>
<baseHealthScale>2</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>
@@ -1942,6 +1950,7 @@
<body>ArachnaePraetorian_Body</body>
<baseBodySize>2</baseBodySize>
<baseHealthScale>3</baseHealthScale>
<ageGenerationCurve Inherit="False" IsNull="True"/>
</race>
<comps>

View File

@@ -84,15 +84,15 @@
<defName>ARA_SymbioticStabilizer</defName>
<label>信息素抑制</label>
<labelNoun>一种信息素抑制效果</labelNoun>
<description>阿拉克涅信息素溶剂的效果正在生效,它模拟了虫群的共生信号,抑制了体内寄生体的活性。在溶剂生效时不会使得拟线种虫族寄生的进度超过80%。</description>
<description>阿拉克涅信息素溶剂的效果正在生效它模拟了虫群的共生信号抑制了体内寄生体的活性不会使得拟线种虫族寄生的进度超过80%。</description>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.7, 1.0, 0.7)</defaultLabelColor>
<isBad>false</isBad>
<comps>
<li Class="HediffCompProperties_SeverityPerDay">
<severityPerDay>-0.34</severityPerDay> <!-- 严重性每天降低0.34大约3天从1.0掉到0 -->
<!-- <li Class="HediffCompProperties_SeverityPerDay">
<severityPerDay>-0.34</severityPerDay>
<showHoursToRecover>true</showHoursToRecover>
</li>
</li> -->
</comps>
</HediffDef>