Is there any way to get rid of housing and amenities mechanics?

Narvana

Chieftain
Joined
Nov 20, 2016
Messages
62
I understand that they exist for the sake of balance, but they are such a fun kill for me...

I found some values concerning housing and amenities in Buildings.xml and Happinesses.xml, but I'm not sure how to edit them properly.

EDIT.
Ok, so I edited values in GlobalParameters.xml

Code:
<Row Name="CITY_HOUSING_LEFT_25PCT_GROWTH" Value="0" />
        
        <Row Name="CITY_HOUSING_LEFT_50PCT_GROWTH" Value="1" />
        
        <Row Name="CITY_HOUSING_LEFT_ZERO_GROWTH" Value="-4" />

into

Code:
<Row Name="CITY_HOUSING_LEFT_25PCT_GROWTH" Value="1" />
        
        <Row Name="CITY_HOUSING_LEFT_50PCT_GROWTH" Value="1" />
        
        <Row Name="CITY_HOUSING_LEFT_ZERO_GROWTH" Value="1" />

and those in Happinesses.xml:

Code:
        <Row HappinessType="HAPPINESS_REVOLT" Name="LOC_HAPPINESS_REVOLT_NAME" MaximumAmenityScore="-7" GrowthModifier="-100" NonFoodYieldModifier="-60" RebellionPoints="4"/>
        <Row HappinessType="HAPPINESS_UNREST" Name="LOC_HAPPINESS_UNREST_NAME" MinimumAmenityScore="-6" MaximumAmenityScore="-5" GrowthModifier="-100" NonFoodYieldModifier="-30" RebellionPoints="1"/>
        <Row HappinessType="HAPPINESS_UNHAPPY" Name="LOC_HAPPINESS_UNHAPPY_NAME" MinimumAmenityScore="-4" MaximumAmenityScore="-3" GrowthModifier="-30" NonFoodYieldModifier="-10"/>
        <Row HappinessType="HAPPINESS_DISPLEASED" Name="LOC_HAPPINESS_DISPLEASED_NAME" MinimumAmenityScore="-2" MaximumAmenityScore="-1" GrowthModifier="-15" NonFoodYieldModifier="-5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_CONTENT" Name="LOC_HAPPINESS_CONTENT_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_HAPPY" Name="LOC_HAPPINESS_HAPPY_NAME" MinimumAmenityScore="1" MaximumAmenityScore="2" GrowthModifier="10" NonFoodYieldModifier="5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_ECSTATIC" Name="LOC_HAPPINESS_ECSTATIC_NAME" MinimumAmenityScore="3" GrowthModifier="20" NonFoodYieldModifier="10" RebellionPoints="-1"/>

into

Code:
        <Row HappinessType="HAPPINESS_REVOLT" Name="LOC_HAPPINESS_REVOLT_NAME" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="0"/>
        <Row HappinessType="HAPPINESS_UNREST" Name="LOC_HAPPINESS_UNREST_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="0"/>
        <Row HappinessType="HAPPINESS_UNHAPPY" Name="LOC_HAPPINESS_UNHAPPY_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0"/>
        <Row HappinessType="HAPPINESS_DISPLEASED" Name="LOC_HAPPINESS_DISPLEASED_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="0"/>
        <Row HappinessType="HAPPINESS_CONTENT" Name="LOC_HAPPINESS_CONTENT_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_HAPPY" Name="LOC_HAPPINESS_HAPPY_NAME" MinimumAmenityScore="1" MaximumAmenityScore="2" GrowthModifier="10" NonFoodYieldModifier="5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_ECSTATIC" Name="LOC_HAPPINESS_ECSTATIC_NAME" MinimumAmenityScore="3" GrowthModifier="20" NonFoodYieldModifier="15" RebellionPoints="-1"/>

Do I have to change anything else to make it work without bugs?
 
Last edited:
If you want to remove the negative effects of low housing, you'll need to set those 3 parameters to a value that will never be reached, like -1000 .

