base hediff 추가

This commit is contained in:
Cocopomel 2024-04-21 23:14:46 +09:00
parent ff5dd579d9
commit f4ab35ded4
10 changed files with 437 additions and 8 deletions

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<BodyDef>
<defName>PanielBody</defName>
<defName>PNBody</defName>
<label>Automaton</label>
<corePart>
<!--몸통-->

View File

@ -3,7 +3,8 @@
<AlienRace.AlienBackstoryDef Name="BasePanielBackStory" Abstract="True">
<forcedHediffs>
<li>PN_Immune_System</li>
<li>PN_Learning_Limit_System</li>
</forcedHediffs>
</AlienRace.AlienBackstoryDef>

View File

@ -457,7 +457,7 @@
<!-- Gore -->
<nameCategory>HumanStandard</nameCategory>
<hasGenders>false</hasGenders>
<body>PanielBody</body>
<body>PNBody</body>
<baseHungerRate>1</baseHungerRate> <!--배고픔-->
<baseBodySize>1</baseBodySize>
<baseHealthScale>1.0</baseHealthScale> <!--몸빵-->
@ -539,7 +539,7 @@
</points>
</ageGenerationCurve>
<hediffGiverSets>
<li>Human</li>
<li>PN_HediffGiverSet</li>
</hediffGiverSets>
<renderTree>Humanlike</renderTree>
</race>

View File

@ -8,7 +8,7 @@
<pawnKindEntries>
<li>
<kindDefs>
<li>Paniel_Testsubject</li>
<li>PN_Testsubject</li>
</kindDefs>
<chance>100.0</chance>
</li>

View File

@ -13,7 +13,7 @@
<label>Test Subject</label>
<description>This is the settlement where PnL industry is experimenting.</description>
<isPlayer>true</isPlayer>
<basicMemberKind>Paniel_ColonistPawn</basicMemberKind>
<basicMemberKind>PN_ColonistPawn</basicMemberKind>
<pawnSingular>colonist</pawnSingular>
<pawnsPlural>colonists</pawnsPlural>
<techLevel>Industrial</techLevel>

View File

