Difference between revisions of "User:JuliaCat/data"

From RimWorld Wiki
Jump to navigation Jump to search
Line 85: Line 85:
 
| <!--description-->Mood represents how happy or stressed someone is. If mood gets too low, the person may suffer a mental break. Depending on how low their mood is, someone who has a mental break may have a minor breaks like hiding in their room for a day, or a major break like going on a murder spree.<!--/description-->
 
| <!--description-->Mood represents how happy or stressed someone is. If mood gets too low, the person may suffer a mental break. Depending on how low their mood is, someone who has a mental break may have a minor breaks like hiding in their room for a day, or a major break like going on a murder spree.<!--/description-->
 
| <!--baseLevel-->0.32<!--/baseLevel-->
 
| <!--baseLevel-->0.32<!--/baseLevel-->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Mood|Need_Mood]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Mood|Need_Mood]]'''<!--/needClass-->
Line 103: Line 103:
 
! <!--label-->{{ucfirst:food}}<!--/label-->
 
! <!--label-->{{ucfirst:food}}<!--/label-->
 
| <!--description-->Food is the amount of nutrition a creature has consumed recently. If it is at zero, a creature will become increasingly malnourished and eventually die.<!--/description-->
 
| <!--description-->Food is the amount of nutrition a creature has consumed recently. If it is at zero, a creature will become increasingly malnourished and eventually die.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Food|Need_Food]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Food|Need_Food]]'''<!--/needClass-->
Line 118: Line 118:
 
! <!--label-->{{ucfirst:sleep}}<!--/label-->
 
! <!--label-->{{ucfirst:sleep}}<!--/label-->
 
| <!--description-->Sleep is how much time a creature has spent sleeping recently. If it is at zero, a creature will eventually fall asleep on the spot.<!--/description-->
 
| <!--description-->Sleep is how much time a creature has spent sleeping recently. If it is at zero, a creature will eventually fall asleep on the spot.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Rest|Need_Rest]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Rest|Need_Rest]]'''<!--/needClass-->
Line 132: Line 132:
 
! <!--label-->{{ucfirst:recreation}}<!--/label-->
 
! <!--label-->{{ucfirst:recreation}}<!--/label-->
 
| <!--description-->Recreation is the need to have fun. Repeating the same kind of activity makes it less fun, so variety is necessary.<!--/description-->
 
| <!--description-->Recreation is the need to have fun. Repeating the same kind of activity makes it less fun, so variety is necessary.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Joy|Need_Joy]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Joy|Need_Joy]]'''<!--/needClass-->
Line 152: Line 152:
 
| <!--description-->Beauty reflects how visually pleasing a person has found their surroundings recently. Beautiful things like art improve beauty when viewed, while ugly things like filth and rough stone surfaces reduce it.<!--/description-->
 
| <!--description-->Beauty reflects how visually pleasing a person has found their surroundings recently. Beautiful things like art improve beauty when viewed, while ugly things like filth and rough stone surfaces reduce it.<!--/description-->
 
| <!--baseLevel-->0.4<!--/baseLevel-->
 
| <!--baseLevel-->0.4<!--/baseLevel-->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Beauty|Need_Beauty]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Beauty|Need_Beauty]]'''<!--/needClass-->
Line 167: Line 167:
 
! <!--label-->{{ucfirst:comfort}}<!--/label-->
 
! <!--label-->{{ucfirst:comfort}}<!--/label-->
 
| <!--description-->Comfort is gained by sitting in or sleeping on comfortable furniture. It is acquired while laying in bed, sitting in a chair while working, or other times.<!--/description-->
 
| <!--description-->Comfort is gained by sitting in or sleeping on comfortable furniture. It is acquired while laying in bed, sitting in a chair while working, or other times.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Comfort|Need_Comfort]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Comfort|Need_Comfort]]'''<!--/needClass-->
Line 184: Line 184:
 
! <!--label-->{{ucfirst:outdoors}}<!--/label-->
 
! <!--label-->{{ucfirst:outdoors}}<!--/label-->
 
| <!--description-->Outdoors expresses the need not to be cooped up inside. It is harmed by long periods inside, especially underground. It improves when someone spends time under the sky, especially outdoors. It's not about the size of the rooms, but the need to be outside from time to time. Lack of outdoors time is a significant challenge for people who dwell in underground bases.<!--/description-->
 
| <!--description-->Outdoors expresses the need not to be cooped up inside. It is harmed by long periods inside, especially underground. It improves when someone spends time under the sky, especially outdoors. It's not about the size of the rooms, but the need to be outside from time to time. Lack of outdoors time is a significant challenge for people who dwell in underground bases.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Outdoors|Need_Outdoors]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Outdoors|Need_Outdoors]]'''<!--/needClass-->
Line 198: Line 198:
 
! <!--label-->{{ucfirst:indoors}}<!--/label-->
 
! <!--label-->{{ucfirst:indoors}}<!--/label-->
 
| <!--description-->Indoors expresses the need to be within walls and under a roof. It is harmed by spending time in outdoor areas or not under roofs. To raise this need past 50%, a person must be under an overhead mountain, not just a normal roof.<!--/description-->
 
| <!--description-->Indoors expresses the need to be within walls and under a roof. It is harmed by spending time in outdoor areas or not under roofs. To raise this need past 50%, a person must be under an overhead mountain, not just a normal roof.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Indoors|Need_Indoors]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Indoors|Need_Indoors]]'''<!--/needClass-->
Line 212: Line 212:
 
! <!--label-->{{ucfirst:chemical}}<!--/label-->
 
! <!--label-->{{ucfirst:chemical}}<!--/label-->
 
| <!--description-->Chemical expresses the desire to ingest drugs. When above a certain level it will create good mood, but when below a certain level it will create increasingly bad mood.<!--/description-->
 
| <!--description-->Chemical expresses the desire to ingest drugs. When above a certain level it will create good mood, but when below a certain level it will create increasingly bad mood.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
 
| <!--fallPerDay-->0.071<!--/fallPerDay-->
 
| <!--fallPerDay-->0.071<!--/fallPerDay-->
 
|<!-- Details -->
 
|<!-- Details -->
Line 226: Line 226:
 
! <!--label-->{{ucfirst:room size}}<!--/label-->
 
! <!--label-->{{ucfirst:room size}}<!--/label-->
 
| -<!-- Description -->
 
| -<!-- Description -->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_RoomSize|Need_RoomSize]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_RoomSize|Need_RoomSize]]'''<!--/needClass-->
Line 256: Line 256:
 
! <!--label-->{{ucfirst:go-juice}}<!--/label-->
 
! <!--label-->{{ucfirst:go-juice}}<!--/label-->
 
| <!--description-->Because of a go-juice addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
 
| <!--description-->Because of a go-juice addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
 
| <!--fallPerDay-->0.333<!--/fallPerDay-->
 
| <!--fallPerDay-->0.333<!--/fallPerDay-->
 
|<!-- Details -->
 
|<!-- Details -->
Line 272: Line 272:
 
! <!--label-->{{ucfirst:luciferium}}<!--/label-->
 
! <!--label-->{{ucfirst:luciferium}}<!--/label-->
 
| <!--description-->This person's body is enhanced by luciferium mechanites.<br /><br />Without regular doses of luciferium, the mechanites will lose cohesion. If this happens, the user becomes continuously, violently insane and eventually dies.<br /><br />This addiction never goes away.<!--/description-->
 
| <!--description-->This person's body is enhanced by luciferium mechanites.<br /><br />Without regular doses of luciferium, the mechanites will lose cohesion. If this happens, the user becomes continuously, violently insane and eventually dies.<br /><br />This addiction never goes away.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
 
| <!--fallPerDay-->0.15<!--/fallPerDay-->
 
| <!--fallPerDay-->0.15<!--/fallPerDay-->
 
|<!-- Details -->
 
|<!-- Details -->
Line 289: Line 289:
 
! <!--label-->{{ucfirst:psychite}}<!--/label-->
 
! <!--label-->{{ucfirst:psychite}}<!--/label-->
 
| <!--description-->Because of a psychite addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
 
| <!--description-->Because of a psychite addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
Line 305: Line 305:
 
! <!--label-->{{ucfirst:smokeleaf}}<!--/label-->
 
! <!--label-->{{ucfirst:smokeleaf}}<!--/label-->
 
| <!--description-->Because of a smokeleaf dependence, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
 
| <!--description-->Because of a smokeleaf dependence, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
Line 321: Line 321:
 
! <!--label-->{{ucfirst:wake-up}}<!--/label-->
 
! <!--label-->{{ucfirst:wake-up}}<!--/label-->
 
| <!--description-->Because of a wake-up addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
 
| <!--description-->Because of a wake-up addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
 
| <!--fallPerDay-->0.333<!--/fallPerDay-->
 
| <!--fallPerDay-->0.333<!--/fallPerDay-->
 
|<!-- Details -->
 
|<!-- Details -->
Line 337: Line 337:
 
! <!--label-->{{ucfirst:alcohol}}<!--/label-->
 
! <!--label-->{{ucfirst:alcohol}}<!--/label-->
 
| <!--description-->Because of an alcohol addiction, this person needs to regularly consume alcohol to avoid withdrawal symptoms.<!--/description-->
 
| <!--description-->Because of an alcohol addiction, this person needs to regularly consume alcohol to avoid withdrawal symptoms.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
Line 353: Line 353:
 
! <!--label-->{{ucfirst:ambrosia}}<!--/label-->
 
! <!--label-->{{ucfirst:ambrosia}}<!--/label-->
 
| <!--description-->Because of an ambrosia addiction, this person needs to regularly consume ambrosia to avoid withdrawal symptoms.<!--/description-->
 
| <!--description-->Because of an ambrosia addiction, this person needs to regularly consume ambrosia to avoid withdrawal symptoms.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Chemical|Need_Chemical]]'''<!--/needClass-->
Line 372: Line 372:
 
| Authority<!-- Label -->
 
| Authority<!-- Label -->
 
| <!--description-->dummy need<!--/description-->
 
| <!--description-->dummy need<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Authority|Need_Authority]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Authority|Need_Authority]]'''<!--/needClass-->
Line 409: Line 409:
 
| <!--description-->People with the deathrest gene must deathrest every few days or quadrums. Deathresting means entering a regenerative coma for several days, during which the rester appears dead.<br /><br />A variety of special buildings can connect to a deathresting person and give them bonuses upon waking.<br /><br />Going too long without deathrest will cause deathrest exhaustion, which massively degrades a person's physical capacities.<!--/description-->
 
| <!--description-->People with the deathrest gene must deathrest every few days or quadrums. Deathresting means entering a regenerative coma for several days, during which the rester appears dead.<br /><br />A variety of special buildings can connect to a deathresting person and give them bonuses upon waking.<br /><br />Going too long without deathrest will cause deathrest exhaustion, which massively degrades a person's physical capacities.<!--/description-->
 
| <!--baseLevel-->0.01<!--/baseLevel-->
 
| <!--baseLevel-->0.01<!--/baseLevel-->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Deathrest|Need_Deathrest]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Deathrest|Need_Deathrest]]'''<!--/needClass-->
Line 423: Line 423:
 
| <!--description-->Kill satiety fulfills a built-in desire to do violence at close range to human victims. If it isn't satiated, the person will become very unhappy.<!--/description-->
 
| <!--description-->Kill satiety fulfills a built-in desire to do violence at close range to human victims. If it isn't satiated, the person will become very unhappy.<!--/description-->
 
| <!--baseLevel-->0<!--/baseLevel-->
 
| <!--baseLevel-->0<!--/baseLevel-->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_KillThirst|Need_KillThirst]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_KillThirst|Need_KillThirst]]'''<!--/needClass-->
Line 436: Line 436:
 
