-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
#Naval rework - Added three new naval units, adjusted costs for all units. Coal required for steam ships and oil for end game ships. - Caravel is the tier one light ship just below Frigate, Screw Frigate is tier 3 light ship just after frigate and Carrack is the tier 1 capital ship. #Population growth - added state_mortality_wealth_mult bonus to three techs in the society tree. - tweaked native modifier to disable population growth/decline (This only affects decentralized nations) if the modifier is on a playable nation let me know. - Other slight tweaks.
- Loading branch information
Showing
26 changed files
with
563 additions
and
30 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,100 @@ | ||
| ||
### Pop Growth Constants | ||
## Base Values per month | ||
@min_birthrate = 0.00130 #was 0.00055 # Minimum base birthrate per month (at POP_GROWTH_STABLE_SOL) | ||
@max_birthrate = 0.00400 #was 0.00450 # Maximum base birthrate per month (at SOL = 0 if not modified by malnourishment) | ||
@min_mortality = 0.00120 #was 0.00045 # Minimum base mortality per month (at POP_GROWTH_STABLE_SOL) | ||
@max_mortality = 0.00600 #was 0.00600 # Maximum base mortality per month (at SOL = 0 if not modified by malnourishment) | ||
|
||
## SoL Thresholds | ||
@pop_growth_equilibrium_sol = 5 # Equilibrium is pops stop starving and where growth first becomes positive | ||
@pop_growth_transition_sol = 11 #was 10 # Transition determines how long birthrate "lags" behind mortality before starting to drop. Setting to same as equilibrium leads to no "lag" (only matters for birthrate) | ||
@pop_growth_max_sol = 15 #was 20 # Growth Max is where net growth generally is at it's highest (only matters for mortality) | ||
@pop_growth_stable_sol = 22 #was 30 # Stable is where birthrate and mortality stop changing and hit their minimum values | ||
|
||
## Others | ||
@transition_birthrate_mult = 1.1 #was 1 # If you want the birthrate "lag" to go to a higher or lower value than max_birthrate. (you can also just change it directly below) | ||
@max_growth_mortality_mult = 0.465 #was 0.35 # What proportion of birthrate_at_growth_max mortality should be at. Higher means lower growth | ||
|
||
### Pop Growth Derived values | ||
# Generally, for each one of these derived values below we're really just doing one of three operations (or combination of them): | ||
# - Calculate a Point: sol * slope + start_value (x_at_y) | ||
# - Calculate a Slope: (start_value - end_value) / number_of_steps (x_slope) | ||
# - Calculate an Intercept: -slope*sol + end_value (x_intercept) | ||
# Intercepts are only needed for line segments that don't start at 0 SoL | ||
|
||
@birthrate_at_transition = @[max_birthrate*transition_birthrate_mult] | ||
@rate_at_equilibrium = @[pop_growth_equilibrium_sol*((birthrate_at_transition-max_birthrate)/pop_growth_transition_sol)+max_birthrate] # determines both mortality and birthrate | ||
|
||
## Mortality from 0 to pop_growth_equilibrium_sol | ||
@mortality_starving_slope = @[(rate_at_equilibrium-max_mortality)/pop_growth_equilibrium_sol] | ||
|
||
## Birthrate from 0 to pop_growth_transition_sol | ||
@birthrate_pretransition_slope = @[(birthrate_at_transition-max_birthrate)/pop_growth_transition_sol] | ||
# was @birthrate_pretransition_slope = @[(birthrate_at_transition-rate_at_equilibrium)/pop_growth_transition_sol] ; formula fixed | ||
|
||
## Mortality from pop_growth_equilibrium_sol to pop_growth_max_sol | ||
@birthrate_at_growth_max = @[(pop_growth_max_sol-pop_growth_transition_sol)*((min_birthrate-birthrate_at_transition)/(pop_growth_stable_sol-pop_growth_transition_sol))+birthrate_at_transition] | ||
@mortality_at_growth_max = @[birthrate_at_growth_max*max_growth_mortality_mult] | ||
@mortality_equilibrium_to_growth_max_slope = @[(mortality_at_growth_max-rate_at_equilibrium)/(pop_growth_max_sol-pop_growth_equilibrium_sol)] | ||
@mortality_equilibrium_to_growth_max_intercept = @[-mortality_equilibrium_to_growth_max_slope*pop_growth_equilibrium_sol+rate_at_equilibrium] | ||
|
||
## Birthrate from pop_growth_transition_sol to pop_growth_stable_sol | ||
@birthrate_transition_slope = @[(min_birthrate-birthrate_at_transition)/(pop_growth_stable_sol-pop_growth_transition_sol)] | ||
@birthrate_transition_intercept = @[-birthrate_transition_slope*pop_growth_stable_sol+min_birthrate] | ||
|
||
## Mortality from pop_growth_max_sol to pop_growth_stable_sol | ||
@mortality_growth_max_to_stable_slope = @[(min_mortality-mortality_at_growth_max)/(pop_growth_stable_sol-pop_growth_max_sol)] | ||
@mortality_growth_max_to_stable_intercept = @[-mortality_growth_max_to_stable_slope*pop_growth_stable_sol+min_mortality] | ||
|
||
### Pseudo algorithm to determine base Mortality / Birthrate | ||
## Mortality | ||
# if (sol < POP_GROWTH_EQUILIBRIUM_SOL) | ||
# { mortality = sol * POP_GROWTH_MORTALITY_STARVING_SLOPE + POP_GROWTH_MAX_MORTALITY } | ||
# else if (sol < POP_GROWTH_MAX_SOL) | ||
# { mortality = sol * POP_GROWTH_MORTALITY_EQUILIBRIUM_TO_GROWTH_MAX_SLOPE + POP_GROWTH_MORTALITY_EQUILIBRIUM_TO_GROWTH_MAX_INTERCEPT } | ||
# else if (sol < POP_GROWTH_STABLE_SOL) | ||
# { mortality = sol * POP_GROWTH_MORTALITY_GROWTH_MAX_TO_STABLE_SLOPE + POP_GROWTH_MORTALITY_GROWTH_MAX_TO_STABLE_INTERCEPT } | ||
# else { mortality = POP_GROWTH_MIN_MORTALITY } | ||
|
||
## Birthrate | ||
# if (sol < POP_GROWTH_EQUILIBRIUM_SOL) | ||
# { birthrate = (sol * POP_GROWTH_BIRTHRATE_PRETRANSITION_SLOPE + POP_GROWTH_MAX_BIRTHRATE) * (1 - malnourishment * (POP_GROWTH_EQUILIBRIUM_SOL - sol)) } | ||
# else if (sol < POP_GROWTH_TRANSITION_SOL) | ||
# { birthrate = sol * POP_GROWTH_BIRTHRATE_PRETRANSITION_SLOPE + POP_GROWTH_MAX_BIRTHRATE } | ||
# else if (sol < POP_GROWTH_STABLE_SOL) | ||
# { birthrate = sol * POP_GROWTH_BIRTHRATE_TRANSITION_SLOPE + POP_GROWTH_BIRTHRATE_TRANSITION_INTERCEPT } | ||
# else { birthrate = POP_GROWTH_MIN_BIRTHRATE } | ||
|
||
NPops = { | ||
## Birthrate | ||
POP_GROWTH_BIRTHRATE_PRETRANSITION_SLOPE = @birthrate_pretransition_slope | ||
POP_GROWTH_BIRTHRATE_TRANSITION_SLOPE = @birthrate_transition_slope | ||
POP_GROWTH_BIRTHRATE_TRANSITION_INTERCEPT = @birthrate_transition_intercept | ||
|
||
## Mortality | ||
POP_GROWTH_MORTALITY_STARVING_SLOPE = @mortality_starving_slope | ||
POP_GROWTH_MORTALITY_EQUILIBRIUM_TO_GROWTH_MAX_SLOPE = @mortality_equilibrium_to_growth_max_slope | ||
POP_GROWTH_MORTALITY_EQUILIBRIUM_TO_GROWTH_MAX_INTERCEPT = @mortality_equilibrium_to_growth_max_intercept | ||
POP_GROWTH_MORTALITY_GROWTH_MAX_TO_STABLE_SLOPE = @mortality_growth_max_to_stable_slope | ||
POP_GROWTH_MORTALITY_GROWTH_MAX_TO_STABLE_INTERCEPT = @mortality_growth_max_to_stable_intercept | ||
|
||
## Base Values | ||
POP_GROWTH_MIN_BIRTHRATE = @min_birthrate # Minimum base birthrate per month (at POP_GROWTH_STABLE_SOL) | ||
POP_GROWTH_MAX_BIRTHRATE = @max_birthrate # Maximum base birthrate per month (at SOL = 0 if not modified by malnourishment) | ||
POP_GROWTH_MIN_MORTALITY = @min_mortality # Minimum base mortality per month (at POP_GROWTH_STABLE_SOL) | ||
POP_GROWTH_MAX_MORTALITY = @max_mortality # Maximum base mortality per month (at SOL = 0 if not modified by malnourishment) | ||
|
||
## SoL Thresholds | ||
POP_GROWTH_EQUILIBRIUM_SOL = @pop_growth_equilibrium_sol # Equilibrium is pops stop starving and where growth first becomes positive | ||
POP_GROWTH_TRANSITION_SOL = @pop_growth_transition_sol # Transition determines how long birthrate "lags" behind mortality before starting to drop. Setting to same as equilibrium leads to no "lag" (only matters for birthrate) | ||
POP_GROWTH_MAX_SOL = @pop_growth_max_sol # Growth Max is where net growth generally is at it's highest (only matters for mortality) | ||
POP_GROWTH_STABLE_SOL = @pop_growth_stable_sol # Stable is where birthrate and mortality stop changing and hit their minimum values | ||
} | ||
### End Pop Growth Constant defines | ||
|
||
NPops = { | ||
LOW_POP_THRESHOLD = 7500 #was 5000 # If a state has less than this amount of pops per arable land, apply the low pop modifier | ||
HIGH_POP_THRESHOLD = 250000 #was 100000 # If a state has more than this amount of pops per arable land, apply the high pop modifier | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.