@ -0,0 +1,291 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<!--==================================== 면역 ====================================-->
<HediffDef>
<defName>PN_Immune_System</defName>
<label>Automaton immune system</label>
<description>Automaton immune system</description>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.8, 0.8, 0.8)</defaultLabelColor>
<scenarioCanAdd>false</scenarioCanAdd>
<maxSeverity>1</maxSeverity>
<initialSeverity>1</initialSeverity>
<isBad>false</isBad>
<countsAsAddedPartOrImplant>true</countsAsAddedPartOrImplant>
<stages>
<li>
<becomeVisible>false</becomeVisible>
<makeImmuneTo>
<li>Malaria</li>
<li>SleepingSickness</li>
<li>Plague</li>
<li>FibrousMechanites</li>
<li>WoundInfection</li>
<li>GutWorms</li>
<li>Flu</li>
<li>MuscleParasites</li>
<li>Scaria</li>
<li>FoodPoisoning</li>
</makeImmuneTo>
</li>
</stages>
<modExtensions>
</modExtensions>
</HediffDef>
<!--==================================== 학습 제한 ====================================-->
<HediffDef>
<defName>PN_Learning_Limit_System</defName>
<label>Automaton learning limit system</label>
<description>Automaton learning limit system</description>
<hediffClass>HediffWithComps</hediffClass>
<defaultLabelColor>(0.8, 0.8, 0.8)</defaultLabelColor>
<scenarioCanAdd>false</scenarioCanAdd>
<maxSeverity>1</maxSeverity>
<initialSeverity>1</initialSeverity>
<isBad>false</isBad>
<countsAsAddedPartOrImplant>true</countsAsAddedPartOrImplant>
<stages>
<li>
<becomeVisible>false</becomeVisible>
<statFactors>
<GlobalLearningFactor>0</GlobalLearningFactor>
</statFactors>
</li>
</stages>
<comps>
</comps>
</HediffDef>
<!--==================================== 오토마톤 기본 ====================================-->
<!--<HediffDef>
<defName>PanielBaseHediff</defName>
<hediffClass>HediffWithComps</hediffClass>
<label>Automaton base</label>
<description>This pawn is Automaton.</description>
<defaultLabelColor>(1,1,0.5)</defaultLabelColor>
<scenarioCanAdd>false</scenarioCanAdd>
<maxSeverity>1</maxSeverity>
<initialSeverity>1</initialSeverity>
<isBad>false</isBad>
<countsAsAddedPartOrImplant>true</countsAsAddedPartOrImplant>
<stages>
<li>
<becomeVisible>false</becomeVisible>
<painFactor>0</painFactor>
<foodPoisoningChanceFactor>0</foodPoisoningChanceFactor>
<naturalHealingFactor>0</naturalHealingFactor>
<hungerRateFactorOffset>-0.75</hungerRateFactorOffset>
<statFactors>
<InjuryHealingFactor>0</InjuryHealingFactor>
<Fertility MayRequire="Ludeon.RimWorld.Biotech">0</Fertility>
</statFactors>
</li>
</stages>
<comps>
<li Class="MoharHediffs.HediffCompProperties_HediffNullifier">
<hediffToNullify>
<li>Carcinoma</li>
<li>BadBack</li>
<li>Frail</li>
<li>Cataract</li>
<li>Blindness</li>
<li>HearingLoss</li>
<li>Asthma</li>
<li>HeartArteryBlockage</li>
<li>WoundInfection</li>
<li>Cirrhosis</li>
<li>ResurrectionSickness</li>
<li>PsychiteAddiction</li>
<li>YayoHigh</li>
<li>PsychiteTolerance</li>
<li>PsychiteTeaHigh</li>
<li>FlakeHigh</li>
<li>GoJuiceHigh</li>
<li>GoJuiceAddiction</li>
<li>GoJuiceTolerance</li>
<li>Pregnant</li>
<li MayRequire="Ludeon.RimWorld.Biotech">PregnantHuman</li>
</hediffToNullify>
<showMessage>true</showMessage>
<nullifyKey>PN_HediffNullifier</nullifyKey>
</li>
</comps>
<modExtensions>
<li Class="YORHG.HediffDefModExtension">
<race>Paniel_Race</race>
</li>
</modExtensions>
</HediffDef>-->
<!--==================================== 오토마톤 출혈 ====================================-->
<HediffDef>
<defName>PN_OilLoss</defName>
<label>oil loss</label>
<description>A reduction in the normal oil volume. Minor oil loss has relatively mild effects, but when oil loss becomes severe, internal device becomes badly impaired and the victim loses the ability to move. Extreme oil loss leads to explosion.</description>
<lethalSeverity>1</lethalSeverity>
<stages>
<li>
<label>minor</label>
<becomeVisible>false</becomeVisible>
</li>
<li>
<minSeverity>0.15</minSeverity>
<label>minor</label>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.2</offset>
</li>
</capMods>
</li>
<li>
<minSeverity>0.30</minSeverity>
<label>moderate</label>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.4</offset>
</li>
</capMods>
</li>
<li>
<minSeverity>0.45</minSeverity>
<label>severe</label>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.6</offset>
</li>
</capMods>
</li>
<li>
<minSeverity>0.60</minSeverity>
<label>extreme</label>
<lifeThreatening>true</lifeThreatening>
<capMods>
<li>
<capacity>Consciousness</capacity>
<setMax>0.3</setMax>
</li>
</capMods>
</li>
</stages>
</HediffDef>
<!--==================================== 오토마톤 과열 ====================================-->
<HediffDef>
<defName>PN_Overheating</defName>
<label>overheating</label>
<description>A generalized disruption to body functioning caused by excessive exposure to heat and sun. The victim becomes dizzy, weak, and confused. Recovery is quick once in a cool area, but if heat exposure continues, overheating gets worse until death.</description>
<defaultLabelColor>(0.8, 0.8, 0.35)</defaultLabelColor>
<lethalSeverity>1</lethalSeverity>
<taleOnVisible>HeatstrokeRevealed</taleOnVisible>
<stages>
<li>
<label>initial</label>
<becomeVisible>false</becomeVisible>
</li>
<li>
<label>initial</label>
<minSeverity>0.04</minSeverity>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.1</offset>
</li>
</capMods>
</li>
<li>
<label>minor</label>
<minSeverity>0.2</minSeverity>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.2</offset>
</li>
</capMods>
</li>
<li>
<label>serious</label>
<minSeverity>0.35</minSeverity>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.4</offset>
</li>
</capMods>
</li>
<li>
<label>extreme</label>
<minSeverity>0.62</minSeverity>
<lifeThreatening>true</lifeThreatening>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.6</offset>
</li>
</capMods>
</li>
</stages>
</HediffDef>
<!--==================================== 오토마톤 과냉 ====================================-->
<HediffDef>
<defName>PN_OverCooling</defName>
<label>overcooling</label>
<description>Dangerously low core body temperature. Unless re-warmed, overcooling gets worse and ends in death. Recovery is quick once the victim is re-warmed. Avoid overcooling by wearing warm clothes in cold environments.</description>
<defaultLabelColor>(0.8, 0.8, 1)</defaultLabelColor>
<lethalSeverity>1</lethalSeverity>
<taleOnVisible>HypothermiaRevealed</taleOnVisible>
<stages>
<li>
<label>initial</label>
<becomeVisible>false</becomeVisible>
</li>
<li>
<label>initial</label>
<minSeverity>0.04</minSeverity>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.1</offset>
</li>
</capMods>
</li>
<li>
<label>minor</label>
<minSeverity>0.2</minSeverity>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.2</offset>
</li>
</capMods>
</li>
<li>
<label>serious</label>
<minSeverity>0.35</minSeverity>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.4</offset>
</li>
</capMods>
</li>
<li>
<label>extreme</label>
<minSeverity>0.62</minSeverity>
<lifeThreatening>true</lifeThreatening>
<capMods>
<li>
<capacity>Consciousness</capacity>
<offset>-0.6</offset>
</li>
</capMods>
</li>
</stages>
</HediffDef>
</Defs>