! <!--label-->{{ucfirst:learning}}<!--/label-->
 
! <!--label-->{{ucfirst:learning}}<!--/label-->
 
| <!--description-->Children need new lessons and experiences to grow up well, and will become unhappy without them.<br /><br />Children will only do learning activities when their schedule is set to Recreation or Anything.<br /><br />Activities that fulfill a child's desire to learn include:<br />{ACTIVITIES}<br /><br />A satisfied learning need helps children gain growth tiers faster, giving them more passions and choices during growth moments.<!--/description-->
 
| <!--description-->Children need new lessons and experiences to grow up well, and will become unhappy without them.<br /><br />Children will only do learning activities when their schedule is set to Recreation or Anything.<br /><br />Activities that fulfill a child's desire to learn include:<br />{ACTIVITIES}<br /><br />A satisfied learning need helps children gain growth tiers faster, giving them more passions and choices during growth moments.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Learning|Need_Learning]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Learning|Need_Learning]]'''<!--/needClass-->
Line 450: Line 450:
 
! <!--label-->{{ucfirst:play}}<!--/label-->
 
! <!--label-->{{ucfirst:play}}<!--/label-->
 
| <!--description-->Babies need to be played with by adults. If they aren't played with, they will become unhappy.<!--/description-->
 
| <!--description-->Babies need to be played with by adults. If they aren't played with, they will become unhappy.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_Play|Need_Play]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_Play|Need_Play]]'''<!--/needClass-->
Line 464: Line 464:
 
! <!--label-->{{ucfirst:energy}}<!--/label-->
 
! <!--label-->{{ucfirst:energy}}<!--/label-->
 
| <!--description-->A reserve of bioelectric energy needed for a mechanoid to function. It can be recharged at a charging station. If it reaches zero, the mech will go into dormant self-charging mode and recharge very slowly.<!--/description-->
 
| <!--description-->A reserve of bioelectric energy needed for a mechanoid to function. It can be recharged at a charging station. If it reaches zero, the mech will go into dormant self-charging mode and recharge very slowly.<!--/description-->
| <!-- Base Level -->0.5
+
| <!-- Base Level -->
| <!-- Fall Per Day -->0.5
+
| <!-- Fall Per Day -->
 
|<!-- Details -->
 
|<!-- Details -->
 
* Need Class: <!--needClass-->'''[[#Need_MechEnergy|Need_MechEnergy]]'''<!--/needClass-->
 
* Need Class: <!--needClass-->'''[[#Need_MechEnergy|Need_MechEnergy]]'''<!--/needClass-->
Line 481: Line 481:
 
<!--/div-->
 
<!--/div-->
  
 +
 +
=== Need_Seeker ===
 +
 +
// Token: 0x040045F3 RID: 17907
 +
private const float GUIArrowTolerance = 0.05f;
  
 
=== Need_Mood ===
 
=== Need_Mood ===
 +
 +
// Token: 0x040045B5 RID: 17845
 +
public ThoughtHandler thoughts;
 +
 +
// Token: 0x040045B6 RID: 17846
 +
public PawnObserver observer;
 +
 +
// Token: 0x040045B7 RID: 17847
 +
public PawnRecentMemory recentMemory;
 +
 +
// Token: 0x040045B8 RID: 17848
 +
private int lastInstantMoodCheckTick = -9999;
 +
 +
// Token: 0x040045B9 RID: 17849
 +
private float lastInstantMood = -1f;
 +
 
=== Need_Food ===
 
=== Need_Food ===
 +
 +
// Token: 0x04004571 RID: 17777
 +
public int lastNonStarvingTick = -99999;
 +
 +
// Token: 0x04004572 RID: 17778
 +
public const float BaseFoodFallPerTick = 2.66666666E-05f;
 +
 +
// Token: 0x04004573 RID: 17779
 +
private const float BaseMalnutritionSeverityPerDay = 0.453f;
 +
 +
// Token: 0x04004574 RID: 17780
 +
private const float BaseMalnutritionSeverityPerInterval = 0.0011325f;
 +
 +
// Token: 0x04004575 RID: 17781
 +
private CompHoldingPlatformTarget platformComp;
 +
 
=== Need_Rest ===
 
=== Need_Rest ===
 +
 +
// Token: 0x040045DC RID: 17884
 +
private int lastRestTick = -999;
 +
 +
// Token: 0x040045DD RID: 17885
 +
private float lastRestEffectiveness = 1f;
 +
 +
// Token: 0x040045DE RID: 17886
 +
private int ticksAtZero;
 +
 +
// Token: 0x040045DF RID: 17887
 +
private const float FullSleepHours = 10.5f;
 +
 +
// Token: 0x040045E0 RID: 17888
 +
public const float BaseRestGainPerTick = 3.809524E-05f;
 +
 +
// Token: 0x040045E1 RID: 17889
 +
private const float BaseRestFallPerTick = 1.58333332E-05f;
 +
 +
// Token: 0x040045E2 RID: 17890
 +
public const float ThreshTired = 0.28f;
 +
 +
// Token: 0x040045E3 RID: 17891
 +
public const float ThreshVeryTired = 0.14f;
 +
 +
// Token: 0x040045E4 RID: 17892
 +
public const float DefaultFallAsleepMaxLevel = 0.75f;
 +
 +
// Token: 0x040045E5 RID: 17893
 +
public const float DefaultNaturalWakeThreshold = 1f;
 +
 +
// Token: 0x040045E6 RID: 17894
 +
public const float CanWakeThreshold = 0.2f;
 +
 +
// Token: 0x040045E7 RID: 17895
 +
private const float BaseInvoluntarySleepMTBDays = 0.25f;
 +
 
=== Need_Joy ===
 
=== Need_Joy ===
 +
 +
// Token: 0x0400459A RID: 17818
 +
public JoyToleranceSet tolerances = new JoyToleranceSet();
 +
 +
// Token: 0x0400459B RID: 17819
 +
private int lastGainTick = -999;
 +
 
=== Need_Beauty ===
 
=== Need_Beauty ===
 +
 +
// Token: 0x04004536 RID: 17718
 +
private const float BeautyImpactFactor = 0.1f;
 +
 +
// Token: 0x04004537 RID: 17719
 +
private const float ThreshVeryUgly = 0.01f;
 +
 +
// Token: 0x04004538 RID: 17720
 +
private const float ThreshUgly = 0.15f;
 +
 +
// Token: 0x04004539 RID: 17721
 +
private const float ThreshNeutral = 0.35f;
 +
 +
// Token: 0x0400453A RID: 17722
 +
private const float ThreshPretty = 0.65f;
 +
 +
// Token: 0x0400453B RID: 17723
 +
private const float ThreshVeryPretty = 0.85f;
 +
 +
// Token: 0x0400453C RID: 17724
 +
private const float ThreshBeautiful = 0.99f;
 +
 +
// Token: 0x0400453D RID: 17725
 +
private int lastInstantBeautyCheckTick = -9999;
 +
 +
// Token: 0x0400453E RID: 17726
 +
private float lastInstantBeauty = -1f;
 +
 
=== Need_Comfort ===
 
=== Need_Comfort ===
 +
 +
// Token: 0x0400455B RID: 17755
 +
public float lastComfortUsed;
 +
 +
// Token: 0x0400455C RID: 17756
 +
public int lastComfortUseTick;
 +
 +
// Token: 0x0400455D RID: 17757
 +
private const float MinNormal = 0.1f;
 +
 +
// Token: 0x0400455E RID: 17758
 +
private const float MinComfortable = 0.6f;
 +
 +
// Token: 0x0400455F RID: 17759
 +
private const float MinVeryComfortable = 0.7f;
 +
 +
// Token: 0x04004560 RID: 17760
 +
private const float MinExtremelyComfortablee = 0.8f;
 +
 +
// Token: 0x04004561 RID: 17761
 +
private const float MinLuxuriantlyComfortable = 0.9f;
 +
 +
// Token: 0x04004562 RID: 17762
 +
public const int ComfortUseInterval = 10;
 +
 
=== Need_Outdoors ===
 
=== Need_Outdoors ===
 +
// Token: 0x040045C1 RID: 17857
 +
private const float Delta_IndoorsThickRoof = -0.45f;
 +
 +
// Token: 0x040045C2 RID: 17858
 +
private const float Delta_OutdoorsThickRoof = -0.4f;
 +
 +
// Token: 0x040045C3 RID: 17859
 +
private const float Delta_IndoorsThinRoof = -0.32f;
 +
 +
// Token: 0x040045C4 RID: 17860
 +
private const float Minimum_IndoorsThinRoof = 0.2f;
 +
 +
// Token: 0x040045C5 RID: 17861
 +
private const float Delta_OutdoorsThinRoof = 1f;
 +
 +
// Token: 0x040045C6 RID: 17862
 +
private const float Delta_IndoorsNoRoof = 5f;
 +
 +
// Token: 0x040045C7 RID: 17863
 +
private const float Delta_OutdoorsNoRoof = 8f;
 +
 +
// Token: 0x040045C8 RID: 17864
 +
private const float DeltaFactor_InBed = 0.2f;
 +
 +
// Token: 0x040045C9 RID: 17865
 +
private float lastEffectiveDelta;
 +
 
=== Need_Indoors ===
 
=== Need_Indoors ===
 +
 +
// Token: 0x0400457D RID: 17789
 +
private static readonly float[] Thresholds = new float[]
 +
{
 +
0.8f,
 +
0.6f,
 +
0.4f,
 +
0.2f,
 +
0.05f
 +
};
 +
 +
// Token: 0x0400457E RID: 17790
 +
private const float Max_NotUnderThickRoof = 0.5f;
 +
 +
// Token: 0x0400457F RID: 17791
 +
private const float Delta_Indoors_ThickRoof = 2f;
 +
 +
// Token: 0x04004580 RID: 17792
 +
private const float Delta_Indoors_ThinRoof = 1f;
 +
 +
// Token: 0x04004581 RID: 17793
 +
private const float Delta_Indoors_NoRoof = 0f;
 +
 +
// Token: 0x04004582 RID: 17794
 +
private const float Delta_Outdoors_ThickRoof = 0f;
 +
 +
// Token: 0x04004583 RID: 17795
 +
private const float Delta_Outdoors_ThinRoof = -0.25f;
 +
 +
// Token: 0x04004584 RID: 17796
 +
private const float Delta_Outdoors_NoRoof = -0.25f;
 +
 +
// Token: 0x04004585 RID: 17797
 +
private const float Delta_NotUnderThickRoofOverThreshold = -0.5f;
 +
 +
// Token: 0x04004586 RID: 17798
 +
private float lastEffectiveDelta;
  
 
=== Need_Chemical_Any ===
 
=== Need_Chemical_Any ===
 +
<div>
 
** {{+|0.2}} gain for ingesting [[Social drugs]]
 
** {{+|0.2}} gain for ingesting [[Social drugs]]
 
** {{+|0.3}} gain for ingesting [[Hard drugs]]
 
** {{+|0.3}} gain for ingesting [[Hard drugs]]
Line 627: Line 826:
 
| 1.15
 
| 1.15
 
|}
 
|}
 +
</div>
 +
 +
<div>
 +
// Token: 0x0400454A RID: 17738
 +
public const int InterestTraitDegree = 1;
 +
 +
// Token: 0x0400454B RID: 17739
 +
public const int FascinationTraitDegree = 2;
 +
 +
// Token: 0x0400454C RID: 17740
 +
private const float FallPerTickFactorForChemicalFascination = 1.25f;
 +
 +
// Token: 0x0400454D RID: 17741
 +
public const float GainForHardDrugIngestion = 0.3f;
 +
 +
// Token: 0x0400454E RID: 17742
 +
public const float GainForSocialDrugIngestion = 0.2f;
 +
 +
