Map Multi Conditional Stat Affecter - KonradHeinser/EBSGFramework GitHub Wiki
Return to Main Conditional Stat Affecters Page
This conditional can check various things related to the area around the pawn, like the temperature, weather, and map condition. This should only be used if you need to use multiple conditionals at the same time:
<conditionalStatAffecters>
<li Class="EBSGFramework.ConditionalStatAffecter_MapMulti">
<label>label</label>
<statFactors>
</statFactors>
<statOffsets>
</statOffsets>
</li>
</conditionalStatAffecters>
- label : A label to override the default
- defaultActive : Default (True) : If the pawn isn't spawned or in a map, this determines whether to apply the stat changes or not
-
progressThroughDay : Default (0~1) : % of progress through the day when this will be active. For example, if this is set to be 0~0.5, then the ability is usable from midnight until noon, 0.5~1 would be noon until midnight, and 0.25~0.75 6:00 to 18:00
- If you aren't sure what to put for the percentage, take the hour you want it to start/end at, and divide it by 24. For example, if you want the available times to be 5:00-15:00 (5-3 for those who stick to 12 hour clocks), you would do 5/24 and 15/24 to get 0.208~0.625
-
invertTime : Default (False) : Makes it so progressThroughDay looks to make sure the value is outside the range instead of inside. This can be used to set up times that pass through midnight as it will result in you specifying the range of times that do not work
- For example, the 0.208~0.625 in the example (5:00-15:00, morning to afternoon) would instead check for 15:00-5:00 (afternoon to morning)
-
daysOfYear : Default (0~60) : Range of dates in the year where this is active
-
invertDOY : Default (False) : Makes it so daysOfYear looks to make sure the value is outside the range instead of inside. This can be used to set up times that pass through one year to the next as it will result in you specifying the range of times that do not work (i.e. 16~45 normally only allows for Jugust through Septober, but with invert active it instead only allows for Decembary through Aprimay)
-
daysOfQuadrum : Default (0~15) : Range of dates in the quadrum where this is active
-
invertDOQ : Default (False) : Makes it so daysOfQuadrum looks to make sure the value is outside the range instead of inside. This can be used to set up times in the middle of the quadrum that become invalid (i.e. using 5~10 will instead check to make sure it is before day 5 or after day 10 in the quadrum)
-
seasons : A list of valid seasons for this to be active. The options are Spring, Summer, Fall, Winter, PermanentSummer, and PermanentWinter. Summer includes both normal Summer and PermanentSummer, and Winter checks for both Winter and PermanentWinter. However, PermanentSummer and PermanentWinter do not check for their temporary variants
-
layers : A list of PlanetLayerDefs to look for. If the pawn doesn't have a world tile for whatever reason, this will never be checked and the condition will always fail
-
invertLayers : Default (False) : Makes it so layers is looking to make sure the pawn is not on one of the layers. If your goal is something like "not on the surface" or "not in orbit", it's recommended to set this to true instead of listing all the allowed layers so unexpected layers aren't excluded (i.e. a mod adding an underwater layer)
-
inPollution : Default (False) : If True, the cell that the pawn is standing on must be polluted for the condition to pass
-
notInPollution : Default (False) : If True, the cell that the pawn is standing on must be unpolluted for the condition to pass
-
lightLevel : Default (0~1) : The light level of the area the pawn is standing must be in this range for the condition to pass
-
invertLight : Default (False) : Makes it so lightLevel looks to make sure the value is outside the range instead of inside
- For example, if you set the light level to 0.3~0.7, then invert it, instead of looking for light levels between 30% and 70%, it looks for light levels below 30% or above 70%
-
temp : Default (-9999~9999) : The temperature that the pawn is currently exposed to must be in this range for this condition to pass
-
invertTemp : Default (False) : Causes the temp check to make sure the current temperature is outside of the range instead of inside it. For example, a range of 10~30 would check to make sure the temperature is below 10 or over 30 instead
-
anyWater : Default (False) : Causes this to be active whenever the pawn is standing in any non-hated water terrain. If both this and anyNonWater remain False then only the terrains list determines if this is active
-
anyNonWater : Default (False) : Causes this to be active whenever the pawn is standing in any non-hated non-water terrain. If both this and anyNonWater remain False then only the terrains list determines if this is active
-
terrains : A list of TerrainDefs to check for. Whether this causes the condition to become active or not is based on hateTerrains
-
hateTerrains : Default (False) : This changes what occurs when the pawn is standing on one of the listed terrains. If it remains False, then the conditional will be active when the pawn is standing on one of the terrains or meets the anyWater/anyNonWater condition if one of those is true. When True, the conditional will only be active when the pawn is not standing on one of the listed terrains and meets the anyWater/anyNonWater condition if one of those is true
- This set up makes it easier to utilize anyWater and anyNonWater. When hateTerrains is False while you have anyWater set to True, you only need to list non-water TerrainDefs because any water terrains will be automatically included in the list. If hateTerrains is True while you're using anyWater, then you can list any water TerrainDefs that you don't want included to limit what is allowed
-
conditions : A list of ConditionDefs to check for
-
forbiddenConditions : Default (False) : When False, the stat affecter is only active while at least one of the conditions is active. If set to True, it will be active as long as none of the listed conditions are active
-
checkRoof : Default (True) : While True, if the pawn is under a roof then they always pass maximum rain/snow rate checks, and automatically fail minimum checks
-
rainRate : Default (0~9999) : The rain rate of the map's active WeatherDef must be in this range
-
snowRate : Default (0~9999) : The snow rate of the map's active WeatherDef must be in this range
-
weathers : A list of WeatherDefs to check for
-
forbiddenWeathers : Default (False) : When False, the stat affecter is only active while at least one of the weathers is active. If set to True, it will be active as long as none of the listed weathers are active