View File

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<HediffGiverSetDef>
<defName>PN_HediffGiverSet</defName>
<hediffGivers>
<li Class="HediffGiver_Bleeding">
<hediff>PN_OilLoss</hediff>
</li>
<li Class="HediffGiver_Hypothermia">
<hediff>PN_OverCooling</hediff>
</li>
<li Class="HediffGiver_Heat">
<hediff>PN_Overheating</hediff>
</li>
<li Class="HediffGiver_Birthday">
<hediff>Dementia</hediff>
<partsToAffect>
<li>Brain</li>
</partsToAffect>
<ageFractionChanceCurve>
<points>
<li>(0.85, 0)</li>
<li>(0.95, 0.0093)</li>
<li>(1.15, 0.093)</li>
</points>
</ageFractionChanceCurve>
</li>
<li Class="HediffGiver_Birthday">
<hediff>Alzheimers</hediff>
<partsToAffect>
<li>PNBrain</li>
</partsToAffect>
<ageFractionChanceCurve>
<points>
<li>(0.42, 0)</li>
<li>(0.7, 0.00061)</li>
<li>(0.9, 0.0012)</li>
<li>(1, 0.002)</li>
<li>(1.5, 0.003)</li>
</points>
</ageFractionChanceCurve>
<averageSeverityPerDayBeforeGeneration>0.001</averageSeverityPerDayBeforeGeneration>
</li>
<li Class="HediffGiver_BrainInjury">
<hediff>TraumaSavant</hediff>
<partsToAffect>
<li>PNBrain</li>
</partsToAffect>
<chancePerDamagePct>0.12</chancePerDamagePct>
<letterLabel>Trauma savant</letterLabel>
<letter>[PAWN_nameDef]'s brain injury has caused [PAWN_objective] to develop strange savant-like abilities.</letter>
</li>
</hediffGivers>
</HediffGiverSetDef>
</Defs>