// Token: 0x0400454F RID: 17743
 +
private static readonly SimpleCurve InterestDegreeFallCurve = new SimpleCurve
 +
{
 +
{
 +
new CurvePoint(0f, 0.3f),
 +
true
 +
},
 +
{
 +
new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative, 0.6f),
 +
true
 +
},
 +
{
 +
new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative + 0.001f, 1f),
 +
true
 +
},
 +
{
 +
new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.positive, 1f),
 +
true
 +
},
 +
{
 +
new CurvePoint(1f, 1f),
 +
true
 +
}
 +
};
 +
 +
// Token: 0x04004550 RID: 17744
 +
private static readonly SimpleCurve FascinationDegreeFallCurve = new SimpleCurve
 +
{
 +
{
 +
new CurvePoint(0f, 0.4f),
 +
true
 +
},
 +
{
 +
new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative, 0.7f),
 +
true
 +
},
 +
{
 +
new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative + 0.001f, 1f),
 +
true
 +
},
 +
{
 +
new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.positive, 1f),
 +
true
 +
},
 +
{
 +
new CurvePoint(1f, 1.15f),
 +
true
 +
}
 +
};
 +
 +
// Token: 0x04004551 RID: 17745
 +
private static readonly Need_Chemical_Any.LevelThresholds FascinationDegreeLevelThresholdsForMood = new Need_Chemical_Any.LevelThresholds
 +
{
 +
extremelyNegative = 0.1f,
 +
veryNegative = 0.25f,
 +
negative = 0.4f,
 +
positive = 0.7f,
 +
veryPositive = 0.85f
 +
};
 +
 +
// Token: 0x04004552 RID: 17746
 +
private static readonly Need_Chemical_Any.LevelThresholds InterestDegreeLevelThresholdsForMood = new Need_Chemical_Any.LevelThresholds
 +
{
 +
extremelyNegative = 0.01f,
 +
veryNegative = 0.15f,
 +
negative = 0.3f,
 +
positive = 0.6f,
 +
veryPositive = 0.75f
 +
};
 +
 +
// Token: 0x04004553 RID: 17747
 +
private Trait lastThresholdUpdateTraitRef;
 +
 +
// Token: 0x02002E19 RID: 11801
 +
public enum MoodBuff
 +
{
 +
// Token: 0x0400B407 RID: 46087
 +
ExtremelyNegative,
 +
// Token: 0x0400B408 RID: 46088
 +
VeryNegative,
 +
// Token: 0x0400B409 RID: 46089
 +
Negative,
 +
// Token: 0x0400B40A RID: 46090
 +
Neutral,
 +
// Token: 0x0400B40B RID: 46091
 +
Positive,
 +
// Token: 0x0400B40C RID: 46092
 +
VeryPositive
 +
}
 +
 +
// Token: 0x02002E1A RID: 11802
 +
public struct LevelThresholds
 +
{
 +
// Token: 0x0400B40D RID: 46093
 +
public float extremelyNegative;
 +
 +
// Token: 0x0400B40E RID: 46094
 +
public float veryNegative;
 +
 +
// Token: 0x0400B40F RID: 46095
 +
public float negative;
 +
 +
// Token: 0x0400B410 RID: 46096
 +
public float positive;
 +
 +
// Token: 0x0400B411 RID: 46097
 +
public float veryPositive;
 +
}
 +
</div>
  
 
=== Need_RoomSize ===
 
=== Need_RoomSize ===
 +
 +
// Token: 0x040045ED RID: 17901
 +
private static List<Room> tempScanRooms = new List<Room>();
 +
 +
// Token: 0x040045EE RID: 17902
 +
private const float MinCramped = 0.01f;
 +
 +
// Token: 0x040045EF RID: 17903
 +
private const float MinNormal = 0.3f;
 +
 +
// Token: 0x040045F0 RID: 17904
 +
private const float MinSpacious = 0.7f;
 +
 +
// Token: 0x040045F1 RID: 17905
 +
public static readonly int SampleNumCells = GenRadial.NumCellsInRadius(7.9f);
 +
 +
// Token: 0x040045F2 RID: 17906
 +
private static readonly SimpleCurve RoomCellCountSpaceCurve = new SimpleCurve
 +
{
 +
{
 +
new CurvePoint(3f, 0f),
 +
true
 +
},
 +
{
 +
new CurvePoint(9f, 0.25f),
 +
true
 +
},
 +
{
 +
new CurvePoint(16f, 0.5f),
 +
true
 +
},
 +
{
 +
new CurvePoint(42f, 0.71f),
 +
true
 +
},
 +
{
 +
new CurvePoint(100f, 1f),
 +
true
 +
}
 +
};
 +
 
=== Need_Chemical ===
 
=== Need_Chemical ===
 +
Drug Desire Category:
 +
* Withdrawal
 +
* Desire
 +
* Satisfied
 +
 +
If CurLevel > 0.1: Satisfied
 +
If CurLevel > 0.01: Desire
 +
Else: Withdrawal
 +
 +
 +
ChemicalFallPerTick = fallPerDay / 60000
 +
 +
Need Interval
 +
* CurLevel -= this.ChemicalFallPerTick * 150
 +
 +
ThreshPercents:
 +
* 0.1
 +
 +
Initial Level: 0.8~1
 +
 +
// Token: 0x04004548 RID: 17736
 +
private const float ThreshDesire = 0.01f;
 +
 +
// Token: 0x04004549 RID: 17737
 +
private const float ThreshSatisfied = 0.1f;
 +
 
=== Need_Authority ===
 
=== Need_Authority ===
 +
// Token: 0x0400452B RID: 17707
 +
public const float LevelGainPerDayOfReigning = 2f;
 +
 +
// Token: 0x0400452C RID: 17708
 +
public const float LevelGainPerDayOfGivingSpeech = 3f;
 +
 +
// Token: 0x0400452D RID: 17709
 +
private readonly SimpleCurve FallFactorCurve = new SimpleCurve
 +
{
 +
{
 +
new CurvePoint(1f, 0f),
 +
true
 +
},
 +
{
 +
new CurvePoint(3f, 0.5f),
 +
true
 +
},
 +
{
 +
new CurvePoint(5f, 1f),
 +
true
 +
}
 +
};
 +
 
=== Need_Suppression ===
 
=== Need_Suppression ===
 +
Can be suppressed now when CurLevel < 0.7
 +
 +
Is high when CurLevel < 0.3
 +
 +
Need Interval
 +
* <code>CurLevel -= 0.0025 × [[Slave Suppression Fall Rate]]</code>
 +
 +
// Token: 0x040045F4 RID: 17908
 +
private const float CanSuppressMaxThreshold = 0.7f;
 +
 +
// Token: 0x040045F5 RID: 17909
 +
private const float SuppressCriticalThreshold = 0.3f;
 +
 
=== Need_Deathrest ===
 
=== Need_Deathrest ===
 +
 +
// Token: 0x04004563 RID: 17763
 +
public int lastDeathrestTick = -999;
 +
 +
// Token: 0x04004564 RID: 17764
 +
[Unsaved(false)]
 +
private Gene_Deathrest cachedDeathrestGene;
 +
 +
// Token: 0x04004565 RID: 17765
 +
public const float LevelForAlert = 0.1f;
 +
 +
// Token: 0x04004566 RID: 17766
 +
public const float FallPerDay = 0.0333333351f;
 +
 +
// Token: 0x04004567 RID: 17767
 +
public const float GainPerDayDeathresting = 0.2f;
 +
 +
// Token: 0x04004568 RID: 17768
 +
private const float Interval = 400f;
 +
 +
// Token: 0x04004569 RID: 17769
 +
public const float HemogenGainPerDayDeathrest = 0.08f;
 +
 
=== Need_KillThirst ===
 
=== Need_KillThirst ===
 +
Is Frozen when biological pawn age < 13 or IsFrozen = true
 +
 +
Show On Needs List when pawn biological age ≥ 13 and ShowOnNeedsList = true
 +
 +
ThreshPercents
 +
* 0.3
 +
 +
Need Interval
 +
* CurLevel -= 8.333333E-05
 +
 +
 +
Do Kill Side Effects
 +
* If there is an associated weapon body part group, weapon linked hediff, or weapon is a melee weapon:
 +
* CurLevel = 1
 +
 +
 +
// Token: 0x0400459C RID: 17820
 +
public const float FallPerDay = 0.0333333351f;
 +
 +
// Token: 0x0400459D RID: 17821
 +
private const float MinAgeForNeed = 13f;
 +
 
=== Need_Learning ===
 
=== Need_Learning ===
 +
IsFrozen when deathresting
 +
 +
Learning Categories:
 +
* Empty
 +
* Very Low
 +
* Low
 +
* Satisfied
 +
* High
 +
* Extreme
 +
 +
Current Category:
 +
{| {{STDT}}
 +
! Current Level !! Play Category
 +
|-
 +
! < 0.01
 +
| Empty
 +
|-
 +
! < 0.15
 +
| Very Low
 +
|-
 +
! < 0.3
 +
| Low
 +
|-
 +
! < 0.7
 +
| Satisfied
 +
|-
 +
! < 0.85
 +
| High
 +
|-
 +
! ≥ 0.85
 +
| Extreme
 +
|}
 +
 +
threshPercents:
 +
* 0.15
 +
* 0.3
 +
* 0.7
 +
* 0.85
 +
 +
Need Interval:
 +
* CurLevel -= 0.000450000021
 +
* growthPoints += GrowthPointsPerDay * 0.0025
 +
 +
// Token: 0x040045A5 RID: 17829
 +
private static string learningActivitiesLineList;
 +
 +
// Token: 0x040045A6 RID: 17830
 +
public const float BaseFallPerTick = 3E-06f;
 +
 +
// Token: 0x040045A7 RID: 17831
 +
public const float BaseFallPerInterval = 0.000450000021f;
 +
 +
// Token: 0x040045A8 RID: 17832
 +
public const float ThresholdEmpty = 0.01f;
 +
 +
// Token: 0x040045A9 RID: 17833
 +
public const float ThresholdLow = 0.15f;
 +
 +
// Token: 0x040045AA RID: 17834
 +
public const float ThresholdSatisfied = 0.3f;
 +
 +
// Token: 0x040045AB RID: 17835
 +
public const float ThresholdHigh = 0.7f;
 +
 +
// Token: 0x040045AC RID: 17836
 +
public const float ThresholdVeryHigh = 0.85f;
 +
 +
// Token: 0x040045AD RID: 17837
 +
public const float IconSize = 30f;
 +
 +
// Token: 0x040045AE RID: 17838
 +
public const float IconPad = 5f;
 +
 +
LearningUtility:
 +
// Token: 0x04002B2E RID: 11054
 +
public const float NeedSatisfiedPerTick = 1.2E-05f;
 +
 +
// Token: 0x04002B2F RID: 11055
 +
public const float StartJobMaxLearning = 0.9f;
 +
 +
// Token: 0x04002B30 RID: 11056
 +
private const float EndJobMaxLearning = 0.999f;
 +
 +
// Token: 0x04002B31 RID: 11057
 +
public const float LearningRateBonusOffset_Blackboard = 0.2f;
 +
 +
// Token: 0x04002B32 RID: 11058
 +
public const int MaxConnectedBlackboards = 3;
 +
 +