In a similar way you just have to edit the Minimum- and MaximumAmenityScore values, the rest can stay the same, since those values will never be reached anyway.

Code:
        <Row HappinessType="HAPPINESS_REVOLT" Name="LOC_HAPPINESS_REVOLT_NAME" MaximumAmenityScore="-1000" GrowthModifier="-100" NonFoodYieldModifier="-60" RebellionPoints="4"/>
        <Row HappinessType="HAPPINESS_UNREST" Name="LOC_HAPPINESS_UNREST_NAME" MinimumAmenityScore="-999" MaximumAmenityScore="-998" GrowthModifier="-100" NonFoodYieldModifier="-30" RebellionPoints="1"/>
        <Row HappinessType="HAPPINESS_UNHAPPY" Name="LOC_HAPPINESS_UNHAPPY_NAME" MinimumAmenityScore="-997" MaximumAmenityScore="-996" GrowthModifier="-30" NonFoodYieldModifier="-10"/>
        <Row HappinessType="HAPPINESS_DISPLEASED" Name="LOC_HAPPINESS_DISPLEASED_NAME" MinimumAmenityScore="-995" MaximumAmenityScore="-994" GrowthModifier="-15" NonFoodYieldModifier="-5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_CONTENT" Name="LOC_HAPPINESS_CONTENT_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_HAPPY" Name="LOC_HAPPINESS_HAPPY_NAME" MinimumAmenityScore="1" MaximumAmenityScore="2" GrowthModifier="10" NonFoodYieldModifier="5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_ECSTATIC" Name="LOC_HAPPINESS_ECSTATIC_NAME" MinimumAmenityScore="3" GrowthModifier="20" NonFoodYieldModifier="10" RebellionPoints="-1"/>
 
If you want to remove the negative effects of low housing, you'll need to set those 3 parameters to a value that will never be reached, like -1000 .

In a similar way you just have to edit the Minimum- and MaximumAmenityScore values, the rest can stay the same, since those values will never be reached anyway.

Code:
        <Row HappinessType="HAPPINESS_REVOLT" Name="LOC_HAPPINESS_REVOLT_NAME" MaximumAmenityScore="-1000" GrowthModifier="-100" NonFoodYieldModifier="-60" RebellionPoints="4"/>
        <Row HappinessType="HAPPINESS_UNREST" Name="LOC_HAPPINESS_UNREST_NAME" MinimumAmenityScore="-999" MaximumAmenityScore="-998" GrowthModifier="-100" NonFoodYieldModifier="-30" RebellionPoints="1"/>
        <Row HappinessType="HAPPINESS_UNHAPPY" Name="LOC_HAPPINESS_UNHAPPY_NAME" MinimumAmenityScore="-997" MaximumAmenityScore="-996" GrowthModifier="-30" NonFoodYieldModifier="-10"/>
        <Row HappinessType="HAPPINESS_DISPLEASED" Name="LOC_HAPPINESS_DISPLEASED_NAME" MinimumAmenityScore="-995" MaximumAmenityScore="-994" GrowthModifier="-15" NonFoodYieldModifier="-5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_CONTENT" Name="LOC_HAPPINESS_CONTENT_NAME" MinimumAmenityScore="0" MaximumAmenityScore="0" GrowthModifier="0" NonFoodYieldModifier="0" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_HAPPY" Name="LOC_HAPPINESS_HAPPY_NAME" MinimumAmenityScore="1" MaximumAmenityScore="2" GrowthModifier="10" NonFoodYieldModifier="5" RebellionPoints="-1"/>
        <Row HappinessType="HAPPINESS_ECSTATIC" Name="LOC_HAPPINESS_ECSTATIC_NAME" MinimumAmenityScore="3" GrowthModifier="20" NonFoodYieldModifier="10" RebellionPoints="-1"/>

Thank you! It finally worked as I wanted!
 
Back
Top Bottom