View File

@ -28,7 +28,7 @@
<!-- 정착민 -->
<PawnKindDef ParentName="PanielPlayerBasePawnKind">
<defName>Paniel_ColonistPawn</defName>
<defName>PN_ColonistPawn</defName>
<label>Paniel colonist</label>
<chemicalAddictionChance>0</chemicalAddictionChance>
<forceNormalGearQuality>true</forceNormalGearQuality>
@ -59,7 +59,7 @@
<!-- 실험체 -->
<PawnKindDef ParentName="PanielPlayerBasePawnKind">
<defName>Paniel_Testsubject</defName>
<defName>PN_Testsubject</defName>
<label>Paniel test subject</label>
<chemicalAddictionChance>0</chemicalAddictionChance>
<forceNormalGearQuality>true</forceNormalGearQuality>

View File

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<!--==================================== 오토마톤 제작대 ====================================-->
<ThingDef ParentName="BenchBase">
<defName>PN_AutomatonBench</defName>
<label>automaton fabrication bench</label>
<description>automaton fabrication bench</description>
<thingClass>Building_WorkTable</thingClass>
<altitudeLayer>Building</altitudeLayer>
<passability>PassThroughOnly</passability>
<pathCost>50</pathCost>
<statBases>
<MaxHitPoints>300</MaxHitPoints>
<WorkToBuild>5000</WorkToBuild>
<Flammability>1.0</Flammability>
</statBases>
<minifiedDef />
<thingCategories Inherit="false" />
<size>(5,2)</size>
<costList>
<Steel>200</Steel>
<ComponentIndustrial>8</ComponentIndustrial>
</costList>
<comps>
<li Class="CompProperties_AffectedByFacilities">
<linkableFacilities>
<li>ToolCabinet</li>
</linkableFacilities>
</li>
<li Class="CompProperties_Power">
<compClass>CompPowerTrader</compClass>
<basePowerConsumption>250</basePowerConsumption>
<shortCircuitInRain>true</shortCircuitInRain>
</li>
<li Class="CompProperties_Flickable"/>
<li Class="CompProperties_Breakdownable"/>
</comps>
<recipes>
</recipes>
<graphicData>
<texPath>Things/Building/PNAutomatonBench</texPath>
<graphicClass>Graphic_Multi</graphicClass>
<shaderType>CutoutComplex</shaderType>
<drawSize>(7,4)</drawSize>
<damageData>
<cornerTL>Damage/Corner</cornerTL>
<cornerTR>Damage/Corner</cornerTR>
<cornerBL>Damage/Corner</cornerBL>
<cornerBR>Damage/Corner</cornerBR>
</damageData>
</graphicData>
<castEdgeShadows>true</castEdgeShadows>
<staticSunShadowHeight>0.20</staticSunShadowHeight>
<inspectorTabs>
<li>ITab_Bills</li>
</inspectorTabs>
<building>
<spawnedConceptLearnOpportunity>BillsTab</spawnedConceptLearnOpportunity>
</building>
<fillPercent>0.5</fillPercent>
<interactionCellOffset>(0,0,-1)</interactionCellOffset>
<hasInteractionCell>true</hasInteractionCell>
<terrainAffordanceNeeded>Heavy</terrainAffordanceNeeded>
<designationCategory>Production</designationCategory>
<surfaceType>Item</surfaceType>
<designationHotKey>Misc12</designationHotKey>
<constructionSkillPrerequisite>6</constructionSkillPrerequisite>
<placeWorkers>
<li>PlaceWorker_ShowFacilitiesConnections</li>
<li>PlaceWorker_PreventInteractionSpotOverlap</li>
</placeWorkers>
<researchPrerequisites>
<!--<li>PNRP_Production</li>-->
</researchPrerequisites>
</ThingDef>
</Defs>