==== Learning Desires ====
 +
{| {{STDT}}
 +
! Def Name !! Label !! Description !! Worker Class !! Icon !! Job Def !! Selection Weight !! XP Per Tick
 +
|-
 +
! Skydreaming
 +
| sky dreaming
 +
| Find a spot outside and watch the sky. Requires access to the outdoors.
 +
| LearningGiver_Skydreaming
 +
| [[File:Sky dreaming learning.png]]
 +
| Skydreaming
 +
| 1
 +
| -
 +
|-
 +
! Radiotalking
 +
| radio talking
 +
| Chat with people over the radio. Requires a powered comms console.
 +
| LearningGiver_Radiotalking
 +
| [[File:Radio talking learning.png]]
 +
| Radiotalking
 +
| 1
 +
| -
 +
|-
 +
! Floordrawing
 +
| floor drawing
 +
| Draw designs on the ground using chalk. A cleaner will eventually remove the drawings.
 +
| LearningGiver_Floordrawing
 +
| [[File:Floor drawing learning.png]]
 +
| Floordrawing
 +
| 1
 +
| -
 +
|-
 +
! NatureRunning
 +
| nature running
 +
| Explore the local outdoors. Requires access to the outdoors.
 +
| LearningGiver_NatureRunning
 +
| [[File:Nature running learning.png]]
 +
| NatureRunning
 +
| 1
 +
| -
 +
|-
 +
! Workwatching
 +
| work watching
 +
| Follow an adult and watch them as they work. This gives experience in skills.
 +
| LearningGiver_Workwatching
 +
| [[File:Work watching learning.png]]
 +
| Workwatching
 +
| 1
 +
| 0.16
 +
|-
 +
! Lessontaking
 +
| lesson taking
 +
| An adult assigned to childcare will teach about various topics. This gives experience in skills. Requires a school desk.
 +
| LearningGiver_Lessontaking
 +
| [[File:Lesson taking learning.png]]
 +
| Lessontaking
 +
| 2.5
 +
| 0.25
 +
|-
 +
! Reading
 +
| reading
 +
| Find a book and practice reading.
 +
| LearningGiver_Reading
 +
| [[File:Reading learning.png]]
 +
| Reading
 +
| 1
 +
| -
 +
|}
 +
 
=== Need_Play ===
 
=== Need_Play ===
 +
Is low when current level percentage < 0.15
 +
 +
Play Categories:
 +
* Empty
 +
* Very Low
 +
* Low
 +
* Satisfied
 +
* High
 +
* Extreme
 +
 +
Current Category:
 +
{| {{STDT}}
 +
! Current Level !! Play Category
 +
|-
 +
! < 0.01
 +
| Empty
 +
|-
 +
! < 0.15
 +
| Very Low
 +
|-
 +
! < 0.3
 +
| Low
 +
|-
 +
! < 0.7
 +
| Satisfied
 +
|-
 +
! < 0.85
 +
| High
 +
|-
 +
! ≥ 0.88
 +
| Extreme
 +
|}
 +
 +
threshPercents:
 +
* 0.15
 +
* 0.3
 +
* 0.7
 +
* 0.85
 +
 +
Need Interval:
 +
* CurLevel -= 0.00025
 +
 +
// Token: 0x040045D1 RID: 17873
 +
public const float BaseFallPerInterval = 0.00025f;
 +
 +
// Token: 0x040045D2 RID: 17874
 +
public const float ThresholdEmpty = 0.01f;
 +
 +
// Token: 0x040045D3 RID: 17875
 +
public const float ThresholdLow = 0.15f;
 +
 +
// Token: 0x040045D4 RID: 17876
 +
public const float ThresholdSatisfied = 0.3f;
 +
 +
// Token: 0x040045D5 RID: 17877
 +
public const float ThresholdHigh = 0.7f;
 +
 +
// Token: 0x040045D6 RID: 17878
 +
public const float ThresholdVeryHigh = 0.85f;
 +
 +
 +
BabyPlayUtility:
 +
 +
// Token: 0x04002B43 RID: 11075
 +
private const float PlayPerTick = 0.0002f;
 +
 +
// Token: 0x04002B44 RID: 11076
 +
private const float EndJobMaxPlay = 0.99f;
 +
 +
// Token: 0x04002B45 RID: 11077
 +
private const float MaxBabyDecorationDistance = 9.9f;
 +
 +
 +
 +
 
=== Need_MechEnergy ===
 
=== Need_MechEnergy ===
 +
Defaults:
 +
* Max Mech Energy: 100
 +
 +
Base Fall Per Day:
 +
* While Active: 10
 +
* While idle or gestating: 3
 +
 +
Fall Per Day:
 +
If Pawn is downed, not awake, is in self shutdown, is charging, or is caravan member: Fall Per Day = 0
 +
 +
<code>Fall Per Day = Base Fall Per Day × [[Energy Usage Multiplier]]</code>
 +
 +
 +
Need Update Interval = 150
 +
 +
Ticks in a Day = 60,000
 +
 +
Therefore, there are 400 Need Update Intervals in a day
 +
 +
 +
Need Interval
 +
* num = 400
 +
 +
If not in self shutdown:
 +
* CurLevel -= Fall Per Day / num
 +
 +
If in self shutdown:
 +
* CurLevel += 1 / num
 +
 +
If Curlevel ≤ 0:
 +
* mech is in self shutdown
 +
* Find a nearby spot to shutdown at
 +
* Add [[Hediffs#Dormant_self-charging|Dormant self-charging]] Hediff
 +
 +
If Curlevel ≤ 15 or mech is charging:
 +
* mech is not in self shutdown
 +
* Remove [[Hediffs#Dormant_self-charging|Dormant self-charging]] Hediff
 +
 +
// Token: 0x040045AF RID: 17839
 +
private bool selfShutdown;
 +
 +
// Token: 0x040045B0 RID: 17840
 +
public Building_MechCharger currentCharger;
 +
 +
// Token: 0x040045B1 RID: 17841
 +
public const float BaseFallPerDayActive = 10f;
 +
 +
// Token: 0x040045B2 RID: 17842
 +
public const float BaseFallPerDayIdle = 3f;
 +
 +
// Token: 0x040045B3 RID: 17843
 +
public const float BaseGainPerDaySelfShutdown = 1f;
 +
 +
// Token: 0x040045B4 RID: 17844
 +
public const float ShutdownUntil = 15f;
 +
 +
 +
=== temp ===
 +
 +
 +
{| {{STDT}}
 +
!  !!
 +
|-
 +
!
 +
|
 +
|-
 +
!
 +
|
 +
|-
 +
!
 +
|
 +
|-
 +
!
 +
|
 +
|-
 +
!
 +
|
 +
|-
 +
!
 +
|
 +
|}
  
 
== Thoughts ==
 
== Thoughts ==

Revision as of 05:18, 21 October 2024

Needs

Defaults:

  • developmentalStageFilter = DevelopmentalStage.Child | DevelopmentalStage.Adult;
  • showOnNeedList = true;
  • baseLevel = 0.5f;
  • fallPerDay = 0.5f;
Developmental Stage Filter Show On Need List Base Level Fall Per Day
Child, Adult true 0.5 0.5
Name Description Base Level Fall Per Day Details List Priority
Mood Mood represents how happy or stressed someone is. If mood gets too low, the person may suffer a mental break. Depending on how low their mood is, someone who has a mental break may have a minor breaks like hiding in their room for a day, or a major break like going on a murder spree. 0.32
  • Need Class: Need_Mood
  • <seekerRisePerHour>0.12</seekerRisePerHour>
  • <seekerFallPerHour>0.08</seekerFallPerHour>
  • Show On Need List: false
  • Min Intelligence: Humanlike
  • Major: true
  • Freeze While Sleeping: true
  • Show For Caravan Members: true
  • Developmental Stage Filter: Baby, Child, Adult
1000
Food Food is the amount of nutrition a creature has consumed recently. If it is at zero, a creature will become increasingly malnourished and eventually die.
  • Need Class: Need_Food
  • Major: true
  • Show For Caravan Members: true
  • Developmental Stage Filter: Baby, Child, Adult
  • Show Unit Ticks: true
800
Sleep Sleep is how much time a creature has spent sleeping recently. If it is at zero, a creature will eventually fall asleep on the spot.
  • Need Class: Need_Rest
  • Major: true
  • Show For Caravan Members: true
  • Developmental Stage Filter: Baby, Child, Adult
700
Recreation Recreation is the need to have fun. Repeating the same kind of activity makes it less fun, so variety is necessary.
  • Need Class: Need_Joy
  • Min Intelligence: Humanlike
  • Colonists Only: true
  • Never On Prisoner: true
  • Never On Slave: true
  • Major: true
  • Freeze While Sleeping: true
  • Freeze In Mental State: true
  • Developmental Stage Filter: Adult
500
Beauty Beauty reflects how visually pleasing a person has found their surroundings recently. Beautiful things like art improve beauty when viewed, while ugly things like filth and rough stone surfaces reduce it. 0.4
  • Need Class: Need_Beauty
  • Min Intelligence: Humanlike
  • Colonist And Prisoners Only: true
  • <seekerRisePerHour>0.32</seekerRisePerHour>
  • <seekerFallPerHour>0.08</seekerFallPerHour>
  • Freeze While Sleeping: true
300
Comfort Comfort is gained by sitting in or sleeping on comfortable furniture. It is acquired while laying in bed, sitting in a chair while working, or other times.
  • Need Class: Need_Comfort
  • Min Intelligence: Humanlike
  • Colonist And Prisoners Only: true
  • <seekerRisePerHour>0.60</seekerRisePerHour>
  • <seekerFallPerHour>0.04</seekerFallPerHour>
  • Nullifying Precepts:
200
Outdoors Outdoors expresses the need not to be cooped up inside. It is harmed by long periods inside, especially underground. It improves when someone spends time under the sky, especially outdoors. It's not about the size of the rooms, but the need to be outside from time to time. Lack of outdoors time is a significant challenge for people who dwell in underground bases.
  • Need Class: Need_Outdoors
  • Min Intelligence: Humanlike
  • Colonist And Prisoners Only: true
  • Freeze While Sleeping: true
100
Indoors Indoors expresses the need to be within walls and under a roof. It is harmed by spending time in outdoor areas or not under roofs. To raise this need past 50%, a person must be under an overhead mountain, not just a normal roof.
  • Need Class: Need_Indoors
  • Min Intelligence: Humanlike
  • Colonist And Prisoners Only: true
  • Freeze While Sleeping: true
100
Chemical Chemical expresses the desire to ingest drugs. When above a certain level it will create good mood, but when below a certain level it will create increasingly bad mood. 0.071
  • Need Class: Need_Chemical_Any
  • Min Intelligence: Humanlike
  • Colonist And Prisoners Only: true
  • Freeze While Sleeping: true
150
Room size -
  • Need Class: Need_RoomSize
  • Show On Need List: false
  • Min Intelligence: Humanlike
  • Colonist And Prisoners Only: true
  • <seekerRisePerHour>0.90</seekerRisePerHour>
  • <seekerFallPerHour>0.90</seekerFallPerHour>
  • Freeze While Sleeping: true
100



Go-juice Because of a go-juice addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms. 0.333
  • Need Class: Need_Chemical
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
45


Luciferium This person's body is enhanced by luciferium mechanites.

Without regular doses of luciferium, the mechanites will lose cohesion. If this happens, the user becomes continuously, violently insane and eventually dies.

This addiction never goes away.
0.15
  • Need Class: Need_Chemical
  • Developmental Stage Filter: Baby, Child, Adult
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
45


Psychite Because of a psychite addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms.
  • Need Class: Need_Chemical
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
50


Smokeleaf Because of a smokeleaf dependence, this person needs to regularly consume the drug to avoid withdrawal symptoms.
  • Need Class: Need_Chemical
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
25


Wake-up Because of a wake-up addiction, this person needs to regularly consume the drug to avoid withdrawal symptoms. 0.333
  • Need Class: Need_Chemical
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
40


Alcohol Because of an alcohol addiction, this person needs to regularly consume alcohol to avoid withdrawal symptoms.
  • Need Class: Need_Chemical
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
35


Ambrosia Because of an ambrosia addiction, this person needs to regularly consume ambrosia to avoid withdrawal symptoms.
  • Need Class: Need_Chemical
  • Only If Caused By Hediff: true
  • Tutor Highlight Tag: NeedAddiction
  • Show For Caravan Members: true
20


Authority dummy need
  • Need Class: Need_Authority
  • This is a temporary dummy need to suppress errors when loading older saves.

    — XML comment,  RimWorld
-


Suppression - 0.5 0 -



Deathrest People with the deathrest gene must deathrest every few days or quadrums. Deathresting means entering a regenerative coma for several days, during which the rester appears dead.

A variety of special buildings can connect to a deathresting person and give them bonuses upon waking.

Going too long without deathrest will cause deathrest exhaustion, which massively degrades a person's physical capacities.
0.01
  • Need Class: Need_Deathrest
  • Major: true
  • Min Intelligence: ToolUser
  • Only If Caused By Gene: true
600
Kill satiety Kill satiety fulfills a built-in desire to do violence at close range to human victims. If it isn't satiated, the person will become very unhappy. 0
  • Need Class: Need_KillThirst
  • Min Intelligence: ToolUser
  • Colonist And Prisoners Only: true
  • Only If Caused By Gene: true
-
Learning Children need new lessons and experiences to grow up well, and will become unhappy without them.

Children will only do learning activities when their schedule is set to Recreation or Anything.

Activities that fulfill a child's desire to learn include:
{ACTIVITIES}

A satisfied learning need helps children gain growth tiers faster, giving them more passions and choices during growth moments.
  • Need Class: Need_Learning
  • Developmental Stage Filter: Child
  • Colonists Only: true
  • Major: true
500
Play Babies need to be played with by adults. If they aren't played with, they will become unhappy.
  • Need Class: Need_Play
  • Developmental Stage Filter: Baby
  • Colonist And Prisoners Only: true
  • Major: true
550
Energy A reserve of bioelectric energy needed for a mechanoid to function. It can be recharged at a charging station. If it reaches zero, the mech will go into dormant self-charging mode and recharge very slowly.
  • Need Class: Need_MechEnergy
  • Show On Need List: true
  • Min Intelligence: ToolUser
  • Player Mechs Only: true
  • Freeze While Sleeping: true
  • Show For Caravan Members: true
  • Major: true
10000


Need_Seeker

// Token: 0x040045F3 RID: 17907 private const float GUIArrowTolerance = 0.05f;

Need_Mood

// Token: 0x040045B5 RID: 17845 public ThoughtHandler thoughts;

// Token: 0x040045B6 RID: 17846 public PawnObserver observer;

// Token: 0x040045B7 RID: 17847 public PawnRecentMemory recentMemory;

// Token: 0x040045B8 RID: 17848 private int lastInstantMoodCheckTick = -9999;

// Token: 0x040045B9 RID: 17849 private float lastInstantMood = -1f;

Need_Food

// Token: 0x04004571 RID: 17777 public int lastNonStarvingTick = -99999;

// Token: 0x04004572 RID: 17778 public const float BaseFoodFallPerTick = 2.66666666E-05f;

// Token: 0x04004573 RID: 17779 private const float BaseMalnutritionSeverityPerDay = 0.453f;

// Token: 0x04004574 RID: 17780 private const float BaseMalnutritionSeverityPerInterval = 0.0011325f;

// Token: 0x04004575 RID: 17781 private CompHoldingPlatformTarget platformComp;

Need_Rest

// Token: 0x040045DC RID: 17884 private int lastRestTick = -999;

// Token: 0x040045DD RID: 17885 private float lastRestEffectiveness = 1f;

// Token: 0x040045DE RID: 17886 private int ticksAtZero;

// Token: 0x040045DF RID: 17887 private const float FullSleepHours = 10.5f;

// Token: 0x040045E0 RID: 17888 public const float BaseRestGainPerTick = 3.809524E-05f;

// Token: 0x040045E1 RID: 17889 private const float BaseRestFallPerTick = 1.58333332E-05f;

// Token: 0x040045E2 RID: 17890 public const float ThreshTired = 0.28f;

// Token: 0x040045E3 RID: 17891 public const float ThreshVeryTired = 0.14f;

// Token: 0x040045E4 RID: 17892 public const float DefaultFallAsleepMaxLevel = 0.75f;

// Token: 0x040045E5 RID: 17893 public const float DefaultNaturalWakeThreshold = 1f;

// Token: 0x040045E6 RID: 17894 public const float CanWakeThreshold = 0.2f;

// Token: 0x040045E7 RID: 17895 private const float BaseInvoluntarySleepMTBDays = 0.25f;

Need_Joy

// Token: 0x0400459A RID: 17818 public JoyToleranceSet tolerances = new JoyToleranceSet();

// Token: 0x0400459B RID: 17819 private int lastGainTick = -999;

Need_Beauty

// Token: 0x04004536 RID: 17718 private const float BeautyImpactFactor = 0.1f;

// Token: 0x04004537 RID: 17719 private const float ThreshVeryUgly = 0.01f;

// Token: 0x04004538 RID: 17720 private const float ThreshUgly = 0.15f;

// Token: 0x04004539 RID: 17721 private const float ThreshNeutral = 0.35f;

// Token: 0x0400453A RID: 17722 private const float ThreshPretty = 0.65f;

// Token: 0x0400453B RID: 17723 private const float ThreshVeryPretty = 0.85f;

// Token: 0x0400453C RID: 17724 private const float ThreshBeautiful = 0.99f;

// Token: 0x0400453D RID: 17725 private int lastInstantBeautyCheckTick = -9999;

// Token: 0x0400453E RID: 17726 private float lastInstantBeauty = -1f;

Need_Comfort

// Token: 0x0400455B RID: 17755 public float lastComfortUsed;

// Token: 0x0400455C RID: 17756 public int lastComfortUseTick;

// Token: 0x0400455D RID: 17757 private const float MinNormal = 0.1f;

// Token: 0x0400455E RID: 17758 private const float MinComfortable = 0.6f;

// Token: 0x0400455F RID: 17759 private const float MinVeryComfortable = 0.7f;

// Token: 0x04004560 RID: 17760 private const float MinExtremelyComfortablee = 0.8f;

// Token: 0x04004561 RID: 17761 private const float MinLuxuriantlyComfortable = 0.9f;

// Token: 0x04004562 RID: 17762 public const int ComfortUseInterval = 10;

Need_Outdoors

// Token: 0x040045C1 RID: 17857 private const float Delta_IndoorsThickRoof = -0.45f;

// Token: 0x040045C2 RID: 17858 private const float Delta_OutdoorsThickRoof = -0.4f;

// Token: 0x040045C3 RID: 17859 private const float Delta_IndoorsThinRoof = -0.32f;

// Token: 0x040045C4 RID: 17860 private const float Minimum_IndoorsThinRoof = 0.2f;

// Token: 0x040045C5 RID: 17861 private const float Delta_OutdoorsThinRoof = 1f;

// Token: 0x040045C6 RID: 17862 private const float Delta_IndoorsNoRoof = 5f;

// Token: 0x040045C7 RID: 17863 private const float Delta_OutdoorsNoRoof = 8f;

// Token: 0x040045C8 RID: 17864 private const float DeltaFactor_InBed = 0.2f;

// Token: 0x040045C9 RID: 17865 private float lastEffectiveDelta;

Need_Indoors

// Token: 0x0400457D RID: 17789 private static readonly float[] Thresholds = new float[] { 0.8f, 0.6f, 0.4f, 0.2f, 0.05f };

// Token: 0x0400457E RID: 17790 private const float Max_NotUnderThickRoof = 0.5f;

// Token: 0x0400457F RID: 17791 private const float Delta_Indoors_ThickRoof = 2f;

// Token: 0x04004580 RID: 17792 private const float Delta_Indoors_ThinRoof = 1f;

// Token: 0x04004581 RID: 17793 private const float Delta_Indoors_NoRoof = 0f;

// Token: 0x04004582 RID: 17794 private const float Delta_Outdoors_ThickRoof = 0f;

// Token: 0x04004583 RID: 17795 private const float Delta_Outdoors_ThinRoof = -0.25f;

// Token: 0x04004584 RID: 17796 private const float Delta_Outdoors_NoRoof = -0.25f;

// Token: 0x04004585 RID: 17797 private const float Delta_NotUnderThickRoofOverThreshold = -0.5f;

// Token: 0x04004586 RID: 17798 private float lastEffectiveDelta;

Need_Chemical_Any

Fall Per Tick Factor = Fall Per Tick Factor Base × Fall Curve

Fall Per Need Interval Tick = Fall Per Day × (Fall Per Tick Factor / Ticks in a Day) × Need Update Interval

Fall Per Need Interval Tick = 0.071 × (Fall Per Tick Factor / 60000) × 150

Mood Threshold
Extremely Negative 0.01
Very Negative 0.15
Negative 0.3
Positive 0.6
Very Positive 0.75
      • Mood Buff For Current Level:
Current Level Mood Buff
≤ 0.01 Extremely Negative
≤ 0.15 Very Negative
≤ 0.3 Negative
≤ 0.6 Neutral
≤ 0.75 Positive
> 0.75 Very Positive
      • Fall Curve:
Current Level Need Fall
0 0.3
0.4 0.6
0.401 1
0.7 1
1 1
Mood Threshold
Extremely Negative 0.1
Very Negative 0.25
Negative 0.4
Positive 0.7
Very Positive 0.85
      • Mood Buff For Current Level:
Current Level Mood Buff
≤ 0.1 Extremely Negative
≤ 0.25 Very Negative
≤ 0.4 Negative
≤ 0.7 Neutral
≤ 0.85 Positive
> 0.85 Very Positive
      • Fall Curve:
Current Level Need Fall
0 0.4
0.4 0.7
0.401 1
0.7 1
1 1.15

// Token: 0x0400454A RID: 17738 public const int InterestTraitDegree = 1;

// Token: 0x0400454B RID: 17739 public const int FascinationTraitDegree = 2;

// Token: 0x0400454C RID: 17740 private const float FallPerTickFactorForChemicalFascination = 1.25f;

// Token: 0x0400454D RID: 17741 public const float GainForHardDrugIngestion = 0.3f;

// Token: 0x0400454E RID: 17742 public const float GainForSocialDrugIngestion = 0.2f;

// Token: 0x0400454F RID: 17743 private static readonly SimpleCurve InterestDegreeFallCurve = new SimpleCurve { { new CurvePoint(0f, 0.3f), true }, { new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative, 0.6f), true }, { new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative + 0.001f, 1f), true }, { new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.positive, 1f), true }, { new CurvePoint(1f, 1f), true } };

// Token: 0x04004550 RID: 17744 private static readonly SimpleCurve FascinationDegreeFallCurve = new SimpleCurve { { new CurvePoint(0f, 0.4f), true }, { new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative, 0.7f), true }, { new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.negative + 0.001f, 1f), true }, { new CurvePoint(Need_Chemical_Any.FascinationDegreeLevelThresholdsForMood.positive, 1f), true }, { new CurvePoint(1f, 1.15f), true } };

// Token: 0x04004551 RID: 17745 private static readonly Need_Chemical_Any.LevelThresholds FascinationDegreeLevelThresholdsForMood = new Need_Chemical_Any.LevelThresholds { extremelyNegative = 0.1f, veryNegative = 0.25f, negative = 0.4f, positive = 0.7f, veryPositive = 0.85f };

// Token: 0x04004552 RID: 17746 private static readonly Need_Chemical_Any.LevelThresholds InterestDegreeLevelThresholdsForMood = new Need_Chemical_Any.LevelThresholds { extremelyNegative = 0.01f, veryNegative = 0.15f, negative = 0.3f, positive = 0.6f, veryPositive = 0.75f };

// Token: 0x04004553 RID: 17747 private Trait lastThresholdUpdateTraitRef;

// Token: 0x02002E19 RID: 11801 public enum MoodBuff { // Token: 0x0400B407 RID: 46087 ExtremelyNegative, // Token: 0x0400B408 RID: 46088 VeryNegative, // Token: 0x0400B409 RID: 46089 Negative, // Token: 0x0400B40A RID: 46090 Neutral, // Token: 0x0400B40B RID: 46091 Positive, // Token: 0x0400B40C RID: 46092 VeryPositive }

// Token: 0x02002E1A RID: 11802 public struct LevelThresholds { // Token: 0x0400B40D RID: 46093 public float extremelyNegative;

// Token: 0x0400B40E RID: 46094 public float veryNegative;

// Token: 0x0400B40F RID: 46095 public float negative;

// Token: 0x0400B410 RID: 46096 public float positive;

// Token: 0x0400B411 RID: 46097 public float veryPositive; }

Need_RoomSize

// Token: 0x040045ED RID: 17901 private static List<Room> tempScanRooms = new List<Room>();

// Token: 0x040045EE RID: 17902 private const float MinCramped = 0.01f;

// Token: 0x040045EF RID: 17903 private const float MinNormal = 0.3f;

// Token: 0x040045F0 RID: 17904 private const float MinSpacious = 0.7f;

// Token: 0x040045F1 RID: 17905 public static readonly int SampleNumCells = GenRadial.NumCellsInRadius(7.9f);

// Token: 0x040045F2 RID: 17906 private static readonly SimpleCurve RoomCellCountSpaceCurve = new SimpleCurve { { new CurvePoint(3f, 0f), true }, { new CurvePoint(9f, 0.25f), true }, { new CurvePoint(16f, 0.5f), true }, { new CurvePoint(42f, 0.71f), true }, { new CurvePoint(100f, 1f), true } };

Need_Chemical

Drug Desire Category:

  • Withdrawal
  • Desire
  • Satisfied

If CurLevel > 0.1: Satisfied If CurLevel > 0.01: Desire Else: Withdrawal


ChemicalFallPerTick = fallPerDay / 60000

Need Interval

  • CurLevel -= this.ChemicalFallPerTick * 150

ThreshPercents:

  • 0.1

Initial Level: 0.8~1

// Token: 0x04004548 RID: 17736 private const float ThreshDesire = 0.01f;

// Token: 0x04004549 RID: 17737 private const float ThreshSatisfied = 0.1f;

Need_Authority

// Token: 0x0400452B RID: 17707 public const float LevelGainPerDayOfReigning = 2f;

// Token: 0x0400452C RID: 17708 public const float LevelGainPerDayOfGivingSpeech = 3f;

// Token: 0x0400452D RID: 17709 private readonly SimpleCurve FallFactorCurve = new SimpleCurve { { new CurvePoint(1f, 0f), true }, { new CurvePoint(3f, 0.5f), true }, { new CurvePoint(5f, 1f), true } };

Need_Suppression

Can be suppressed now when CurLevel < 0.7

Is high when CurLevel < 0.3

Need Interval

// Token: 0x040045F4 RID: 17908 private const float CanSuppressMaxThreshold = 0.7f;

// Token: 0x040045F5 RID: 17909 private const float SuppressCriticalThreshold = 0.3f;

Need_Deathrest

// Token: 0x04004563 RID: 17763 public int lastDeathrestTick = -999;

// Token: 0x04004564 RID: 17764 [Unsaved(false)] private Gene_Deathrest cachedDeathrestGene;

// Token: 0x04004565 RID: 17765 public const float LevelForAlert = 0.1f;

// Token: 0x04004566 RID: 17766 public const float FallPerDay = 0.0333333351f;

// Token: 0x04004567 RID: 17767 public const float GainPerDayDeathresting = 0.2f;

// Token: 0x04004568 RID: 17768 private const float Interval = 400f;

// Token: 0x04004569 RID: 17769 public const float HemogenGainPerDayDeathrest = 0.08f;

Need_KillThirst

Is Frozen when biological pawn age < 13 or IsFrozen = true

Show On Needs List when pawn biological age ≥ 13 and ShowOnNeedsList = true

ThreshPercents

  • 0.3

Need Interval

  • CurLevel -= 8.333333E-05


Do Kill Side Effects

  • If there is an associated weapon body part group, weapon linked hediff, or weapon is a melee weapon:
  • CurLevel = 1


// Token: 0x0400459C RID: 17820 public const float FallPerDay = 0.0333333351f;

// Token: 0x0400459D RID: 17821 private const float MinAgeForNeed = 13f;

Need_Learning

IsFrozen when deathresting

Learning Categories:

  • Empty
  • Very Low
  • Low
  • Satisfied
  • High
  • Extreme

Current Category:

Current Level Play Category
< 0.01 Empty
< 0.15 Very Low
< 0.3 Low
< 0.7 Satisfied
< 0.85 High
≥ 0.85 Extreme

threshPercents:

  • 0.15
  • 0.3
  • 0.7
  • 0.85

Need Interval:

  • CurLevel -= 0.000450000021
  • growthPoints += GrowthPointsPerDay * 0.0025

// Token: 0x040045A5 RID: 17829 private static string learningActivitiesLineList;

// Token: 0x040045A6 RID: 17830 public const float BaseFallPerTick = 3E-06f;

// Token: 0x040045A7 RID: 17831 public const float BaseFallPerInterval = 0.000450000021f;

// Token: 0x040045A8 RID: 17832 public const float ThresholdEmpty = 0.01f;

// Token: 0x040045A9 RID: 17833 public const float ThresholdLow = 0.15f;

// Token: 0x040045AA RID: 17834 public const float ThresholdSatisfied = 0.3f;

// Token: 0x040045AB RID: 17835 public const float ThresholdHigh = 0.7f;

// Token: 0x040045AC RID: 17836 public const float ThresholdVeryHigh = 0.85f;

// Token: 0x040045AD RID: 17837 public const float IconSize = 30f;

// Token: 0x040045AE RID: 17838 public const float IconPad = 5f;

LearningUtility: // Token: 0x04002B2E RID: 11054 public const float NeedSatisfiedPerTick = 1.2E-05f;

// Token: 0x04002B2F RID: 11055 public const float StartJobMaxLearning = 0.9f;

// Token: 0x04002B30 RID: 11056 private const float EndJobMaxLearning = 0.999f;

// Token: 0x04002B31 RID: 11057 public const float LearningRateBonusOffset_Blackboard = 0.2f;

// Token: 0x04002B32 RID: 11058 public const int MaxConnectedBlackboards = 3;

Learning Desires

Def Name Label Description Worker Class Icon Job Def Selection Weight XP Per Tick
Skydreaming sky dreaming Find a spot outside and watch the sky. Requires access to the outdoors. LearningGiver_Skydreaming Sky dreaming learning.png Skydreaming 1 -
Radiotalking radio talking Chat with people over the radio. Requires a powered comms console. LearningGiver_Radiotalking Radio talking learning.png Radiotalking 1 -
Floordrawing floor drawing Draw designs on the ground using chalk. A cleaner will eventually remove the drawings. LearningGiver_Floordrawing Floor drawing learning.png Floordrawing 1 -
NatureRunning nature running Explore the local outdoors. Requires access to the outdoors. LearningGiver_NatureRunning Nature running learning.png NatureRunning 1 -
Workwatching work watching Follow an adult and watch them as they work. This gives experience in skills. LearningGiver_Workwatching Work watching learning.png Workwatching 1 0.16
Lessontaking lesson taking An adult assigned to childcare will teach about various topics. This gives experience in skills. Requires a school desk. LearningGiver_Lessontaking Lesson taking learning.png Lessontaking 2.5 0.25
Reading reading Find a book and practice reading. LearningGiver_Reading Reading learning.png Reading 1 -

Need_Play

Is low when current level percentage < 0.15

Play Categories:

  • Empty
  • Very Low
  • Low
  • Satisfied
  • High
  • Extreme

Current Category:

Current Level Play Category
< 0.01 Empty
< 0.15 Very Low
< 0.3 Low
< 0.7 Satisfied
< 0.85 High
≥ 0.88 Extreme

threshPercents:

  • 0.15
  • 0.3
  • 0.7
  • 0.85

Need Interval:

  • CurLevel -= 0.00025

// Token: 0x040045D1 RID: 17873 public const float BaseFallPerInterval = 0.00025f;

// Token: 0x040045D2 RID: 17874 public const float ThresholdEmpty = 0.01f;

// Token: 0x040045D3 RID: 17875 public const float ThresholdLow = 0.15f;

// Token: 0x040045D4 RID: 17876 public const float ThresholdSatisfied = 0.3f;

// Token: 0x040045D5 RID: 17877 public const float ThresholdHigh = 0.7f;

// Token: 0x040045D6 RID: 17878 public const float ThresholdVeryHigh = 0.85f;


BabyPlayUtility:

// Token: 0x04002B43 RID: 11075 private const float PlayPerTick = 0.0002f;

// Token: 0x04002B44 RID: 11076 private const float EndJobMaxPlay = 0.99f;

// Token: 0x04002B45 RID: 11077 private const float MaxBabyDecorationDistance = 9.9f;



Need_MechEnergy

Defaults:

  • Max Mech Energy: 100

Base Fall Per Day:

  • While Active: 10
  • While idle or gestating: 3

Fall Per Day: If Pawn is downed, not awake, is in self shutdown, is charging, or is caravan member: Fall Per Day = 0

Fall Per Day = Base Fall Per Day × Energy Usage Multiplier


Need Update Interval = 150

Ticks in a Day = 60,000

Therefore, there are 400 Need Update Intervals in a day


Need Interval

  • num = 400

If not in self shutdown:

  • CurLevel -= Fall Per Day / num

If in self shutdown:

  • CurLevel += 1 / num

If Curlevel ≤ 0:

If Curlevel ≤ 15 or mech is charging:

// Token: 0x040045AF RID: 17839 private bool selfShutdown;

// Token: 0x040045B0 RID: 17840 public Building_MechCharger currentCharger;

// Token: 0x040045B1 RID: 17841 public const float BaseFallPerDayActive = 10f;

// Token: 0x040045B2 RID: 17842 public const float BaseFallPerDayIdle = 3f;

// Token: 0x040045B3 RID: 17843 public const float BaseGainPerDaySelfShutdown = 1f;

// Token: 0x040045B4 RID: 17844 public const float ShutdownUntil = 15f;


temp

≤ ≥

Thoughts

Temp

Tool Capacities

Def Name Label Source
Stab stab Content from Rimworld core game only
Cut cut Content from Rimworld core game only
Blunt blunt Content from Rimworld core game only
Scratch scratch Content from Rimworld core game only
Poke poke Content from Rimworld core game only
Bite bite Content from Rimworld core game only
ToxicBite toxic bite Content from Rimworld core game only
ScratchToxic toxic scratch Content from Rimworld core game only
KickMaterialInEyes kick material in eyes Content from Rimworld core game only
Demolish demolish Content from Rimworld core game only
DemolishDoors demolish doors Content added by the Biotech DLC

Maneuvers

defName requiredCapacity verb logEntryDef combatLogRulesHit combatLogRulesDeflect combatLogRulesMiss combatLogRulesDodge
Slash Cut
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Cut
MeleeAttack Maneuver_Slash_MeleeHit Maneuver_Slash_MeleeDeflect Maneuver_Slash_MeleeMiss Maneuver_Slash_MeleeDodge
Stab Stab
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Stab
MeleeAttack Maneuver_Stab_MeleeHit Maneuver_Stab_MeleeDeflect Maneuver_Stab_MeleeMiss Maneuver_Stab_MeleeDodge
Smash Blunt
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Blunt
MeleeAttack Maneuver_Smash_MeleeHit Maneuver_Smash_MeleeDeflect Maneuver_Smash_MeleeMiss Maneuver_Smash_MeleeDodge
Demolish Demolish
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Demolish
  • ai_IsBuildingDestroyer: true
MeleeAttack Maneuver_Smash_MeleeHit Maneuver_Smash_MeleeDeflect Maneuver_Smash_MeleeMiss Maneuver_Smash_MeleeDodge
Scratch Scratch
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Scratch
MeleeAttack Maneuver_Scratch_MeleeHit Maneuver_Scratch_MeleeDeflect Maneuver_Scratch_MeleeMiss Maneuver_Scratch_MeleeDodge
ScratchToxic ScratchToxic
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: ScratchToxic
MeleeAttack Maneuver_Scratch_MeleeHit Maneuver_Scratch_MeleeDeflect Maneuver_Scratch_MeleeMiss Maneuver_Scratch_MeleeDodge
Poke Poke
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Poke
MeleeAttack Maneuver_Poke_MeleeHit Maneuver_Poke_MeleeDeflect Maneuver_Poke_MeleeMiss Maneuver_Poke_MeleeDodge
Bite Bite
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: Bite
  • commonalityVsEdificeFactor: 0.01
MeleeAttack Maneuver_Bite_MeleeHit Maneuver_Bite_MeleeDeflect Maneuver_Bite_MeleeMiss Maneuver_Bite_MeleeDodge
ToxicBite ToxicBite
  • verbClass: Verb_MeleeAttackDamage
  • meleeDamageDef: ToxicBite
MeleeAttack Maneuver_Bite_MeleeHit Maneuver_Bite_MeleeDeflect Maneuver_Bite_MeleeMiss Maneuver_Bite_MeleeDodge
KickMaterialInEyes KickMaterialInEyes
  • verbClass: Verb_MeleeApplyHediff
  • bodypartTagTarget: SightSource
  • minIntelligence: ToolUser
  • impactFleck: SandInEyes
  • linkedBodyPartsGroup: Feet
SandInEyes Maneuver_KickMaterialInEyes_MeleeHit Maneuver_KickMaterialInEyes_MeleeDeflect Maneuver_KickMaterialInEyes_MeleeMiss Maneuver_KickMaterialInEyes_MeleeDodge

Unsorted

defName RewardStandardMidFreq RewardStandardCore RewardStandardLowFreq RewardStandardQualitySuper RewardStandardHighFreq
Hyperweave - - - -
MedicineUltratech - - - -
VoidsightSerum - - - -
NerveSpiker - - - -
Bow_Recurve - - - -
Luciferium - - - -
MindNumbSerum - - - -
Genepack - - - -
Bow_Great - - - -
VoidSculpture - - - -
MeleeWeapon_Gladius - - - -
Schematic - - - -
TextBook - - - -
Novel - - - -
SculptureSmall - - - -
MeleeWeapon_Spear - - - -
ComponentSpacer - - - -
MetalbloodSerum - - - -
JuggernautSerum - - - -
Mindscrew - - - -
Joywire - - - -
Painstopper - - - -
Harp - - - -
Tome - - - -
Psytrainer_Painblock - - - -
Psytrainer_Stun - - - -
Psytrainer_Burden - - - -
Psytrainer_SolarPinhole - - - -
Psytrainer_WordOfTrust - - - -
Psytrainer_Chunkskip - - - -
MeleeWeapon_LongSword - - - -
Throne - - - -
SculptureLarge - - - -
SculptureTerror - - - -
Apparel_Gunlink - - - -
Telescope - - - -
Gun_HeavySMG - - - -
HandTalon - - - -
ElbowBlade - - - -
KneeSpike - - - -
VenomFangs - - - -
VenomTalon - - - -
MeleeWeapon_Warhammer - - - -
PowerClaw - - - -
Apparel_ShieldBelt - - - -
Apparel_PsyfocusShirt - - - -
Psytrainer_BlindingPulse - - - -
Psytrainer_EntropyDump - - - -
Psytrainer_Waterskip - - - -
Psytrainer_WordOfJoy - - - -
Gun_ChainShotgun - - - -
Harpsichord - - - -
Gun_LMG - - - -
DrillArm - - - -
FieldHand - - - -
Apparel_PackBroadshield - - - -
Apparel_DeadlifePack - - - -
Apparel_PlateArmor - - - -
Gun_AssaultRifle - - - -
Gun_HellcatRifle - - - -
Apparel_PsyfocusHelmet - - - -
Apparel_EltexSkullcap - - - -
Apparel_PsyfocusVest - - - -
Apparel_ShardPsychicShockLance - - - -
Apparel_ArmorHelmetRecon - - - -
ShardAnimalPulser - - - -
Gun_SniperRifle - - - -
Apparel_ShardPsychicInsanityLance - - - -
Gun_Incinerator - - - -
Apparel_PsychicShockLance - - - -
Psytrainer_Beckon - - - -
Psytrainer_VertigoPulse - - - -
Psytrainer_ChaosSkip - - - -
Psytrainer_WordOfLove - - - -
AestheticNose - - - -
PsychicSoothePulser - - - -
ReinforcedBarrel - - - -
Apparel_PsyfocusRobe - - - -
Apparel_PowerArmorHelmet - - - -
Apparel_PackJump - - - -
Apparel_PsychicInsanityLance - - - -
Piano - - - -
PsychicAnimalPulser - - - -
ArchiteCapsule - - - -
Psytrainer_Skip - - - -
Psytrainer_Wallraise - - - -
Psytrainer_Smokepop - - - -
Psytrainer_Focus - - - -
Psytrainer_WordOfSerenity - - - -
Apparel_ArmorHelmetReconPrestige - - - -
Apparel_ArmorHelmetCataphract - - - -
Neurotrainer_Shooting - - - -
Neurotrainer_Melee - - - -
Neurotrainer_Construction - - - -
Neurotrainer_Mining - - - -
Neurotrainer_Cooking - - - -
Neurotrainer_Plants - - - -
Neurotrainer_Animals - - - -
Neurotrainer_Crafting - - - -
Neurotrainer_Artistic - - - -
Neurotrainer_Medicine - - - -
Neurotrainer_Social - - - -
Neurotrainer_Intellectual - - - -
TornadoGenerator - - - -
BiomutationPulser - - - -
GastroAnalyzer - - - -
AestheticShaper - - - -
Apparel_ArmorMarineHelmetPrestige - - - -
Apparel_BiomutationLance - - - -
Psytrainer_Berserk - - - -
Psytrainer_Invisibility - - - -
Psytrainer_Flashstorm - - - -
Psytrainer_WordOfInspiration - - - -
Psytrainer_Farskip - - - -
RoyalBed - - - -
FlatscreenTelevision - - - -
TechprofSubpersonaCore - - - -
Gun_TripleRocket - - - -
Gun_DoomsdayRocket - - - -
DeathrestCapacitySerum - - - -
Psytrainer_BerserkPulse - - - -
Psytrainer_ManhunterPulse - - - -
Psytrainer_MassChaosSkip - - - -
Psytrainer_BulletShield - - - -
Psytrainer_Neuroquake - - - -
Gun_ChargeRifle - - - -
BionicEye - - - -
BionicArm - - - -
BionicLeg - - - -
Neurocalculator - - - -
LearningAssistant - - - -
Immunoenhancer - - - -
Coagulator - - - -
HealingEnhancer - - - -
ToughskinGland - - - -
LoveEnhancer - - - -
DetoxifierStomach - - - -
ReprocessorStomach - - - -
NuclearStomach - - - -
CircadianAssistant - - - -
CircadianHalfCycler - - - -
Apparel_ArmorHelmetCataphractPrestige - - - -
Gun_Minigun - - - -
SculptureGrand - - - -
VanometricPowerCell - - - -
Shell_AntigrainWarhead - - - -
OrbitalTargeterBombardment - - - -
OrbitalTargeterPowerBeam - - - -
Apparel_ArmorHelmetMechCommander - - - -
PsychicEmanator - - - -
MechSerumHealer - - - -
Gun_ChargeLance - - - -
ArmorskinGland - - - -
MegascreenTelevision - - - -
GrandThrone - - - -
InfiniteChemreactor - - - -
Apparel_ArmorRecon - - - -
MechSerumResurrector - - - -
StoneskinGland - - - -
Apparel_ArmorReconPrestige - - - -
MeleeWeapon_MonoSword - - - -
MeleeWeapon_Zeushammer - - - -
MeleeWeapon_PlasmaSword - - - -
MeleeWeapon_PsyfocusStaff - - - -
Apparel_PowerArmor - - - -
Apparel_ArmorLocust - - - -
Apparel_ArmorMarineGrenadier - - - -
Apparel_IntegratorHeadset - - - -
Apparel_ArmorMarinePrestige - - - -
ArchotechEye - - - -
ArchotechArm - - - -
ArchotechLeg - - - -
Apparel_ArmorCataphract - - - -
Apparel_ArmorCataphractPhoenix - - - -
Apparel_ArmorCataphractPrestige - - - -
Apparel_ArmorHelmetMechlordHelmet - - - -
Apparel_MechlordSuit - - - -
defName weightClass ingredients ingredients market value forming cycles total forming time (game days) produced at research required bandwidth cost repair energy cost base health scale move speed average armor melee DPS weapon weapon range weapon DPS weapon accuracy short weapon accuracy medium weapon accuracy long shooter accuracy short shooter accuracy medium shooter accuracy long total accuracy short total accuracy medium total accuracy long special abilities combat power body size
Mech_Lifter Light 50x steel 1x basic subcore $202 1 2 mech gestator basic mechtech 1 0.66 1 2.8 15% 1.4 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 10 0.70
Mech_Constructoid Light 50x steel 1x basic subcore $202 1 2 mech gestator basic mechtech 1 0.66 1 3.4 15% 2.0 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 10 0.70
Mech_Fabricor Light 100x steel 1x high subcore $1002 1 2 mech gestator high mechtech 1 0.66 1 3.4 15% 1.4 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 10 0.70
Mech_Agrihand Light 50x steel 1x basic subcore $202 1 2 mech gestator basic mechtech 1 0.66 1 3.4 15% 2.2 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 10 0.70
Mech_Cleansweeper Light 50x steel 1x basic subcore $202 1 2 mech gestator basic mechtech 1 0.66 1 3.4 15% 1.4 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 10 0.30
Mech_WarUrchin Light "-" "-" "-" 0 "-" "-" 1 0.66 1.3 4.2 15% 2.0 spiner 6.9 40 30% 40% 95% 61% 36% 20% 18% 14% 19% none 10 0.70
Mech_Paramedic Light 100x steel 1x high subcore $1002 1 2 mech gestator high mechtech 1 0.66 1 3.8 15% 1.4 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 10 0.70
Mech_Militor Light 50x steel 1x basic subcore $202 1 2 mech gestator basic mechtech 1 0.66 1 3.8 15% 2.0 mini-shotgun 12.9 8.3 87% 70% 55% 61% 36% 20% 53% 25% 11% none 45 0.70
Mech_Scorcher Medium 80x steel 32x plasteel 3x component 1x standard subcore $343 2 4 large mech gestator standard mechtech 1 0.33 0.7 4.5 30% 3.2 mini-flameblaster 4.9 0 48% 35% 26% 61% 36% 20% 29% 13% 5.1% none 75 1.00
Mech_Termite_Breach Medium "-" "-" "-" 0 "-" "-" 1 0.33 2.16 2.1 39% 3.6 thump cannon 24.9 9 87% 77% 64% 61% 36% 20% 53% 28% 13% none 110 1.60
Mech_Pikeman Medium 100x steel 40x plasteel 4x component 1x standard subcore $343 2 4 large mech gestator standard mechtech 2 0.33 0.85 2.5 30% 3.2 needle gun 44.9 6 80% 90% 85% 61% 36% 20% 49% 32% 17% none 110 1.00
Mech_Scyther Medium 75x steel 75x plasteel 4x component 1x standard subcore $343 2 4 large mech gestator standard mechtech 2 0.33 1.32 4.7 30% 6.2 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 150 1.00
Mech_Legionary Medium 100x plasteel 6x component 1x high subcore $1041 4 8 large mech gestator ultra mechtech 2 0.33 0.72 4.3 30% 3.2 needle launcher 24.9 6 80% 90% 85% 61% 36% 20% 49% 32% 17% none 150 1.00
Mech_Tesseron Medium 110x plasteel 7x component 1x high subcore $1041 4 8 large mech gestator ultra mechtech 3 0.33 0.72 4.7 30% 3.5 beam graser 24.9 0 70% 65% 55% 61% 36% 20% 43% 23% 11% none 150 1.00
Mech_Lancer Medium 75x steel 75x plasteel 4x component 1x standard subcore $343 2 4 large mech gestator high mechtech 3 0.33 0.72 4.7 30% 3.5 charge lance 29.9 17.6 85% 85% 75% 61% 36% 20% 52% 31% 15% none 180 1.00
Mech_Tunneler Heavy 150x steel 75x plasteel 4x component 1x standard subcore $343 4 8 large mech gestator standard mechtech 3 0.2 1.5 1.9 60% 4.7 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% has shield 250 3.50
Mech_Centurion UltraHeavy 300x steel 200x plasteel 2x advanced component 1x powerfocus chip 1x high subcore $2211 12 24 large mech gestator ultra mechtech 5 0.15 3 1.6 50% 3.7 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% none 250 3.60
Mech_CentipedeBlaster Heavy 255x steel 355x plasteel 8x component 1x high subcore $1043 6 12 large mech gestator ultra mechtech 4 0.2 4.32 1.9 47% 3.7 heavy charge blaster 26.9 113.7 26% 26% 18% 61% 36% 20% 16% 9.4% 3.5% none 400 3.00
Mech_CentipedeGunner Heavy 255x steel 255x plasteel 8x component 1x high subcore $1043 6 12 large mech gestator high mechtech 4 0.2 4.32 1.9 47% 3.7 minigun 30.9 55.6 25% 25% 18% 61% 36% 20% 15% 9% 3.5% none 400 3.00
Mech_CentipedeBurner Heavy 255x steel 255x plasteel 8x component 1x high subcore $1043 6 12 large mech gestator high mechtech 4 0.2 4.32 1.9 47% 3.7 inferno cannon 26.9 8 100% 100% 100% 61% 36% 20% 61% 36% 20% none 400 3.00
Mech_Diabolus UltraHeavy 300x steel 300x plasteel 2x signal chip 1x high subcore $1511 12 24 large mech gestator high mechtech 5 0.15 4.5 2.4 50% 3.8 hellsphere cannon 18.9 106.7 100% 100% 100% 61% 36% 20% 61% 36% 20% none 500 4.00
Mech_Apocriton UltraHeavy "-" "-" "-" 0 "-" "-" 2 0.33 5.2 3.2 58% 2.1 toxic needle gun 44.9 10.6 80% 90% 92% 61% 36% 20% 49% 32% 18% none 600 1.00
Mech_Warqueen UltraHeavy 600x steel 300x plasteel 3x advanced component 1x nano structuring chip 1x high subcore $2711 12 24 large mech gestator ultra mechtech 5 0.15 5.2 1.6 50% 1.2 - "-" 0 0% 0% 0% 61% 36% 20% 0% 0% 0% produces war urchins 600 4.00


  • Thing
    Breach axe
    Club
    Ikwa
    Knife (Jade)
    Spear
    Gladius
    Longsword
    Mace
    Axe
    Warhammer
    Eltex staff
    Monosword (Persona)
    Plasmasword (Persona)
    Zeushammer (Persona)
    Beer
    Elephant tusk
    Thrumbo horn
    Wood
    Greatbow
    Pila
    Recurve bow
    Short bow
    Flamebow
    Nerve spiker
    Assault rifle
    Autopistol
    Bolt-action rifle
    Chain shotgun
    Heavy SMG
    Launcher (EMP, Incendiary, Smoke, Toxbomb)
    LMG
    Machine pistol
    Minigun
    Pump shotgun
    Revolver
    Sniper rifle
    Hellcat rifle
    Incinerator
    Charge lance
    Charge rifle
    Doomsday rocket launcher
    Triple rocket launcher
    EMP grenades
    Frag grenades
    Molotov cocktails
    Tox grenades
    Heavy charge blaster
    Inferno cannon
    Needle gun
    Thump cannon
    Beam graser
    Charge blaster turret
    Hellsphere cannon
    Mini-flameblaster
    Mini-shotgun
    Slugthrower
    Spiner
    Toxic needle gun
    Autocannon
    Mini-turret gun
    Mortar (Weapon)
    Uranium slug cannon
    Auto-mortar
    Inferno cannon (Turret)
    Light charge blaster
    Mini-slugger
    Tactical turret gun
  • Tags

    • weaponTags
      • Artillery
      • Artillery_BaseDestroyer
      • AssaultRifle
      • Autopistol
      • Axe
      • BeamGraserGun
      • Bladelink
      • ChargeBlasterHeavyGun
      • EltexStaff
      • EmpireGrenadeDestructive
      • Flamethrower
      • GrenadeDestructive
      • GrenadeEMP
      • GrenadeFlame
      • GrenadeSmoke
      • GrenadeTox
      • Gun
      • GunHeavy
      • GunSingleUse
      • HeavyTox
      • HellsphereCannonGun
      • IndustrialGunAdvanced
      • InfernoCannonGun
      • LongSword
      • MechanoidGunBreach
      • MechanoidGunHeavy
      • MechanoidGunLongRange
      • MechanoidGunMedium
      • MechanoidGunMiniFlameblaster
      • MechanoidGunNeedleLauncher
      • MechanoidGunShortRange
      • MechanoidGunSlugthrower
      • MechanoidGunSpiner
      • MechanoidGunToxicNeedle
      • MedievalMeleeAdvanced
      • MedievalMeleeBasic
      • MedievalMeleeDecent
      • Minigun
      • Neolithic
      • NeolithicMeleeAdvanced
      • NeolithicMeleeBasic
      • NeolithicMeleeDecent
      • NeolithicMeleeDestructive
      • NeolithicRangedFlame
      • NerveSpiker
      • PumpShotgun
      • Revolver
      • ShortShots
      • SimpleGun
      • SniperRifle
      • SpacerGun
      • Spear
      • TurretGun
      • UltratechMelee

    • weaponClasses
      • LongShots
      • Melee
      • MeleeBlunt
      • MeleePiercer
      • Neolithic
      • Ranged
      • RangedHeavy
      • RangedLight
      • ShortShots
      • Ultratech

    • apparelTags
      • BeltDefensePop
      • BeltDefenseTox
      • Firefighting
      • Horaxian
      • IndustrialAdvanced
      • IndustrialBasic
      • IndustrialMilitaryAdvanced
      • IndustrialMilitaryBasic
      • Neolithic
      • Outlander
      • Royal
      • SpacerMilitary
      • Western

    • tags
      • Bald
      • NoBeard

    • techHediffsTags
      • Advanced
      • AdvancedWeapon
      • Anomaly
      • Ghoul
      • ImplantEmpireCommon
      • Poor
      • Simple
      • PainCauser
      • SubcoreBasic
      • ImplantEmpireRoyal
      • DrillArm
      • FieldHand

    • apparelRequired
      • Apparel_AirwireHeadset
      • Apparel_ArmorCataphract
      • Apparel_ArmorCataphractPrestige
      • Apparel_ArmorHelmetCataphract
      • Apparel_ArmorHelmetCataphractPrestige
      • Apparel_ArmorHelmetRecon
      • Apparel_ArmorRecon
      • Apparel_Bandolier
      • Apparel_BasicShirt
      • Apparel_BowlerHat
      • Apparel_CollarShirt
      • Apparel_CowboyHat
      • Apparel_Duster
      • Apparel_FlakJacket
      • Apparel_FlakPants
      • Apparel_FlakVest
      • Apparel_HatTop
      • Apparel_Jacket
      • Apparel_LabCoat
      • Apparel_PackTox
      • Apparel_Pants
      • Apparel_PlateArmor
      • Apparel_PowerArmor
      • Apparel_PowerArmorHelmet
      • Apparel_Robe
      • Apparel_Sash
      • Apparel_Shadecone
      • Apparel_ShieldBelt
      • Apparel_Tailcap
      • Apparel_TribalHeaddress
      • Apparel_WarMask
      • Apparel_WarVeil

    • styleTags
      • Bald
      • Balding
      • BeardBushy
      • BeardLong
      • BeardPunk
      • BeardRural
      • BeardShort
      • BeardTribal
      • BeardUrban
      • Bushy
      • Cultist
      • Furskin
      • Ghoul
      • HairLong
      • HairShort
      • MoustacheOnly
      • NoTattoo
      • Punk
      • Royalty
      • Rural
      • Shaved
      • Soldier
      • TattoBodyBuddhist
      • TattooBodyCannibal
      • TattooBodyInsect
      • TattooBodyPunk
      • TattooBodyTribal
      • TattooFaceCannibal
      • TattooFacePunk
      • TattooFaceTribal
      • Tribal
      • Urban
      • Wild

    • styleItemTags
      • BeardTribal
      • Cultist
      • NoBeard
      • Punk
      • Royalty
      • Rural
      • Soldier
      • TattooBodyInsect
      • TattooFaceCannibal
      • TattooFaceTribal
      • Tribal
      • Urban
      • Wild

    • disabledWorkTags
      • AllWork
      • Caring
      • Cleaning
      • Commoner
      • Firefighting
      • Intellectual
      • ManualDumb
      • ManualSkilled
      • PlantWork
      • Social
      • Violent

    • targetTags
      • Caravan
      • Map_Misc
      • Map_PlayerHome
      • Map_RaidBeacon
      • Map_TempIncident

    • buildingTags
      • Anomaly
      • Artillery
      • Artillery_BaseDestroyer
      • Bed
      • Biotech
      • MechClusterActivator
      • MechClusterCombatThreat
      • MechClusterMember
      • MechClusterMemberGood
      • MechClusterMemberLamp
      • MechClusterProblemCauser
      • Production
      • RitualFocus
      • RitualSeat
      • Artillery_MannedMortar

    • tradeTags
      • Armor
      • Art
      • Artifact
      • BasicClothing
      • Bionic
      • Clothing
      • Drugs
      • ExoticBuilding
      • ExoticMisc
      • HiTechArmor
      • HoraxArmor
      • HoraxWeapon
      • MortarShell
      • MusicalInstrument
      • PsylinkNeuroformer
      • Serum
      • TechHediff
      • Television
      • UtilitySpecial
      • WeaponMelee
      • WeaponRanged

    • thingSetMakerTags (thingSetMakerTagsToAllow + thingSetMakerTagsToDisallow)
      • AnimalPart
      • ImplantEmpireRoyal
      • RewardNonEmpireFactionsOnly
      • RewardStandardCore
      • RewardStandardHighFreq
      • RewardStandardLowFreq
      • RewardStandardMidFreq
      • RewardStandardQualitySuper
      • SingleUseWeapon
      • SkillNeurotrainer
      • Techprint
      • WeaponBladelink