NCamera = { FOV = 35 # Field-of-View SYSTEM_NEAR_PLANE_DISTANCE_BASE = 0.0 SYSTEM_FAR_PLANE_DISTANCE_BASE = 12000.0 # Used for all ships ENTITY_SPRITE_DESIGN_ENTRY_CAM_DIR = { -1.0 -0.6 0.3 } ENTITY_SPRITE_DESIGN_ENTRY_CAM_LOOK_AT = { -2 -1.5 -1.0 } # x=closer -y = up +z = left -z = right ENTITY_SPRITE_DESIGN_ENTRY_ZOOM_SCALE = 1.7 # Used for ship sections in the ship designer ENTITY_SPRITE_SHIP_SECTION_CAM_DIR = { -1.0 -0.9 0.7 } ENTITY_SPRITE_SHIP_SECTION_CAM_LOOK_AT = { 0 0 0 } ENTITY_SPRITE_SHIP_SECTION_ZOOM_SCALE = 2.3 # Used for planets ENTITY_SPRITE_SYSTEM_VIEW_CAM_DIR = { -1.0 -0.5 0.3 } ENTITY_SPRITE_SYSTEM_VIEW_CAM_LOOK_AT = { 0 0 0 } ENTITY_SPRITE_SYSTEM_VIEW_ZOOM_SCALE = 1.6 # Used for planets in the species customization menus ENTITY_SPRITE_CUSTOMIZE_SPECIES_VIEW_CAM_DIR = { -1.0 -0.5 0.3 } ENTITY_SPRITE_CUSTOMIZE_SPECIES_VIEW_CAM_LOOK_AT = { 0 0 0 } ENTITY_SPRITE_CUSTOMIZE_SPECIES_VIEW_ZOOM_SCALE = 1.7 # Same, but specifically for ring worlds ENTITY_SPRITE_CUSTOMIZE_RINGWORLD_CAM_DIR = { -1.0 -0.75 0.3 } ENTITY_SPRITE_CUSTOMIZE_RINGWORLD_CAM_LOOK_AT = { 0 0 0 } ENTITY_SPRITE_CUSTOMIZE_RINGWORLD_ZOOM_SCALE = 1.9 # Used for the animated front end background ENTITY_SPRITE_FRONTEND_BG_CAM_DIR = { 0.0 0.0 1.0 } ENTITY_SPRITE_FRONTEND_BG_CAM_LOOK_AT = { 0.0 0 0 } ENTITY_SPRITE_FRONTEND_BG_ZOOM_SCALE = 10.0 GALAXY_SHOW_FLEETS_ZOOM = 2300 # Camera zoom interval to show fleet icons GALAXY_SHOW_STARNAME_ZOOM = 800 # Camera zoom interval to show star name GALAXY_SHOW_COSMIC_STORM_ZOOM = 800 # Camera zoom interval to show cosmic storm icon SHOW_FLEETS_ZOOM = 300 # Show fleet icons instead of ship icons above this height HIDE_ORBITS_ZOOM = 0 ZOOM_STEPS_GALAXY = { 100 200 400 600 900 1500 3000 } # Galaxy zoom steps # ZOOM_STEPS_SYSTEM_PERCENTAGES = { 0.01 0.05 0.25 0.5 1.0 1.5 3.0 } # System zoom steps in percent relative to the system size ZOOM_STEPS_SYSTEM_PERCENTAGES = { 0.025 0.1 0.25 0.5 1.0 1.5 3.0 } # System zoom steps in percent relative to the system size ZOOM_STEPS_SHOW_FLEET_HEALTH_BARS = { 3 4 5 6 } # on which zoom steps per-fleet health bars should be shown LEAVE_SYSTEM_ZOOM_STEP = 1 # Controls which zoom step is used after leaving system ENTER_SYSTEM_ZOOM_STEP = 6 # Controls which zoom step is used after entering system SYSTEM_SPACE_SCALE_MULT = 10.0 GALAXY_SPACE_SCALE_MULT = 2.0 SYSTEM_HOVER_RANGE = 0.005 BORDER_NAMES_FADEOUT_ZOOM = 600 BORDER_NAMES_FADEOUT_SPEED = 4.0 BORDER_FLAG_FADEOUT_ZOOM = 600 BORDER_FLAG_FADEOUT_SPEED = 4.0 NEBULA_NAMES_FADEOUT_ZOOM = 250 NEBULA_NAMES_FADEOUT_SPEED = 1.5 EDGE_SCROLLING_PIXELS = 3 # how many pixels from window edge that will trigger edge scrolling SCROLL_SPEED = 0.035 # higher values = faster camera. NOTE that this is tweakables from settings as well! SYSTEM_CAMERA_RESTRICT_EXTRA_SPACE = 100.0# how far the camera can go outside a systems outer radius SYSTEM_MIN_PITCH = 20.0 # in degrees SYSTEM_MAX_PITCH = 80.0 # in degrees GALAXY_MIN_PITCH = 30.0 # in degrees GALAXY_MAX_PITCH = 85.0 # in degrees FOCUSED_MIN_PITCH = -80.0 # in degrees used when focused on planet/ship FOCUSED_MAX_PITCH = 80.0 # in degrees used when focused on planet/ship FOCUSED_MIN_ZOOM_BASE = 20.0 # base min zoom FOCUSED_MIN_ZOOM_MULT = 0.5 # min zoom is base + entity radius * FOCUSED_MIN_ZOOM_MULT FOCUSED_PLANET_MIN_ZOOM_MULT = 1.6 FOCUSED_ZOOM_RATE = 0.2 # higher values means faster zoom in/out SHIP_3DVIEWER_MIN_PITCH = -60.0 # in degrees. Used in ship model preview. SHIP_3DVIEWER_MAX_PITCH = 100.0 # in degrees. Used in ship model preview. KEYBOARD_ZOOM_RATE = 7.5 # higher values means faster zoom in/out when using keybord input to zoom FOCUS_START_ZOOM_STEP = 4 # which zoom step will be used when focusing on a new object ROTATION_RADIANS_PER_MOUSE_UNIT = 0.004 # moving the mouse 1 pixel results in rotation of X radians * sensitivity from settings MOUSE_MOVEMENT_TO_START_ROTATION_SQ = 16 # how far (squared) you need to move the mouse before the game recognizes this as a camera rotation action SYSTEM_SLIDE_RADIUS_FACTOR = 4.0 SYSTEM_SLIDE_SPEED = 100.0 } NGraphics = { CAMERA_DISTANCE_TO_ZOOM = 10.0 DEAD_SHIP_DRAG = 15.0 # When ships die reduce their speed with x / second ORBIT_HSV = { 0.44 0.8 0.6 } SYSTEM_INNER_BORDER_HSV = { 0.0 0.0 1.0 } SYSTEM_OUTER_BORDER_HSV = { 0.1 0.8 0.9 } SYSTEM_LINE_ALPHA_FADE_STEP = { 1 6 } # Fade alpha betweeen zoom step X and Y SYSTEM_LINE_ALPHA_FADE_VALUE = { 0.1 0.05 } # Fade alpha value between X and Y DEFAULT_PLANET_PLANE = -150.0 PLANET_TO_MEGASTRUCTURE_SCALE = 0.045 MOON_SCALE = 0.7 PLANET_SCALE_SYSTEM = { 0.425 0.325 0.35 0.5 0.5 0.5 0.75 } # Scale for each System zoom steps PLANET_DESTRUCTION_HIT_ENTITY_SCALE = 0.02 # Scale of the planet destruction hit entity is * this # 0 1 2 3 4 5 6 7 RELATION_COLOR_PLAYER_HSV = { 0.67 0.8 0.35 } RELATION_COLOR_ALLIED_HSV = { 0.8 0.35 0.4 } RELATION_COLOR_NEUTRAL_HSV = { 0.0 0.0 0.22 } RELATION_COLOR_HOSTILE_HSV = { 0.0 0.3 0.3 } RELATION_COLOR_SELECTED_RGB = { 1.5 1.1 0.0} MAP_ICON_COLOR_INACTIVE_HSV = { 0.0 0.0 0.22 } MAP_ICON_COLOR_INACCESSIBLE = { 0.7 0.1 0.1 } MAP_ICON_COLOR_ACCESSIBLE = { 0.26 0.52 0.43 } MAP_ICON_COLOR_EXPLORING = { 0.26 0.52 0.43 } MAP_ICON_COLOR_PENDING_EVENT = { 0.76 0.64 0.15 } ASTEROID_PLANE = -100.0 ASTEROID_POSITION_OFFSET = 8.0 ASTEROID_HEIGHT_OFFSET = 4.0 ASTEROID_DIST_POW = 3 ASTEROID_AMOUNT_RADIUS_SCALER = 0.1 ASTEROID_MAX_SCALE = 4.0 ASTEROID_ROTATION_SPEED = 0.3035 GALAXY_STAR_ICON_SCALE = 1.5 GALAXY_STAR_ICON_MAX_SCALE = 1.25 GALAXY_DUST_SIZE = 25.0 GALAXY_DUST_SIZE_EXTRA = 35.0 GALAXY_DUST_ROTATION_SPEED = 0.005 GALAXY_NEBULA_DUST_SIZE = 10.0 GALAXY_NEBULA_DUST_SIZE_EXTRA = 25.0 GALAXY_NEBULA_DUST_ROTATION_SPEED = 0.002 GALAXY_COSMIC_STORM_DUST_SIZE = 10.0 GALAXY_COSMIC_STORM_DUST_SIZE_EXTRA = 17.0 GALAXY_COSMIC_STORM_DUST_ROTATION_SPEED = -0.15 GALAXY_COSMIC_STORM_DUST_COUNTER_ROTATION_SPEED = 0.18 GALAXY_COSMIC_STORM_DUST_LIGHTNING_FLASH_TIME = 0.4 GALAXY_COSMIC_STORM_DUST_FADE_TIME = 1.0 ARCHAEOLOGICAL_SITE_MAP_ICON_OFFSET = -0.5 ASTRAL_RIFTS_MAP_ICON_OFFSET = 0.06 ASTRAL_RIFTS_STATION_OFFSET_MULT = 0.5 PLANET_TILT_FROM_SUN = 0.52 # Tilt away from sun PLANET_RING_TILT_FROM_SUN = -0.16 PLANET_MAP_ICON_OFFSET = 0.6 # based on planet size PLANET_DISSOLVE_ANIMATION_TIME_SCALE = 7.4 # Larger value => planet dissolve animation lasts longer MEGASTRUCTURE_MAP_ICON_OFFSET = 0.06 # based on mega structure size TRAILS_ALPHA_FADE = 0.5 # Controls of quick we alpha fade-out TRAILS_MISSILE_ALPHA_FADE = 6 # Controls of quick we alpha fade-out missile trails TRAILS_BASE_WIDTH = 1.0 # Trails width TRAILS_MISSILE_BASE_WIDTH = 3.0 # Missile trails width TRAILS_LOCATOR_NAME = "exhaust" STRIKE_CRAFT_TRAIL_FADE_RATE = 1.0 STRIKE_CRAFT_HEIGHT_OFFSET = 30.0 STRIKE_CRAFT_HEIGHT_RANDOM = 5.0 BORDER_TEXTURE_SIZE = 2048 # size of borders data texture. larger = slower with more sample points. Too small and it will be inaccurate too big and the super sampling won't have much effect BORDER_MIN_SIZE_FOR_SYMBOL = 16 # To show a symbol the border blob must be able to fit a square of x pixels BORDER_SYSTEM_RADIUS = 35.0 BORDER_HYPERLANE_THICKNESS = 20.0 BORDER_INFLUENCE_MAX_DISTANCE_FACTOR = 1.88 BORDER_OWNERLESS_SYSTEM_RADIUS = 30.0 BORDER_OWNERLESS_HYPERLANE_THICKNESS = 20.0 BORDER_OWNERLESS_INFLUENCE_MAX_DISTANCE_FACTOR = 1.88 BORDER_VISIBILITY_THRESHOLD = 0.05 STAR_PIN_CIRCLE_RADIUS = 2.0 # The lines that go from solar systems down to the 0-plane. This is the radius of that circle STAR_PIN_CIRCLE_NUM_POINTS = 6 # how many points in the circle on the 0-plane STAR_PIN_ENABLE_NEUTRAL = yes # Should the game draw pins for stars that are not within any borders? STAR_PIN_NEUTRAL_COLOR = { 0.5 0.5 0.5 0.5 } # The color for pins that are not inside any borders BORDER_FLAG_SCALE = 0.6 MAPNAME_BORDER_SCALE = 1.0 MAPNAME_BORDER_MIN_SIZE = 100 MAPNAME_BORDER_OFFSET_MUL = 0.75 MAPNAME_BORDER_OFFSET_ADD = 4.0 MAPNAME_NEBULA_SCALE = 0.8 MAPNAME_SECTOR_SCALE = 3 NULL_ENTITY = "test_object_entity" NULL_INSTANT_PROJECTILE = "default_instant_projectile" NULL_MISSILE_PROJECTILE = "default_missile_projectile" SCIENCE_SHIP_SURVEY_ENTITY = "survey_base_effect_entity" SCIENCE_SHIP_SURVEY_ENTITY_LOCATOR = "" SCIENCE_SHIP_SURVEY_ENTITY_MAX_SCALE_FACTOR = 1.0 # Scale in xy can max be scale z * SCIENCE_SHIP_SURVEY_ENTITY_MAX_SCALE_FACTOR. Scale z will be equal to the distance between surveyed object and ship ENTROPY_CONDUIT_SHIP_TERRAFORM_ENTITY = "infernal_01_subspace_tunnel_ship_to_star_entity" ENTROPY_CONDUIT_SHIP_TERRAFORM_ENTITY_LOCATOR = "" ENTROPY_CONDUIT_SHIP_TERRAFORM_ENTITY_MAX_SCALE_FACTOR = 0.01 CONSTRUCTION_SHIP_TERRAFORMING_BEAM_ENTITY = "terraforming_effect_entity" CONSTRUCTION_SHIP_TERRAFORMING_PLANET_ENTITY = "terraforming_planet_effect_entity" CONSTRUCTION_SHIP_TERRAFORMING_BEAM_ENTITY_SCALE_XY = 1.0 # Scale xy in local coords between ship and planet. CONSTRUCTION_SHIP_TERRAFORMING_BEAM_ENTITY_SCALE_Z = 0.62 # Scale beam tip z in local coords so beam hits planet surface. CONSTRUCTION_SHIP_TERRAFORMING_PLANET_ENTITY_SCALE_R = 3.0 # Scale radius r of the cloud surrounding the planet. # NAVIGATION_ARROW_X values might require a game restart to push changes NAVIGATION_ARROW_ENTITY = "navigation_arrow_entity" NAVIGATION_ARROW_OFFSET = 150.0 # offsets the arrow towards the edge NAVIGATION_ARROW_FONT = "Orbitron" NAVIGATION_ARROW_FONT_SPECIAL = { "l_russian" "arial" "l_polish" "arial" "l_chinese" "Chinese_normal" "l_japanese" "Chinese_normal" "l_korean" "Chinese_normal" } NAVIGATION_ARROW_TEXT_OFFSET = -50.0 NAVIGATION_ARROW_TEXT_SCALE = 1.6 NAVIGATION_ARROW_FONT_SIZE = 32 NAVIGATION_ARROW_TEXT_KERNING = 8 SHIP_TURRET_PROJECTILE_SPAWN_LOCATOR = "turret_muzzle_01" STRIKE_CRAFT_PROJECTILE_SPAWN_LOCATOR = "projectile_spawn" SHIP_TARGET_LOCATOR = "target_locator_" MISSILE_HEIGHT_OFFSET = 10.0 # how high up missiles will fly MISSILE_RANDOM_OFFSET_MIN_RADIUS = 5.0 # random spread of missiles MISSILE_RANDOM_OFFSET_MAX_RADIUS = 10.0 BALLISTIC_PROJECTILE_MISSED_LIFETIME = 2.0 # missed ballistic projectiles will live for (at least) this long before being removed PROJECTILE_ENTITY_STOP_STATE = "stop" # state that gets played on missile- projectile- and on_hit entities when its time to stop SHIELD_EFFECT_TIME_SCALE = 1.5 # how fast the shield effects are animated SHIELD_EFFECT_LOOP_INTERVAL = 0.5 # when to loop animation. value is in percent SHIELD_DISTANCE_FROM_SHIP = { 2.0 0.0 5.0 } # how far "out" from the ships shields will extend. left-right upd-down front-back SHIELD_DISTANCE_FROM_SHIP_MULT = { 1.15 1.15 1.15 } # how far "out" from the ships shields will extend. based on ship's size. left-right upd-down front-back SHIELD_EFFECT_ENTITIES = { "small_shield_impact_entity" "medium_shield_impact_entity" "large_shield_impact_entity" } SHIELD_EFFECT_LOOPING_ENTITIES = { "small_shield_impact_looping_entity" "medium_shield_impact_looping_entity" "large_shield_impact_looping_entity" } MISSED_BEAM_LENGTH = 1500.0 # how long missed beams will be SHIP_DAMAGE_TEXTURE = "gfx/models/ships/other/damaged_noise.dds" SHIP_DISSOLVE_NOISE_TEXTURE = "gfx/models/ships/other/dissolve_noise.dds" SHIP_CLOAK_TEXTURE = "gfx/models/ships/other/cloaking.dds" SHIP_RANDOM_HEIGHT_OFFSET = 15.0 SHIP_MOVEMENT_LENGTH_CONSIDERED_ZERO = 0.002 # Below this value ships actual rotation will be used otherwise the forward vector. RANDOM_HEIGHT_MIN = -20.0 RANDOM_HEIGHT_MAX = 20.0 MOVE_ARROW_SYSTEM_CONTROL_POINT_SPACING = 100.0 # When plotting the movement arrows how far apart should the control points be? MOVE_ARROW_GALAXY_CONTROL_POINT_SPACING = 5.0 # When plotting the movement arrows how far apart should the control points be? MOVE_ARROW_SYSTEM_TARGET_ENTITY = "move_indicator_entity" # Entity that is used at the end of the arrow MOVE_ARROW_GALAXY_TARGET_ENTITY = "galaxy_move_indicator_entity" # Entity that is used at the end of the arrow ATTACK_ARROW_SYSTEM_TARGET_ENTITY = "attack_indicator_entity" # Entity that is used at the end of the arrow ATTACK_ARROW_GALAXY_TARGET_ENTITY = "galaxy_attack_indicator_entity" # Entity that is used at the end of the arrow TASK_ARROW_SYSTEM_TARGET_ENTITY = "task_indicator_entity" # Entity that is used at the end of the arrow TASK_ARROW_GALAXY_TARGET_ENTITY = "galaxy_task_indicator_entity" # Entity that is used at the end of the arrow BYPASS_ARROW_GALAXY_TARGET_ENTITY = "galaxy_move_indicator_entity" # Entity used for special FTL jumps - for now use the default move target CATAPULT_TARGET_ENTITY = "catapult_indicator_entity" # Entity used for slingshot reticule - for now use the default move target CATAPULT_DESTINATION_ENTITY = "catapult_indicator_entity" # Entity used for slingshot destination - for now use the default move target CATAPULT_POTENTIAL_TARGET_INDICATOR_ENTITY = "catapult_potential_indicator_entity" # Entity used for slingshot destination - for now use the default move target GUI_PLANET_RING_DIR = { 1.5 -0.25 1.5 } # direction of the ring for planets in gui icons TI_TEXTURE_GROW_AMOUNT = 1 # amount to grow TI for graphics #REPAIR_FLEET_EFFECT_ENTITY = "ship_repair_entity" #UPGRADE_FLEET_EFFECT_ENTITY = "ship_upgrade_entity" #ORBIT_FLEET_EFFECT_ENTITY = "ship_orbit_entity" #IDLE_FLEET_EFFECT_ENTITY = "" FLEET_EFFECT_ENTITIES = { "ship_repair_entity" # when repairing "ship_upgrade_entity" # when upgrading "ship_orbit_entity" # when orbiting "" # when idling } FLEET_EFFECT_ENTITIES_BILLBOARD = { 1 # when repairing 1 # when upgrading 0 # when orbiting 1 # when idling } FLEET_EFFECT_ENTITIES_SCALE = { 0 # when repairing 0 # when upgrading 1 # when orbiting 0 # when idling } FTL_WINDUP_ENTITY_HYPERLANE = "hyperlane_ftl_ship_effect_entity" # for hyperlane windup FTL_WINDUP_ENTITY_JUMP = "warp_ftl_ship_effect_entity" # for jump drive windup FTL_WINDUP_ENTITY_ASTRAL_JUMP = "astral_jump_ftl_ship_effect_entity" # for astral jump windup ALIENFX_DEFAULT_COLOR = { 0.43 0.8 0.61 } MAX_GFX_PROJECTILES = 100 MAX_GFX_PRIO_PROJECTILES = 100 MAX_GFX_MISSILES = 50 MUZZLE_FLASH_LIMIT = 50 MUZZLE_FLASH_DURATION = 2.0 MAP_MODE_NEUTRAL_COLOR = { 0.5 0.5 0.5 0.75 } COUNTRY_BORDER_COLOR_RANDOM_SATURATION_OFFSETS = { 0.0 -0.1 0.1 -0.2 0.2 -0.3 0.3 } COUNTRY_BORDER_COLOR_RANDOM_VALUE_OFFSETS = { 0.0 -0.1 0.1 -0.2 0.2 -0.25 0.3 } CONSTRUCTION_COLOR_VALID = { 0.38 1.0 0.6 0.5 } CONSTRUCTION_COLOR_INVALID = { 0.0 0.95 0.3 0.5 } CONSTRUCTION_COLOR_IN_PROGRESS = { 0.41 1.0 0.6 0.10 } CONSTRUCTION_PROGRESS_BLEND_SPEED = 0.025 CONSTRUCTION_MEGASTRUCTURE_PROGRESS_BLEND_SPEED = 0.001 HIDE_HYPERLANES_OUTSIDE_TERRA_INCOGNITA = yes SENSOR_RANGE_COLOR_MEDIUM = { 0.0 0.7 0.3 0.3 } SENSOR_RANGE_COLOR_LOW = { 1.0 0.5 0.0 0.2 } HYPERLANE_DEFAULT_COLOR = { 0.0 1.0 1.0 0.2 } HYPERLANE_NO_ACCESS_COLOR = { 0.9 0.15 0.0 0.4 } HYPERLANE_RELAY_COLOR = { 0.0 0.6 0.4 0.8} HYPERLANE_RELAY_NOT_CONNECTED_COLOR = { 0.9 0.9 0.0 0.8} HYPERLANE_SCREENSIZE_DEFAULT = 0.01 HYPERLANE_SCREENSIZE_MIN = 0.01 HYPERLANE_SCREENSIZE_MAX = 5.0 HYPERLANE_THICKNESS_DEFAULT = 1.0 HYPERLANE_THICKNESS_RELAY = 2.0 CATAPULT_RANGE_COLOR = { 0.0 0.8 0.8 0.6 } # range indicator color CATAPULT_INDICATOR_COLOR_DEFAULT = { 0.0 0.95 0.3 0.5 } # HSVA CATAPULT_INDICATOR_COLOR_NO_RANGE = { 1.0 1.0 1.0 0.5 } # HSVA CATAPULT_INDICATOR_COLOR_CLICKABLE = { 0.41 1.0 0.6 0.10 } # HSVA CATAPULT_POTENTIAL_TARGET_INDICATOR_COLOR = { 0.5 0.8 0.1 0.6 } # range indicator color MODIFIER_TEXT_ICON_SCALE = 0.70 CELESTIAL_WARNING_COORDINATE_VALUE = 600 # System size at which you get errors for the system being too big (500 is the normal values, as graphics can glitch with bigger values) # Newer comment: upping limit because certain systems go higher and we haven't had issues reported... GDF_SHIP_GRAPHICAL_CULTURE = "nemesis_01" GDF_BIOSHIP_GRAPHICAL_CULTURE = "biogenesis_01" FEDERATION_UNKOWN_FEDERATION_ICON = "GFX_unknown_federation" STORM_FORECAST_MESH_EFFECT_FILENAME = "gfx/FX/storm_forecast_mesh.shader" STORM_FORECAST_MESH_EFFECT_NAME = "StormBorders" STORM_SPAWN_PREDICTION_INDICATOR_ENTITY = "storm_spawn_prediction_indicator_entity" # Entity that is used at the end of the arrow # Storm Spawn Indicator scale for each tech tier STORM_FORECAST_SPAWN_INDICATOR_TIER_1_SCALE = 60 STORM_FORECAST_SPAWN_INDICATOR_TIER_2_SCALE = 40 STORM_FORECAST_SPAWN_INDICATOR_TIER_3_SCALE = 20 # Storm Spawn Offset radius for each tech tier STORM_FORECAST_SPAWN_INDICATOR_TIER_1_OFFSET_RADIUS = 100 STORM_FORECAST_SPAWN_INDICATOR_TIER_2_OFFSET_RADIUS = 75 STORM_FORECAST_SPAWN_INDICATOR_TIER_3_OFFSET_RADIUS = 25 # Storm Spawn Indicator Size for tooltip STORM_FORECAST_SPAWN_INDICATOR_TOOLTIP_BASE_SIZE = 3.5 STORM_AREA_PLACER_INDICATOR_ENTITY = "storm_area_placer_indicator_entity" STORM_AREA_PLACER_RANGE_ENTITY = "storm_area_placer_range_entity" STORM_AREA_PLACER_INDICATOR_VALID_PLACEMENT_COLOR = { 0.0 0.9 0.0 0.8 } STORM_AREA_PLACER_INDICATOR_INVALID_PLACEMENT_COLOR = { 0.9 0.0 0.0 0.8 } #Decreasing tile size will affect performance and increasing it will make visuals more blocky STORM_INFLUENCE_FIELD_GRAPHICS_GRID_TILE_SIZE = 5 STORM_INFLUENCE_FIELD_GRAPHICS_RADIUS = 50 STORM_INFLUENCE_FIELD_GRAPHICS_TEXTURE_PATH = "gfx/map/storm_influence_visualization_gradient.dds" STORM_GALAXY_MAP_ICON_BASE_OFFSET = 1 STORM_GALAXY_MAP_ICON_OFFSET_ZOOM_SCALE = 0.05 # Cutholoids CUTHOLOID_ENGULF_ANIMATION_DURATION = 1.25 # How long does the engulf animation lasts (used for captured ship) CUTHOLOID_ENGULF_ANIMATION_SCALE_FRACTION_START = 0.5 # Fraction of the animation duration at which point the scaling starts CUTHOLOID_ENGULF_MIN_SCALE = 0.05 # Minimum scale of the captured ship during the animation GRAVITY_SNARE_CAPTURE_ANIMATION_TRAJECTORY_CHANGE_DURATION = 2 # How much it will take to fully target the capturing ship's position instead of its fleet # Vivarium CRITTER_SELECTOR_LIGHT = "selected_critter_lighting" DEBRIS_ENTITY = "debris_entity" FAUNA_DEBRIS_ENTITY = "destroyed_space_fauna" CARDINAL_PATRON_PASSIVE_ACCORD_DISTANCES_VIEW = { 0.51 0.805 } # Interpolation factor of the passive accord icon position between the plane center and the Cardinal Patron ACTIVE_ACCORDS_DISTANCE = 1 # Distance from the center for the Active Accords ACTIVE_ACCORDS_ANGLE_BASE_OFFSET = 20 # Angle between the two first Active Accords (degrees) ACTIVE_ACCORDS_ANGLE_OFFSET = 9 # Angle between other Active Accords (degrees) ACTIVE_ACCORDS_ANGLE_OFFSET_MULT = 0.7 # Multiplies the angle added for each new pair of Active Accords END_OF_THE_CYCLE_ACCORDS_OFFSET = 7 # Active accord substracted from the distance for the end of the cycle FORGE_OWN_PATH_ACTIVE_ACCORD_OFFSET = 10 # Active accord extra distance from center when forging your own path CARDINAL_PATRON_COVENANT_ICON_DISTANCE = 1 # Interpolation factor of the covenant icon position between the plane center and the Cardinal Patron PATRON_DEFAULT_COLOR = { 1 1 1 1 } # Default color for Patrons MINOR_PATRON_ICON_SCALE = 0.5 # Minor Patron icon scale on plane PATRON_ICON_SCALE = 2 # Default Patron icon scale on plane PATRON_CONTACTED_ALPHA = 0.8 PATRON_CONTACTING_ALPHA = 0.7 PATRON_UNCONTACTED_COLOR = { 1 1 1 0.4 } SHROUD_NO_COVENANT_COLOR = { 1 1 1 0.6 } SHROUD_COVENANT_ALPHA = 0.65 QUADRANT_HOVER_SOUND = "mouse_over" # Sound played when hovering a quadrant SELECT_PATRON_CLICK_SOUND = "select_click" # Sound played when trying to select a patron UNSELECT_PATRON_CLICK_SOUND = "back_click" # Sound played when trying to unselect a patron CYCLE_END_ACTIVE_ACCORDS_DEFAULT_POS_X = 0 CYCLE_END_ACTIVE_ACCORDS_DEFAULT_POS_Y = 1 CYCLE_END_ACTIVE_ACCORDS_MAX_ONE_GRID = 4 CYCLE_END_ACTIVE_ACCORDS_GRID_POS_X = 2 CYCLE_END_ACTIVE_ACCORDS_GRID_POS_Y = 10 ACTIVE_ACCORDS_LOCKED_POS_Y = 10 ACTIVE_ACCORDS_UNLOCKED_POS_Y = -1 ACTIVE_ACCORDS_TEXT_LOCKED_Y = 14 ACTIVE_ACCORDS_TEXT_UNLOCKED_Y = 9 PSIONIC_AURA_HYPERLANE_WIDTH = 3.0 PSIONIC_AURA_HYPERLANE_MOVE_SPEED = 0.04 PSIONIC_AURA_HYPERLANE_FADE_SPEED = 0.6 PSIONIC_AURA_ENEMY_DARKEN_FACTOR = 0.4 DELVE_EYE_SPEED = 150 DELVE_SCLERA_PUPIL_RATIO = 0.9 DELVE_PUPIL_MAX_X = 12 DELVE_PUPIL_MAX_Y = 7 END_CYCLE_QUADRANT_ROTATION_SPEED = 0.02 } NInterface = { # Any interface defines in this file will affect the checksum. Put them in unchecked_defines/00_interface.txt if they shouldn't change the checksum. } NGameplay = { #Number of tick commands we sent per turn, this is very useful for ppl running the game in fullscreen, a much faster simulation speed should be reached NUM_COMMANDS_PER_TURN = 2 GUARANTEED_COLONIES_DEFAULT = 2 GUARANTEED_COLONIES_MIN = 0 GUARANTEED_COLONIES_MAX = 2 # These values control the mid and end game sliders in game setup MID_GAME_START_DEFAULT = 100 MID_GAME_START_MAX = 400 MID_GAME_START_MIN = 25 END_GAME_START_DEFAULT = 200 END_GAME_START_MAX = 800 END_GAME_START_MIN = 50 START_YEAR_SLIDER_INTERVAL = 25 VICTORY_YEAR_DEFAULT = 300 VICTORY_YEAR_MAX = 1050 VICTORY_YEAR_MIN = 100 VICTORY_YEAR_SLIDER_INTERVAL = 50 SCORE_NO_ECONOMY = 5000 # For countries with no economy that still count for victory SCORE_ECONOMIC_POWER = 1 # Per economic power SCORE_TECH_POWER = 0.25 # Per tech power SCORE_MILITARY_POWER = 0.00 # Per fleet power SCORE_POPS = 0.02 # Per pop SCORE_PLANETS = 50 # Per colony SCORE_SYSTEMS = 10 # Per system SCORE_SUBJECTS = 0.5 # Fraction of subject's own score SCORE_FEDERATION_MEMBERS = 0.1 # Fraction of Federation member's own score SCORE_CRISIS_KILLS = 10 # Per crisis ship killed TECH_COST_DEFAULT = 1.0 TECH_COST_MIN = 0.25 TECH_COST_MAX = 5.00 TECH_COST_SLIDER_INTERVAL = 0.25 TECH_COST_DIFFICULTY_SCALE_MULT = 0.025 TRADITION_COST_DEFAULT = 1.0 TRADITION_COST_MIN = 0.25 TRADITION_COST_MAX = 5.00 TRADITION_COST_SLIDER_INTERVAL = 0.25 LOGISTIC_CEILING_DEFAULT = 5 LOGISTIC_CEILING_MIN = 1 LOGISTIC_CEILING_MAX = 10 LOGISTIC_CEILING_SLIDER_INTERVAL = 0.5 CITIZENSHIP_TYPE_DEFAULT = "citizenship_full" SLAVERY_TYPE_DEFAULT = "slavery_normal" PURGE_TYPE_DEFAULT = "purge_normal" SUBSPECIES_INTEGRATION_TYPE_DEFAULT = "no_integration" HIVE_EMPIRE_GOVERNMENT_AUTHORITY = "auth_hive_mind" MACHINE_EMPIRE_GOVERNMENT_AUTHORITY = "auth_machine_intelligence" #Order is citizenship - colonisation control - living standard - migration control - military service - population control - purge - slavery - sub-species integration SPECIES_RIGHTS_INITIAL_CONFIG_PRIMARY = { citizenship_full colonization_control_no living_standard_normal migration_control_no military_service_full population_control_no purge_normal slavery_normal no_integration } #Initial config the game generates for your species rights module. It should at some point check weights and potentials, so this probably doesn't do much. Except break the game if left blank. SPECIES_RIGHTS_INITIAL_CONFIG_DEFAULT = { citizenship_limited colonization_control_no living_standard_stratified migration_control_no military_service_limited population_control_no purge_normal slavery_normal no_integration } #Ditto SPECIES_RIGHTS_INITIAL_CONFIG_BUILT = { citizenship_robot_servitude colonization_control_yes living_standard_servitude migration_control_yes military_service_limited population_control_no purge_normal slavery_normal no_integration } #Ditto GROWTH_SCALE_DEFAULT = 0.25 GROWTH_SCALE_MIN = 0.0 GROWTH_SCALE_MAX = 1.0 GROWTH_SCALE_SLIDER_INTERVAL = 0.05 GROWTH_SCALE_MAGNITUDE_OFFSET = 10000.0 # Compensate for pop size change VIVARIUM_GROWTH_RATE_MULTIPLIER = 0.0 # Works similarly to modifier multipliers VIVARIUM_BREEDING_RARITY_COMMON = { 89 4 3 1 } VIVARIUM_BREEDING_RARITY_RARE = { 78 14 6 2 } VIVARIUM_BREEDING_RARITY_EPIC = { 56 28 12 4 } VIVARIUM_BREEDING_RARITY_LEGENDARY = { 33 35 24 8 } AUTO_MOD_BASE = 100 LEADER_JOB_BACKGROUND_STRATA_WEIGHTS = { "1" "1" "5" "10" } COUNCIL_RESEARCH_POSITIONS = { "councilor_gestalt_cognitive" "councilor_research" } COUNCIL_NAVAL_POSITIONS = { "councilor_gestalt_legion" "councilor_defense" } COUNCIL_DIPLOMACY_POSITIONS = { "councilor_gestalt_regulatory" "councilor_state" } SHIPYARD_REINFORCE_DISTANCE_MULT = 500 # The higher this is, the bigger impact distance has when distributing reinforcement ship construction. Expected to be >= 1 SHIPYARD_REINFORCE_MAX_JUMPS = 100 # If the closest shipyard can theoretically construct all requested ships; shipyards further away than this (plus the number of jumps between the closest shipyard and the fleet) from the fleet will not be considered for reinforcement construction duties. Expected to be >= 1 REINFORCE_MIA_TIME_MULT = 1.0 # Used to customize the duration of reinforcement times. Expected to be > 0 REINFORCE_ACCEPTABLE_EVASIVE_PATH_MULT = 2.0 # Allowed maximum distance multiplier for evasive reinforcement path, if evasive path is longer than this reinforcement is aborted. Expected to be >= 1 REINFORCE_ACCEPTABLE_EVASIVE_PATH_OVERRIDE_LOWER_THRESHOLD = 12 # Evasive paths under this threshold (measured in entry+exit points) will always be used even if the evasive path is longer than the shortest path multiplied by REINFORCE_ACCEPTABLE_EVASIVE_PATH_MULT. Expected to be > 0. MIA_UNKNOWN_PATH_TIME_COEFFICIENT = 10 # In a case when it is impossible to find a path for MIA the jump time along the line that directly connects the current position with the target one multiplied by this coefficient and curvature coefficient (below) will be used for MIA ETA. MIA_UNKNOWN_PATH_CURVATURE_COEFFICIENT = 2 TRIGGERED_MODIFIER_UPDATE_DELAY = 5 # The game will only update triggered modifiers on each game object every X days LIMITED_EXPLORATION = 1 # If set to 1, only science ships with scientists or military fleets let by an commander can enter unvisited systems RANDOM_START_DISTANCE = 75 # The minimum distance at which empires will spawn from each other in random start SHROUD_FLAG = "breached_shroud" SHROUD_COVENANT_CONFIRMED_FLAG = "has_ever_established_covenant" GUARDIANS_OF_THE_GALAXY_FLAG = "guardians_of_the_galaxy" UNRESTRICTED_WARS_POLICY_FLAG = "unrestricted_wars" GALACTIC_MARKET_FOUNDED_FLAG = "galactic_market_founded" FORGING_OUR_OWN_PATH_FLAG = "forging_our_own_path" FORGING_OUR_OWN_PATH_ACTIVE_ACCORDS_COUNT = 1 DIMENSIONAL_LOCK_ASTRAL_ACTION = "action_dimensional_lock" DIMENSIONAL_LOCK_AVAILABLE_FLAG = "dimensional_lock_available" DIMENSIONAL_LOCK_BUILD_TIME = 180 # Time in days to build a Dimensional Lock DIMENSIONAL_LOCK_EXPIRATION_TIME = 3600 # Time in days before a Dimensional Lock expires DIMENSIONAL_LOCK_PRE_EXPIRATION_ALERT_DAYS = 30 FORMLESS_REWARD_AVAILABLE = "formless_reward_available" FORMLESS_COUNTRY_TYPE = "formless" ASTRAL_ACTION_PREVENT_UNLOCK_NOTIFICATION_DELAY = 30 # Minimum delay between two "Astral Action unlocked" notifications ASTRAL_ACTION_RECENT_UNLOCK_NOTIFICATION_FLAG = "unlocked_astral_action_recently" # Flag used to prevent multiple "Astral Action unlocked" notifications DATE_DISTORTION_COUNT_MIN = 3 # How many date characters will minimum be distorted DATE_DISTORTION_COUNT_MAX = 8 # How many date characters will maximum be distorted GRAVITY_SNARE_CAPTURE_TIME = 20 # How many days does it take for a gravity snare to deploy once it has reached its target GRAVITY_SNARE_CAPTURED_SHIPS_COUNT = 1 GRAVITY_SNARE_MAX_MOVEMENT_TIME = 360 SCAVENGE_DEBRIS_RESOURCE_MULT = 0.1 # The amount of resources of the cost for the shipdesign of the debris that should be given when scavenging it REANIMATE_DEBRIS_COST_MULT = 0.5 # The ratio of the original ship costs DECADENCE_START = 20 # After this many years of being awakened, an awakened empire will experience decadence DECADENCE_CHANCE = 0.5 # Chance of decadence increasing each month (multiplied by total size of empire & subjects) DECADENCE_INCREASE = 2 # How much does decadence increase per time? DECADENCE_MAX = 100 # Max decadence LOGISTICS_FLEET_UPKEEP_DEFAULT = 1.0 LOGISTICS_FLEET_UPKEEP_MIN = 0.0 LOGISTICS_FLEET_UPKEEP_MAX = 5.0 LOGISTICS_FLEET_UPKEEP_INTERVAL = 0.25 LOGISTICS_PLANET_DEFICIT_DEFAULT = 1.0 LOGISTICS_PLANET_DEFICIT_MIN = 0.0 LOGISTICS_PLANET_DEFICIT_MAX = 5.0 LOGISTICS_PLANET_DEFICIT_INTERVAL = 0.25 FTL_MAGNET_DISTANCE = 50 # The distance at which ships will warp in when caught by an FTL snare NUM_DISTRICTS_BASE = 0 # Base num districts NUM_DISTRICTS_FROM_PLANET_SIZE = 1 # Each planet size adds this many districts BASE_AMENITIES_USAGE = 500 BASE_PLANET_BUILDING_SLOTS = 1 MAX_PLANET_BUILDING_SLOTS = 12 BASE_PLANET_BRANCH_OFFICE_BUILDING_SLOTS = 0 MAX_PLANET_BRANCH_OFFICE_BUILDING_SLOTS = 4 BASE_PLANET_SUBJECT_HOLDING_BUILDING_SLOTS = 0 MAX_PLANET_SUBJECT_HOLDING_BUILDING_SLOTS = 4 BASE_SYNAPTIC_LATHE_BUILDING_SLOTS = 1 MAX_SYNAPTIC_LATHE_BUILDING_SLOTS = 7 BRANCH_OFFICE_INCOME_SCALE = 0.5 # Per planet trade value BRANCH_OFFICE_COST_INCREASE_MIN_RANGE = 3 # Above this number of hyperlane jumps away, increase cost for branch offices BRANCH_OFFICE_COST_INCREASE_SCALE = 0.1 # Additional cost per jump REPAIR_BUILDING_COST = 0.5 REPAIR_BUILDING_TIME = 0.5 MIN_PLANET_STABILITY = 0 LOW_PLANET_STABILITY = 25 # Used for alert BASE_PLANET_STABILITY = 50 MAX_PLANET_STABILITY = 100 ADDITIONAL_PLANET_STABILITY_LIMIT = 15 # Used for unbreakable resolve LOW_HAPPINESS_STABILITY_EFFECT = -50 # If all pops have 0% happiness, stability is impacted this much HIGH_HAPPINESS_STABILITY_EFFECT = 30 # If all pops have 100% happiness, stability is impacted this much POP_CRIME = 0.02 # From each pop with happiness (scaled inversely to happiness) MIN_PLANET_CRIME = 0 # Minimum planetary crime HIGH_PLANET_CRIME = 50 # High planet crime MAX_PLANET_CRIME = 100 # Maximum planetary crime CRIMINAL_SYNDICATE_HIGH_CRIME_MULT = 0.75 # Applied to branch office value at max crime CRIMINAL_SYNDICATE_LOW_CRIME_MULT = -0.5 # Applied to branch office value at no crime MIN_PLANET_AMENITIES = 0.25 # Mult of amenities to amenities needs MAX_PLANET_AMENITIES = 2.0 # Mult of amenities to amenities needs MIN_PLANET_RELATIVE_HOUSING = 0.5 # Mult of housing to housing needs MAX_PLANET_RELATIVE_HOUSING = 4.0 # Mult of housing to housing needs DEFAULT_TRAIT_OPTIONS_ON_LEVEL_UP = 2 # Default number of selectable non-upgrade trait options before modifiers available on level up NUM_DESTINY_TRAIT_OPTIONS = 3 # Default number of destiny traits to select from NON_PARAGON_TRAIT_OPTIONS_ON_LEVEL_UP = 4 # Number of non-upgrade trait options available on level up without Galactic Paragons MIN_BLOCKED_DEPOSITS = 1 # Always try to have this many blocker deposits on planets when generating the galaxy MIN_UNBLOCKED_DEPOSITS = 3 # Always try to have this many non-blocker deposits on planets when generating the galaxy DEPOSIT_USED_CATEGORY_WEIGHT = 0.25 # The higher this is, the more randomization will tend to diversify planet deposit types COLONY_DEPOSITS_USE_NULL = no # Should the null deposit be a potential outcome in randomization? COLONY_DEPOSITS_FIXED_BASE = 5 # min number of deposits on colonizable planets COLONY_DEPOSITS_RANDOM_BASE = 2 # this number of random deposit chances are always given to colonizable planets COLONY_DEPOSITS_FIXED_FROM_SIZE = 0.2 # ( planet size * this ) is added to min number of deposits on colonizable planets COLONY_DEPOSITS_RANDOM_FROM_SIZE = 0.2 # ( planet size * this ) is added to random deposit chances on colonizable planets NON_COLONY_DEPOSITS_USE_NULL = yes # Should the null deposit be a potential outcome in randomization? NON_COLONY_DEPOSITS_FIXED_BASE = 1 # min number of deposits on uninhabitable planets NON_COLONY_DEPOSITS_RANDOM_BASE = 0 # this number of random deposit chances are always given to uninhabitable planets NON_COLONY_DEPOSITS_FIXED_FROM_SIZE = 0 # ( planet size * this ) is added to min number of deposits on uninhabitable planets NON_COLONY_DEPOSITS_RANDOM_FROM_SIZE = 0 # ( planet size * this ) is added to random deposit chances on uninhabitable planets PLANETARY_ASCENSION_COST_REDUCTION_MIN = 0.1 # Planetary Ascension should not see its cost reduced by more than 90% QUICK_CLEAR_BLOCKER_GENERAL_MODIFIER_WEIGHT = 1 # How heavily should general max districts modifier be considered for quick-clear blocker QUICK_CLEAR_BLOCKER_SPECIFIC_MODIFIER_WEIGHT = 1 # How heavily should specific-type max districts modifier be considered for quick-clear blocker ALLOW_EMPIRE_DESIGN_CHEATS = no SYNAPTIC_LATHE_EFFICIENCY_SCALE = 0.0005 # Used to calculate the efficency rate of the Synaptic Lathe in the UI. Efficiency = NumPops * SYNAPTIC_LATHE_EFFICIENCY_SCALE (Should match the divider in num_chip_slave scripted trigger to be correct) MEDIUM_SYNAPTIC_LATHE_EFFICIENCY = 0 # Decides the line between showing the efficency as red or yellow. 100% as the line will be 1 in this define HIGH_SYNAPTIC_LATHE_EFFICIENCY = 0 # Decides the line between showing the efficency as yellow or green. 100% as the line will be 1 in this define # Not used for crisis faction, mainly for FEs/AEs SCALED_DIFFICULTY_MAX_GALAXY_SIZE = 1000 # At this galaxy size, the full scaled difficulty modifier is applied SCALED_DIFFICULTY_GALAXY_SIZE_MULT = 0.75 # How much does galaxy size impact difficulty scaling SCALED_DIFFICULTY_HABITABLE_PLANETS_MULT = 0.5 # How much does amount of habitable planets impact difficulty scaling FALLEN_EMPIRE_REPEATABLE_TECHS = 10 RELATIVE_POWER_SUPERIOR = 1.5 RELATIVE_POWER_OVERWHELMING = 2.5 ECON_POWER_COST_DIV = 1 TECH_POWER_COST_DIV = 100 TECH_BASE_POWER = 200 TECH_REPEATABLE_POWER_MULT = 1.0 RELATIVE_POWER_FLEET_MULT = 2.0 # How much is fleet power factored when determining relative power RELATIVE_POWER_ECONOMY_MULT = 3.0 # How much is economic power factored when determining relative power RELATIVE_POWER_TECH_MULT = 1.0 # How much is technological power factored when determining relative power MIN_HABITABILITY = 0.0 # Planet habitability must be at least this value to be able to colonize ABANDONED_EMPIRE_FLAG = "special/abandoned.dds" PRE_COMMUNICATIONS_EMPIRE_FLAG = "special/unknown.dds" FLEET_MIN_TI_CLEAR_RADIUS = 10 # min radius for clearing terra incognita will use the highest of this and sensor range TI_TEXTURE_SIZE = 256 # size of the internal terra incognita texture high resolutions can cause stuttering and will increase memory demand and save file size. TI_CORE_SCALE = 0.9 START_YEAR = 2200 SYSTEM_INNER_RADIUS_OFFSET = 30 SYSTEM_MIN_INNER_RADIUS = 150 SYSTEM_OUTER_RADIUS_OFFSET = 100 SYSTEM_BOTTLENECK_RADIUS = 2 # System will be considered bottleneck if within N systems there are no intersections between all of the directions SHIP_DESIGN_SAME_NAME_FACTOR = 10 # The higher this is, the more likely a design of the same name is to be picked when upgrading to latest design GALACTIC_DEFENSE_FORCE_NAMELIST = "GDF" IMPERIAL_ARMADA_NAMELIST = "IA" JUMP_DRIVE_COOLDOWN = 200 # Days between uses of Jump Drive ASTRAL_JUMP_COOLDOWN = 900 # Days between uses of Astral Jump PHASE_FLEET_COOLDOWN = 360 # Days between uses of Phase Fleet PHASE_FLEET_DURATION = 180 RELEVANT_DISTANCE = 150 # Within this distance we're considered to be diplomatically relevant CONSTRUCTION_SHIP_WORK_SPEED_MULT = 1 # Construction ship construction speed multiplier CONSTRUCTION_SHIP_STATION_OFFSET = 5 # distance to the station that the ship is building SCIENCE_SHIP_SPECIAL_PROJECT_OFFSET = 20 # distance to the special project when collecting data SCIENCE_SHIP_SURVEY_SPEED_MULT = 0.5 # Science ship survey speed multiplier SCIENCE_SHIP_ANOMALY_RESEARCH_DAYS = { # equal level is middle (count of items / 2) 20 #9 levels above anomaly 24 #8 levels above anomaly 30 #7 levels above anomaly 35 #6 levels above anomaly 45 #5 levels above anomaly 55 #4 levels above anomaly 65 #3 levels above anomaly 80 #2 levels above anomaly 100 #1 level above anomaly 120 #0 level equal to anomaly 180 #1 level below anomaly 300 #2 levels below anomaly 540 #3 levels below anomaly 720 #4 levels below anomaly 1080 #5 levels below anomaly 1440 #6 levels below anomaly 2160 #7 levels below anomaly 2880 #8 levels below anomaly 5760 #9 levels below anomaly } HYPERLANE_GEN_REMOVE_PERC = 0.15 # Try to remove 40% of the longest edges HYPERLANE_GEN_REMOVED_MAX_DIST = 20 # Don't remove an edge if you have to travel more than 20 stars to reach the same position HYPERLANE_GEN_REMOVE_TOO_MANY_EDGES = 4 # Remove edges if having 4 or more edges GALAXY_GENERATION_DEFAULT_SHAPE = "spiral_2" GALAXY_GENERATION_RELAX_ITERATIONS = 1 #Higher values means that systems will be more evenly spaced. Too high values will break spiral galaxies GALAXY_GENERATION_CENTER_DUMMY_POINTS = 256 #number of dummy points that occupy empty space when relaxing the system positions PLANET_ORBIT_DISTANCE_MIN_SIZE = 10 PLANET_ORBIT_DISTANCE_SIZE_SCALE = 0.33 # extra orbit distance per planet size over PLANET_ORBIT_DISTANCE_MIN_SIZE PLANET_SHIP_ORBIT_DISTANCE = 10.0 # how far from the planet ships will orbit PLANET_STATION_ORBIT_DISTANCE = 6.0 # how far from the planet orbital stations will be STARBASE_ORBIT_DISTANCE = 15.0 # how far from the star starbases will orbit PLANET_DESTROYER_OFFENSIVE_SHIP_OFFSET = { 0.0 0.0 10.0 } PLANET_ORBIT_STACK_SIZE = 4 PLANET_ORBIT_STACK_DISTANCE = 2.0 BASE_SURVEY_TIME = 30.0 # Base Time In Days for surveying a planet LEADER_POOL_SIZE = 3 # Each leader pool will consist of this many leaders EXTERNAL_LEADER_POOL_SIZE = 1 # Base amount of external leaders in the leader pool LEADER_POOL_REFRESH_TIME = 1800 # Number of days between leader pool refresh LEADER_BASE_SKILL_CAP = 10 LEADER_MAX_SKILL_CAP = 10 LEADER_SKILL_MIN = 1 LEADER_AGE_HEIR_MIN = 18 # Min age of generated heirs in dynastic governments LEADER_AGE_HEIR_MAX = 26 # Max age of generated heirs in dynastic governments LEADER_AGE_MIN = 25 # Min age of generated leaders (uses bell-curve) LEADER_AGE_MAX = 45 # Max age of generated leaders (uses bell-curve) LEADER_SKILL_LEVEL_START = 1 # Skill Level Leaders start with. XP needed { 200 475 825 1250 } LEADER_EXPERIENCE_REQUIREMENT_BASE_VALUE = 100 # Base value when calculating required experience for next skill level LEADER_EXPERIENCE_REQUIREMENT_SCALE_VALUE = 300 # Scale factor when calculating required experience for next skill level LEADER_SUBCLASS_CHOICE_LEVEL = 4 # At what level you can pick your leader subclass LEADER_DESTINY_CHOICE_LEVEL = 8 # At what level you can pick your leader destiny trait MAX_BASIC_TRAITS = 2 # How many basic traits you can have before you only get the option to level them up MAX_VETERAN_TRAITS = 3 # How many veteran traits you can have before you only get the option to level them up LEADER_RULER_EXPERIENCE = 12.0 LEADER_HEIR_EXPERIENCE = 1.0 LEADER_ADMIRAL_FLEET_COMBAT_BASE_EXPERIENCE = 5 # Leader Admiral base experience from fleet combat LEADER_ADMIRAL_FLEET_COMBAT_EXPERIENCE_SCALE = 0.5 # Scale factor used when calculating experience gain for Admiral LEADER_ADMIRAL_FLEET_COMBAT_SHIPS_KILLED_CONVERSION = 0.05 # Scale factor for total number of ships killed after combat when calculating experience gain for Admiral LEADER_ADMIRAL_FLEET_COMBAT_SHIPS_DISENGAGED_CONVERSION = 0.025 # Scale factor for total number of ships that disengaged after combat when calculating experience gain for Admiral LEADER_GENERAL_GROUND_COMBAT_BASE_EXPERIENCE = 100 # Leader General base experience from ground combat LEADER_GENERAL_GROUND_COMBAT_EXPERIENCE_SCALE = 2.5 # Scale factor used when calculating experience gain for General LEADER_GENERAL_GROUND_COMBAT_ARMIES_KILLED_CONVERSION = 0.25 # Scale factor for total number of armies killed after combat when calculating experience gain for General LEADER_SCIENTIST_LEADING_RESEARCH_FIELD_EXPERIENCE = 3.5 LEADER_SCIENTIST_SURVEY_EXPERIENCE = 10 # Experience gained from surveyed planet LEADER_SCIENTIST_SUCCESSFUL_ANOMALY_RESEARCH_EXPERIENCE = 50 # Experience gained from a successful discovery research LEADER_SCIENTIST_COMPLETED_SPECIAL_PROJECT_EXPERIENCE = 100 # Experience gained from completing a special project LEADER_SCIENTIST_COMPLETED_ARCHAEOLOGICAL_SITE_STAGE_EXPERIENCE = 75 # Experience gained from a successful archaeological site roll LEADER_SCIENTIST_ASSIST_RESEARCH = 0.10 # Experience gained from assisting research per day LEADER_SCIENTIST_ASSIST_RESEARCH_MULT = 0.20 # Assist Research modifier-mult per skill level (this value times skill level equals modifier) LEADER_SCIENTIST_ASSIST_CLOAKING_DETECTION_EXPERIENCE = 0.10 # Experience gained from assisting cloaking detection per day LEADER_SCIENTIST_ASSIST_CLOAKING_DETECTION_MULT = 0.50 # Assist Cloaking Detection modifier-mult per skill level (this value times skill level equals modifier) LEADER_SCIENTIST_ACTIVE_RECONNAISSANCE_EXPERIENCE = 0.10 # Experience gained from active reconnaissance per day LEADER_SCIENTIST_ACTIVE_RECONNAISSANCE_LEADER_LEVEL_MULT = 0.00 # Active Reconnaissance modifier-mult per skill level (this value times skill level equals modifier) LEADER_SCIENTIST_ACTIVE_RECONNAISSANCE_COLONY_LEVEL_MULT = 1.00 # Active Reconnaissance modifier-mult per capital building level (this value times capital building level equals modifier) LEADER_ASSIGNED_MONTHLY_EXPERIENCE = 5 # Monthy exp from not being idle (i.e. assigned to planet/sector/fleet/federation/galcom) LEADER_COUNCILOR_MONTHLY_EXPERIENCE = 5 # Monthly exp from being on the council LEADER_LIFESPAN_DEATH_CHANCE_AGE = 80 # Before this age the chance wont increase LEADER_LIFESPAN_DEATH_CHANCE_INC = 0.002 # Increase with these % for each year above CHANCE_AGE LEADER_LIFESPAN_HIGH_DEATH_CHANCE_AGE = 100 # Above this age, death chance increases drastically LEADER_LIFESPAN_HIGH_DEATH_CHANCE_INC = 0.02 # Increase with these % for each year above HIGH_DEATH_CHANCE_AGE MAX_LEADERS_PER_TRADE = 1 # The max amount of leaders you can trade in one trade deal HABITABILITY_IDEAL_PLANET = 1.00 # Habitability of Gaia worlds HABITABILITY_WRONG_PLANET = 0.70 # Below which point we color habitability icons and text yellow HABITABILITY_OPPOSITE_PLANET = 0.40 # Below which point we color habitability icons and text red HABITABILITY_AUTO_MIGRATION = 0.20 # The minimum habitability that will be considered for automatic migration WAR_EXHAUSTION_NAVAL_CAP_ADD = 100 WAR_EXHAUSTION_SHIP_KILLED_MULT = 2.00 # Multiplier of war exhaustion gained from ships WAR_EXHAUSTION_ARMY_KILLED_MULT = 0.25 # Multiplier of war exhaustion gained from land battles (armies) WAR_EXHAUSTION_PLANET_DESTRUCTION_MULT = 5.0 # War exhaustion from planets destroyed WAR_EXHAUSTION_PASSIVE_GAIN_YEARLY = 0.1 # The amount of yearly war exhaustion gained during war while under WAR_EXHAUSTION_PASSIVE_GAIN_CUTOFF WAR_EXHAUSTION_PASSIVE_WAR_SIZE_DIV = 0.1 WAR_EXHAUSTION_PASSIVE_GAIN_CUTOFF = 1.0 # At this amount of war exhaustion (excluding occupation) you stop getting war exhaustion passively over time WAR_EXHAUSTION_FROM_UNITS_CUTOFF = 1.0 # At this amount of war exhaustion (excluding occupation) you stop gaining war exhaustion from lost units WAR_EXHAUSTION_HIGH_THRESHOLD = 1.0 # Apply negative modifier and show alert if war exhaustion >= this ENFORCE_STATUS_QUO_ENABLED = yes # Can status quo be enforced at high WE? ENFORCE_STATUS_QUO_MONTHS = 24 PLANET_HEALTH_MAX = 100 PLANET_HEALTH_REGEN = 0.05 # Each day PLANET_HEALTH_REGEN_DELAY = 60 # Days since being bombarded before repairs can be done at full speed PLANET_HEALTH_PROTECT_POPS = 0.75 # At above this health fraction, pops will not die PLANET_HEALTH_PROTECT_ARMIES = 0.75 # At above this health fraction, defending armies take half damage from bombardment PLANET_HEALTH_INHIBIT_FTL = 0.5 # At above this health fraction, planet FTL inhibitors are functional PLANET_HEALTH_INCREASE_ARMY_DAMAGE = 0.25 # Below this health fraction, defending armies take double damage from bombardment PLANET_HEALTH_ARMY_PROTECTED_DAMAGE_MULT = 0.5 PLANET_HEALTH_ARMY_INCREASED_DAMAGE_MULT = 2.0 PLANET_ARMIES_PROTECT_POPS = 200 # Each army present on a planet will protect this many pops from raids. NEXT_ELECTION_MESSAGE_DAYS = 180 # Days player can choose a new ruler from new election date NEW_RULER_MESSAGE_DAYS = 45 # Days player can see message of new ruler ETHOS_MAX_POINTS = 3 # Number of points which you can spend on ethos. GOVERNMENT_CIVIC_POINTS_BASE = 2 # Base amount of civic points (to "pay" for government civic costs) POP_ETHOS_LOWER_ETHIC_THRESHOLD = 0.5 # If the % of pops following an ethic is <= this relative to its attraction do not diverge away from it POP_ETHOS_UPPER_ETHIC_THRESHOLD = 2.0 # If the % of pops following an ethic is >= this relative to its attraction do not diverge to it POP_MIN_ETHIC_RELATIVE_ATTRACTION = 0.1 # If relative attraction is less than this, do not diverge to this ethic POP_ETHOS_DIVERGENCE_INTERVAL = 360 # Number of days until a Pop has a change to diverge from empire ethos POP_ETHOS_DIVERGENCE_RATE_MULT = 0.05 # Chance of a pop evaluating its ethics every year POP_ETHOS_DIVERGENCE_SIZE_CHANGE_MIN = 0.10 # Minimum % of pop size that will switch POP_ETHOS_DIVERGENCE_SIZE_CHANGE_MAX = 0.20 # Maximum % of pop size that will switch POP_ETHOS_DIVERGENCE_SIZE_SHIFT_SPEED_DIVIDER = 5.0 # How much to divide pop_ethics_shift_speed to increase maximum size % change. POP_ETHOS_DIVERGENCE_MIN_POP_AMOUNT = 100 # Pop groups with amount less or equal this will change fully POP_CHANGE_FACTION_CHANCE = 0.05 # Every month this % of pops from a pop group will change faction (and move to a different pop group) POP_CHANGE_FACTION_MIN_POP_AMOUNT = 100 # Pop groups with amount less or equal this will change fully POP_CURRENT_FACTION_WEIGHT = 1.25 # Weight for current faction is multiplied by this much for pops POP_FACTION_APPROVAL_VERY_LOW = 0.20 # Below this level of approval a faction will have severe happiness penalties POP_FACTION_APPROVAL_LOW = 0.40 # Below this level of approval a faction will have severe happiness penalties POP_FACTION_APPROVAL_BASE = 0.50 # Base faction approval POP_FACTION_APPROVAL_HIGH = 0.60 # Above this level of approval a faction will have some bonus happiness POP_FACTION_APPROVAL_VERY_HIGH = 0.80 # Above this level of approval a faction will have more bonus happiness POP_FACTION_MIN_POTENTIAL_MEMBERS = 500 # If a faction has fewer potential members than this, do not form, and delete if formed POP_FACTION_MIN_POTENTIAL_MEMBERS_FRACTION = 0.03 # If a faction has fewer potential members / total pops in factions (if not 0) than this, do not form, and delete if formed POP_FACTION_CREATION_COOLDOWN = 180 # Wait this many days after creating a faction to create another one (not applied to hidden factions) POP_FACTION_RESOURCE_TABLE_MULT = 1 # Resources granted by factions are multiplied by x x this POLICY_YEARS = 10 # Years a set policy can not be changed for SPECIES_POLICY_YEARS = 10 FEDERATION_LEADER_POWER_THRESHOLD = 1.25 # Must have this much more power than current Federation leader to become new leader FEDERATION_MIN_MEMBERS_TO_KICK = 3 # Can't kick alliance members unless you have at least this many members FEDERATION_EXPERIENCE_BUFFER = 2000 # When a federation reaches max level, it will carry on gaining experience up to this level DEBRIS_BASE_COST = 0 # Base cost of special project for analyzing debris DEBRIS_ANALYZED_AREA_POINTS = 20 # Points * Level given for each component analyzed DEBRIS_ANALYZED_TECH_PROGRESS = 0.10 # Tech progress added when analyzing component that require tech you don't have DEBRIS_DAYS = 1800 # How many days the debris is visible for DEBRIS_RESEARCH_TIME = 90 # How many days it takes to analyze 1 debris. DEBRIS_REANIMATE_RESEARCH_MIN = 180 # Minimum number of days to research fauna reanimation debris DEBRIS_REANIMATE_RESEARCH_MAX = 1080 # Maximum number of days to research fauna reanimation debris DEBRIS_REANIMATE_RESEARCH_FLEET_SIZE_THRESHOLD = 40 # Fleet size threshold above which the debris research time will increase DEBRIS_REANIMATE_RESEARCH_FLEET_SIZE_INCREASE = 180 # Amount of extra research days for every reached fleet size threshold SPECIAL_PROJECT_BASE_PROGRESS = 1 # i in the equation for special project time: x = (k * i) / (i + (y1 - z1) + (y2 - z2)... + (yn - zn)) SCIENCE_SHIP_SPECIAL_PROJECT_DIST = 25.0 # Distance to be able to progress a special project SCIENCE_SHIP_ASTRAL_RIFT_DIST = 5.0 # Distance to be able to enter an Astral Rift PLANET_SENSOR_RANGE = 1 # Base Sensor range for system that contain fully owned planets in it PLANET_HYPERLANE_RANGE = 2 # Base Hyperlane Detection range for system that contain fully owned planets in it EVENT_AUTOSELECT_MONTHS = 9 # After these months an event option will be autoselected TRUCE_YEARS = 10 # Truce last for X years INSULT_COOLDOWN_DAYS = 30 # How often can you send insults? AUTO_DECLINE_DIPLOMACY_DAYS = 180 # Number of days after which diplomatic action will automatically be declined FEDERATION_PERK_EXPERATION_MONTHS = 3 #Month for picked perk to expire if level lost FEDERATION_BASE_ETHICS = 3 # count of unique ethics not penalized for federation cohesion FEDERATION_ENVOY_BASE_EFFECT = 1.0 # envoys base effect on cohesion FEDERATION_MEMBERS_PENALTY = -0.25 # penalty for each federation member FEDERATION_NO_MEMBERS_PENALTY = -100.0 # penalty if the federation has no members FEDERATION_ETHICS_PENALTY = -0.15 # Federation cohesion penalty for extra unique ethics FEDERATION_OPPOSING_ETHICS_PENALTY = -0.5 # Federation cohesion for opposing ethics FEDERATION_BASE_COHESION = 5.0 # base federation cohesion FEDERATION_COHESION_RANGE = 100 # max cohesion range FEDERATION_COHESION_TO_XP = 0.1 # cohesion to xp conversion FEDERATION_MAX_FLEET_SIZE = 0 FEDERATION_JOIN_COHESION_PENALTY = -100 # Cohesion loss every time a new member is added to the federation (after the first two) FEDERATION_LEAVE_COHESION_PENALTY = -100 # Cohesion loss every time a member leaves the federation FEDERATION_SWITCH_COHESION_PENALTY = -50 # Cohesion loss when you switch federation type ENVOY_IMPROVE_RELATION_BASE = 0.25 # Monthly effect on opinion when an envoy is improving relations ENVOY_IMPROVE_RELATION_MAX = 150.0 # Maximum value from using envoys to improve relations ENVOY_HARM_RELATION_BASE = -0.5 # Monthly effect on opinion when an envoy is harming relations ENVOY_HARM_RELATION_MIN = -150.0 # Lowest possible value from using envoys to harm relations ENVOY_RELATION_EFFECT_DECAY = 1.0 # Every month that there is no envoy effecting opinion it moves towards 0 with this/month EMBASSY_IMPROVE_RELATION_MULTIPLIER = 3 # Multiplies ENVOY_IMPROVE_RELATION_BASE if you have established embassies MIN_RIVAL_YEARS = 10 # Years before you can remove an empire as a rival MAX_FRICTION = 100 # Max friction (total) FRICTION_FROM_BORDERING_SYSTEM = 5 # Friction for each bordering system CUSTOM_EMPIRE_SPAWN_CHANCE = 50 # Chance that an empire will be created from an existing template instead of randomly generated (10 = 1% chance) FALLEN_CUSTOM_EMPIRE_SPAWN_CHANCE = 50 # Chance that a fallen empire will be created from an existing template instead of randomly generated (10 = 1% chance), if allowed in that fallen empire script FALLEN_EMPIRE_OUTER_BOUNDARY = 100 # Outer boundary of galaxy that fallen empire generation will try to avoid FALLEN_EMPIRE_INNER_BOUNDARY = 0 # Inner boundary of galaxy that fallen empire generation will try to avoid COUNCIL_AGENDA_BASE_COUNCILOR_MONTHLY_PROGRESS = 10.0 # Monthly progress gained towards advancing an agenda per councilor COUNCIL_AGENDA_COUNCILOR_PROGRESS_PER_SKILL = 0.5 # Monthly progress gained towards advancing an agenda per councilor skill level COUNCIL_AGENDA_COOLDOWN = 10800 # Number of days before you can pick the same agenda after launching it COUNCIL_AGENDA_FINISH_MODIFIER_DURATION = 3600 # Duration of agenda finish modifier. Should match @agenda_finish_modifier_duration COUNCIL_AGENDA_HIGH_LEGITIMACY_MODIIFER = 0.25 # Maximum Agenda speed modifier from high legitimacy (i.e. at 100% Legitimacy) COUNCIL_AGENDA_LOW_LEGITIMACY_MODIIFER = -0.50 # Maximum Agenda speed modifier from low legitimacy (i.e. at 0% Legitimacy). ADVANCED_EMPIRE_EXTRA_WARSHIPS_MIN = 3 # How many extra war ships do advanced empires start with? ADVANCED_EMPIRE_EXTRA_WARSHIPS_MAX = 7 ADVANCED_EMPIRE_MIN_EXTRA_SYSTEMS = 2 # Min extra systems an advanced empire can start with ADVANCED_EMPIRE_MAX_EXTRA_SYSTEMS = 5 # Max extra systems an advanced empire can start with ADVANCED_EMPIRE_COLONY_CHANCE = 75 # Chance that a colonizable planet inside advanced empire's borders is colonized ADVANCED_EMPIRE_ALWAYS_COLONIZE_HABITABILITY = 0.70 # If habitability is at least this, always colonize planet in advanced empire's borders MATURE_GALAXY_YEARS = 100 MATURE_GALAXY_COLONY_DISTANCE_FIXED = 4 # max dist at which planets can be taken (fixed) MATURE_GALAXY_COLONY_DISTANCE_RANDOM = 2 # max dist at which planets can be taken (random) MATURE_GALAXY_COLONY_DISTANCE_SURVEYED = 6 # additional dist outside borders that has been surveyed MATURE_GALAXY_TECH_TIER = 3 MATURE_GALAXY_NAVY_SIZE = 1.0 # of naval capacity MATURE_GALAXY_EXTRA_MINERALS = 10000 MATURE_GALAXY_EXTRA_ENERGY = 5000 MATURE_GALAXY_EXTRA_INFLUENCE = 500 MATURE_GALAXY_EXTRA_UNITY = 2500 # per planet MATURE_GALAXY_MAX_NUM_STARBASES = 4 MATURE_GALAXY_STARBASE_LEVEL = "starbase_level_starhold" MATURE_GALAXY_NUM_ARMIES = 10 MATURE_GALAXY_CAPITAL = "building_capital_2" MATURE_GALAXY_COLONY_CAPITAL = "building_capital_2" MATURE_GALAXY_COLONY_POWER_PLANT = "building_power_plant_3" MATURE_GALAXY_COLONY_FARM = "building_hydroponics_farm_3" MATURE_GALAXY_COLONY_MINE = "building_mining_network_3" MATURE_GALAXY_COLONY_LAB = "building_basic_science_lab_1" MATURE_GALAXY_ARMY = "assault_army" MATURE_GALAXY_HOME_POPS = 50 MATURE_GALAXY_HOME_BUILDINGS = 10 ADVANCED_GALAXY_YEARS = 200 ADVANCED_GALAXY_COLONY_DISTANCE_FIXED = 5 # max dist at which planets can be taken (fixed) ADVANCED_GALAXY_COLONY_DISTANCE_RANDOM = 5 # max dist at which planets can be taken (random) ADVANCED_GALAXY_COLONY_DISTANCE_SURVEYED = 10 # additional dist outside borders that has been surveyed ADVANCED_GALAXY_TECH_TIER = 4 ADVANCED_GALAXY_NAVY_SIZE = 1.0 # of naval capacity ADVANCED_GALAXY_EXTRA_MINERALS = 20000 ADVANCED_GALAXY_EXTRA_ENERGY = 10000 ADVANCED_GALAXY_EXTRA_INFLUENCE = 1000 ADVANCED_GALAXY_EXTRA_UNITY = 5000 # per planet ADVANCED_GALAXY_MAX_NUM_STARBASES = 6 ADVANCED_GALAXY_STARBASE_LEVEL = "starbase_level_starfortress" ADVANCED_GALAXY_NUM_ARMIES = 20 ADVANCED_GALAXY_CAPITAL = "building_capital_3" ADVANCED_GALAXY_COLONY_CAPITAL = "building_capital_2" ADVANCED_GALAXY_COLONY_POWER_PLANT = "building_power_plant_4" ADVANCED_GALAXY_COLONY_FARM = "building_hydroponics_farm_4" ADVANCED_GALAXY_COLONY_MINE = "building_mining_network_4" ADVANCED_GALAXY_COLONY_LAB = "building_basic_science_lab_1" ADVANCED_GALAXY_ARMY = "assault_army" ADVANCED_GALAXY_HOME_POPS = 150 ADVANCED_GALAXY_HOME_BUILDINGS = 25 # Planet size factor, applies to units and buildings ORBITAL_BOMBARDMENT_PLANET_SIZE_FACTOR = 0.08 # Planets take damage / ( 1 + planet size * ORBITAL_BOMBARDMENT_PLANET_SIZE_FACTOR ), bigger planets take less dmg # Bombardment damage to planets from ships # Higher number means more total bombardment damage ORBITAL_BOMBARDMENT_FLEET_BASE_SIZE = 100 # Over this amount of fleet cap bombarding we will start getting penalties to efficiency # Smaller number means we lose efficiency faster going above the ORBITAL_BOMBARDMENT_FLEET_BASE_SIZE ORBITAL_BOMBARDMENT_OVER_FLEET_FACTOR = 0.9 # Each time we surpass ORBITAL_BOMBARDMENT_FLEET_BASE_SIZE we retain this factor of efficiency ORBITAL_BOMBARDMENT_COLONY_DMG_SCALE = 0.01 ORBITAL_BOMBARDMENT_PLANET_DMG_SCALE = 0.002 ORBITAL_BOMBARDMENT_ARMY_DMG_SCALE = 0.10 ORBITAL_BOMBARDMENT_ASSAULT_ARMY_DAMAGE_MULT = 2.00 # Assault armies take this much more damage from orbital bombardment ORBITAL_BOMBARDMENT_KILL_POP_CHANCE = 0.2 # Multiplied by stance & damage dealt ORBITAL_BOMBARDMENT_KILL_POP_COOLDOWN = 10 # Min days between killing pops from bombardment # Collateral damage to planet from armies COLLATERAL_DAMAGE_CHANCE = 0.20 # Chance that an army causes collateral damage while dealing damage to an enemy army COLLATERAL_DAMAGE_BASE_SCALE = 0.02 # Base amount of planetary damage inflicted from collateral damage COLLATERAL_DAMAGE_DEFENDER_MULT = 0.25 # Collateral damage from defending units is multiplied by this COLLATERAL_DAMAGE_MAX_PER_DAY = 0.50 # Per combat side COLLATERAL_DAMAGE_KILL_POP_CHANCE = 0.1 # Multiplied by damage dealt EXTRA_POP_KILL_MULTIPLIER_CHANCE = 0.02 # Increased chance that pops die based on number of pops on the planet COLLATERAL_DAMAGE_DESTROY_BUILDING_CHANCE = 0.002 # Chance that buildings are destroyed from devastation COLLATERAL_DAMAGE_DESTROY_DISTRICT_CHANCE = 0.002 # Chance that districts are destroyed from devastation COLLATERAL_DAMAGE_GROUND_COMBAT_SAFE_POPS = 300 # Ground Combat cannot kill the last few pops of a colony through collateral damage STATION_SELF_REPAIR_TIMER_DAYS = 10 # Number of days after taking damage before a station will start self-repairing STARBASE_SELF_REPAIR_TIMER_DAYS = 30 # Number of days after taking damage before a starbase will start self-repairing STARBASE_DISABLED_HEALTH_PERCENTAGE = 0 # Percentage of max health when a starbase that can be disabled will be disabled. STARBASE_ENABLED_HEALTH_PERCENTAGE = 0.05 # Percentage of max health when a starbase that can be disabled will be enabled. STARBASE_AUTO_CONTROL_DISTANCE = 80 # Distance at which a fleet can seize control of a disabled starbase INFLUENCE_ADD_UPLIFTED_SPECIES = 50 # Influence gain when uplifting species PLANET_COMBAT_WIDTH_BASE = 5 # Maximum number of troops that can fight at the same time PLANET_COMBAT_WIDTH_FROM_SIZE = 0.2 # Extra combat width per tile PLANET_COMBAT_WIDTH_MINIMUM = 2 # Minimum combat width GENERAL_DEATH_CHANCE = 0.02 # Chance that general dies when an army under command is destroyed (scaled to number of armies) ANOMALY_SPAWN_CHANCE = 0.050 # Percent chance that a planet gets a discovery when surveyed ANOMALY_SPAWN_CHANCE_INCREMENT = 0.0025 # Percentage increase towards next chance when failing GOVERNMENT_COOLDOWN_YEARS = 20 # Cooldown years after changing government before you can change it again GOVERNMENT_CHANGE_EMPIRE_SIZE_MULT = 10.0 # It will cost (Empire Size) * X Unity to change Government Type EMPIRE_SIZE_BASE = 100 # No modifiers at this empire size or below EMPIRE_SIZE_FLOOR = 50 # Empire Size is never treated as under this EMPIRE_SIZE_FROM_DISTRICTS = 0.5 # Per district EMPIRE_SIZE_FROM_SYSTEMS = 1 # Per system EMPIRE_SIZE_FROM_COLONIES = 20 # Per planet EMPIRE_SIZE_FROM_BRANCH_OFFICES = 5 # Per branch office EMPIRE_SIZE_FROM_POPS = 0.005 # Per pop DIPLOMACY_WEIGHT_BASE = 0.0 # Base diplomacy weight for all empires DIPLOMACY_WEIGHT_STANCE_FACTOR = 0 # Factors weight from Diplo Stance before it is added to diplo weight DIPLOMACY_WEIGHT_SPRAWL_FACTOR = 0 # Factors Empire Sprawl before it is added to diplo weight DIPLOMACY_WEIGHT_NAVAL_FACTOR = 0.025 # Factors Naval Power before it is added to diplo weight DIPLOMACY_WEIGHT_GESTALT_WEIGHT = 0.01 # Gestalts gets a flat base value DIPLOMACY_WEIGHT_POP_BASE = 0.01 # Base diplomacy weight for each pop DIPLOMACY_WEIGHT_POP_HAPPINESS = 2.0 # as in formula: DIPLOMACY_WEIGHT_POP_BASE + (DIPLOMACY_WEIGHT_POP_HAPPINESS * Happiness) DIPLOMACY_WEIGHT_ECONOMY_FACTOR = 0.15 # Factors Economic Power before it is added to diplo weight DIPLOMACY_WEIGHT_TECHNOLOGY_FACTOR = 0.1 # Factors Technology Level before it is added to diplo weight DIPLOMACY_WEIGHT_NO_LEADER_PENALTY = -0.25 # Penalty to diplomatic weight for not having the relevant council position EMPIRE_SIZE_TECH_COST_PENALTY = 0.002 # Per empire size above base EMPIRE_SIZE_TRADITION_COST_PENALTY = 0.002 # Per empire size above base EMPIRE_SIZE_COUNCIL_AGENDA_COST_PENALTY = 0.001 # Per empire size above base EMPIRE_SIZE_ARMIES_PENALTY = 0.001 # Per empire size above base NUM_TECH_ALTERNATIVES = 3 TECH_WEIGHT_BASE = 10 TECH_WEIGHT_POTENTIAL_ADD = 0 TECH_RESEARCH_NO_LEADER_PENALTY = -0.25 TECH_COST_MULT_FALLEN_EMPIRE = 2 # Awakened Empires pay this much more to research techs TECH_WEIGHT_PREVIOUS_OPTION = 0.5 # If a tech was one of the alternatives last time its weight will be multiplied with TECH_WEIGHT_PREVIOUS_OPTION ## tradition cost = ( base_cost + ( cost_tradition * num_traditions )^traditions_exponential ) * ( 1 + cost_planet*num_planets + cost_system*num_systems ) TRADITION_COST_TRADITION = 8 # change this value if you want to increase all costs TRADITION_COST_TRADITION_EXP = 1.800 # change this value if you want to increase costs at the end TRADITION_COST_MULT_TRADITION_GROUP = 0.00 # each adopted group adds +X% to total cost KEYBOARD_DOUBLE_CLICK_TIME = 0.5 # Seconds listening to control group double clicks. MIN_TRADE_DEAL_LENGTH_YEARS = 10 # Minimum length of a trade deal in years. MAX_TRADE_DEAL_LENGTH_YEARS = 30 # Maximum length of a trade deal in years. MISSION_PROGRESS_MAX = 1 # When is a mission finished? NEW_HEIR_CHANCE = 0.05 # Chance to get a new heir each day. Range is 0 to 1 MIN_ELECTION_CANDIDATES = 4 # If we have fewer factions than this, add additional independent candidates ELECTION_BASE_SUPPORT = 0.05 # Election candidates always have at least this much support ELECTION_SUPPORT_LEADER_EFFECT = 5 # added score when you support a candiate in election ELECTION_INDEPENDENT_SUPPORT = 0.20 # Independent candidates get this much extra support ELECTION_SKILL_EFFECT = 0.10 # Candidates get this much extra support per skill level (multiplicative) AI_FULL_RIGHTS_POLICY_FLAG = "ai_full_rights" BORDERS_OPEN_POLICY_FLAG = "border_policy_open" SET_DEFENDER_WAR_GOAL_TIME_LIMIT = 360 # Days defender have to set war goal after war started. OCCUPATION_BASE_VALUE = 5 # Base value of occupied system, used for calculating relative occupation score of empire OCCUPATION_PLANET_VALUE = 10 # Per planet in system OCCUPATION_POP_VALUE = 0.001 # Per pop in system OCCUPATION_STARBASE_VALUE = 10 # If starbase is upgraded SYSTEM_LOST_CLAIM_STRENGTH = 10 # Strength of a claim given to an empire when their system is annexed RESOURCE_CLUSTER_COUNT = 6 # Number of resource clusters containing special resources RESEARCH_AGREEMENT_SPEED_MULT = 0.25 # Research speed increased by this for trade research agreement deal MOVE_CAPITAL_INFLUENCE_COST = 250 # Influence cost to move the empire capital to another planet. MOVE_CAPITAL_COOLDOWN_YEARS = 10 # Cooldown in years for moving capital. INTEGRATE_SUBJECT_MIN_DAYS = 3600 # Amount of days the subject has been a subject before we can integrate it SUBJECTS_INTEGRATION_CAP = 1 # Amount of integrations you're allowed to have at the same time SUBJECT_INTEGRATION_BASE_PROGRESS = 5 # Cost per month for subject integration SUBJECT_INTEGRATION_COST_BASE = 50 # Base cost for integration SUBJECT_INTEGRATION_COST_PER_POP = 0.01 # Integration cost per pop SUBJECT_INTEGRATION_COST_PER_PLANET = 10 # Integration cost per planet # These are used to determine the initial subject loyalty based on relation and relative military power SUBJECT_LOYALTY_RELATION_FACTOR = 50 # Multiplied with relation (0-4) for initial loyalty SUBJECT_LOYALTY_RELATION_SUBTRACT = 150 # Subtracted to balance out the relation loyalty weight SUBJECT_LOYALTY_RELATIVE_POWER_FACTOR = 25 # Multiplied with relative military power (0-4) for initial loyalty SUBJECT_LOYALTY_RELATIVE_POWER_SUBTRACT = 100 # Subtracted to balance out the relative military power loyalty weight SUBJECT_MONTHLY_LOYALTY_INTEGRATION = -5 # Each month the subject is being integrated, its loyalty is modified by this amount SUBJECT_MONTHLY_LOYALTY_OPINION_MULTIPLIER = 0.01 # Each month, the subject's opinion of its overlord is multiplied by this amount & added to its loyalty SUBJECT_LOYALTY_MAX = 100 # Max value of loyalty SUBJECT_LOYALTY_MIN = -100 # Min value of loyalty SUBJECT_XP_LOYALTY_MULTIPLIER = 0.1 # The subject specialist XP will increase by this multiplied with Loyalty every month SUBJECT_TYPE_CONVERSION_MATCHES_PREFERRED_ETHIC_SPEED_FACTOR = 1.42 # How much faster/slower the specialization conversion will go if the subject has the type's preferred ethic SUBJECT_TYPE_CONVERSION_MATCHES_FANATIC_PREFERRED_ETHIC_SPEED_FACTOR = 2 # How much faster/slower the conversion will go if the subject has the fanatic variant of the type's preferred ethic SUBJECT_TYPE_CONVERSION_NO_PREFERRED_ETHIC_SPEED_FACTOR = 1 # How much faster/slower the conversion will go if the subject does not have the type's preferred ethic SUBJECT_TYPE_CONVERSION_OPPOSITE_ETHIC_SPEED_FACTOR = 0.67 # How much faster/slower the conversion will go if the subject has the opposite ethic to the type's preferred ethic SUBJECT_TYPE_CONVERSION_FANATIC_OPPOSITE_ETHIC_SPEED_FACTOR = 0.5 # How much faster/slower the conversion will go if the subject has the fanatic variant of the opposite ethic to the type's preferred ethic SUBJECT_TYPE_CONVERSION_SPRAWL_FACTOR = 5 # Conversion speed is affected by this÷EmpireSprawl AGREEMENT_RESOURCE_SUBSIDIES_MIN = -0.75 # Minimum percentage value for Resource Subsidies term AGREEMENT_RESOURCE_SUBSIDIES_MAX = -0.75 # Maximum percentage value for Resource Subsidies term AGREEMENT_RESOURCE_SUBSIDIES_INCREMENT = 0.05 # The increments between values for Resource Subsidies term AGREEMENT_INTANGIBLE_TITHE_LINEAR_FACTOR = 1.0 # For small tithes, each fraction of intangible (e.g. science) tithe yields this much (negative) impact AGREEMENT_INTANGIBLE_TITHE_LARGE = 0.5 # A "large" tithe, for which impact reaches the below value AGREEMENT_INTANGIBLE_TITHE_LARGE_VALUE = 1.0 # (Negative) impact reached for the above "large" tithe AGREEMENT_INTANGIBLE_SUBSIDY_LINEAR_FACTOR = 0.5 # For small subsidies, each fraction of intangible (e.g. science) subsidy yields this much impact AGREEMENT_INTANGIBLE_SUBSIDY_LARGE = 0.5 # A "large" subsidy, for which impact reaches the below value AGREEMENT_INTANGIBLE_SUBSIDY_LARGE_VALUE = 0.5 # Impact reached for the above "large" subsidy AGREEMENT_INTANGIBLE_IMPACT_LOYALTY_WEIGHT = 100 # Translates change in intangible impact into loyalty change AGREEMENT_ECONOMIC_IMPACT_LOYALTY_WEIGHT = 100 # Translates change in economic impact (roughly -1 - +1) into loyalty change COMMAND_LIMIT_MAX = 1000 # Max value of Command Limit COMMAND_LIMIT_BASE = 50 # Base value of Command Limit NAVAL_CAPACITY_MAX = 9999 # Max value of Naval Capacity NAVAL_CAPACITY_BASE = 50 # Base value of Naval Capacity NAVAL_CAPACITY_POP_MULT = 0 # Mult value of Naval Capacity for each Pop NAVAL_CAPACITY_NO_LEADER_PENALTY = -0.25 LEADER_CAPACITY_XP_SCALE = 0.85 # Leader XP gets multiplied by XP_Scale ^ Number of Leaders over cap. Never hits zero. LEADER_TRAIT_SELECTION_LEVELS = { 1 2 3 4 5 6 7 8 9 10 } NAVAL_CAPACITY_BASE_GALACTIC_COMMUNITY = 1000 # Base value of Naval Capacity for the Galactic Defense Force/Imperial Armada SHIP_SIZE_LIMITS_GALACTIC_COMMUNITY = "default" # Entry in "00_ownership_limits.txt" defining GalCom's maximum ship counts STARBASE_CAPACITY_MAX = 999 # Max value of Starbase Capacity STARBASE_CAPACITY_BASE = 3 # Base value of Starbase Capacity STARBASE_CAPACITY_SYSTEM_MULT = 0.10 # Mult value of Starbase Capacity for each owned system STARBASE_CAPACITY_POP_MULT = 0.00 # Mult value of Starbase Capacity for each Pop COUNTRY_ENCLAVE_CAPACITY_BASE = 0 # Base value of allowed number of enclaves country can spawn COUNTRY_ENCLAVE_CAPACITY_MAX = 10 # Maximum value of allowed number of enclaves country can spawn COUNTRY_USES_BIOMASS_FLAG = "uses_biomass" # Country flag that determines whether or not the country uses biomass and triggers the monthly on_action STARBASE_BASE_LEVEL = "starbase_level_outpost" # The base starbase level UPGRADED_STARBASE_BASE_LEVEL = "starbase_level_starport" # The first starbase level you upgrade to GRAVITY_SNARE_SHIP_SIZE = "gravity_snare" # TECH_TO_SURVEY_OWNED = "tech_galactic_ambitions" ASCENSION_PERKS_SLOTS = 8 # Number of ascension perk slots # Planetary Ascension Tier cap formula: # Max( ( Unlocked Ascension Perks Slots - 2 ), PLANET_ASCENSION_MIN ) + # ( ( Unlocked Ascension Perks Slots == ASCENSION_PERKS_SLOTS ? ) PLANET_ASCENSION_COMPLETION_BONUS : 0 ) PLANET_ASCENSION_STARTING_POINT = 3 # Number of ascension perks unlocked slots required for Planetary Ascension PLANET_ASCENSION_MIN = 0 # Minimum Planetary Ascension tier PLANET_ASCENSION_COMPLETION_BONUS = 4 # Flat bonus on Planetary Ascension Tier cap when all the slots are unlocked PLANET_ASCENSION_HARD_CAP = 10 # Based of current formula, maximum planetary ascension possible # Planetary Ascension cost formula: ( Empire Sprawl * PLANET_ASCENSION_SPRAWL_SCALE) * ( 1 + ( Empire Wide Sum of Ascension Tiers * PLANET_ASCENSION_SUM_SCALE ) PLANET_ASCENSION_SPRAWL_SCALE = 10.0 # Scaling factor for Planetary Ascension cost based on the empire Sprawl PLANET_ASCENSION_SUM_SCALE = 0.6 # Scaling factor for Planetary Ascension cost based on the empire-wide sum of Ascension Tiers PLANET_ASCENSION_SPRAWL_MODIFIER = -0.05 # Reduction of planet sprawl per level of ascension # Designation modifier formula: MOD * ( 1 + ( Ascension Tier * PLANET_ASCENSION_MODIFIER_SCALE ) PLANET_ASCENSION_MODIFIER_SCALE = 0.10 # Scaling factor of the designation benefits, multiple instances will sum (first will be 1.25, then 1.50...) DEFAULT_HOME_PLANETS = { "pc_desert" "pc_ocean" "pc_arctic" "pc_arid" "pc_continental" "pc_alpine" "pc_savannah" "pc_tropical" "pc_tundra" } DEFAULT_CLIMATE_LABELS = { "TYPE_HEADER_01" "TYPE_HEADER_02" "TYPE_HEADER_03" } EVADE_HOSTILE_CANCEL_ORDERS_THRESHOLD_DAYS = 180 # When evading hostiles ships will cancel orders that would take more than X days to reach. EDICT_MAX_RESOURCE_COST = 1000000 EXPERIMENTAL_SUBSPACE_NAVIGATION_TIME_MULT = 3.0 # value * hyperlane distance to system defines the MIA time (travel time in days) for a Science Ship MIA Jump MIA_TIME_MULT = 1.0 # Used to customize the duration of MIA times. Expected to be > 0 MIA_FLEET_MODIFIER_MULT_LOWER_TRESHOLD = 0.5 SECTOR_RESOURCE_TRANSFER_AMOUNT_LARGE = 1000 SECTOR_RESOURCE_TRANSFER_AMOUNT = 100 MACHINE_EMPIRE_EXCLUSION_TRAIT = "trait_mechanical" # pops with this trait will not be built by machine empires ARCHAEOLOGICAL_SITE_DICE_ROLL_MIN = 1 ARCHAEOLOGICAL_SITE_DICE_ROLL_MAX = 10 ARCHAEOLOGICAL_SITE_DISCOVERY_SCORE = 14 ARCHAEOLOGICAL_SITE_DISCOVERY_DAYS = 90 ESPIONAGE_OPERATION_BASE_ROLL_FREQUENCY = 30.0 # Roll frequency in days ESPIONAGE_OPERATION_SUCCESS_SCORE = 14.0 ESPIONAGE_OPERATION_DICE_ROLL_MIN = 1 ESPIONAGE_OPERATION_DICE_ROLL_MAX = 10 RELIC_VIEW_SLOTS_PER_ROW = 3 RELIC_VIEW_SLOTS_PER_ROW_WIDE = 4 RELIC_VIEW_DEFAULT_ROW_COUNT = 2 MEGASTRUCTURE_BUILD_CAP_BASE = 1.0 BASE_ENVOYS_REGULAR_EMPIRE = 2 # The starting number of envoys for regular empires RESOLUTION_VOTE_TIMER = 1440 # number of days a resolution will be on the senate floor before being passed/failed RESOLUTION_VOTE_PREMATURE_TIMER = 720 # number of days until the custodian/emperor can prematurely end the senate session SENATE_RECESS_TIMER = 720 # number of days until the next proposed resolution will be put on the floor after the current vote COUNCIL_DIPLOMACY_WEIGHT_MODIFIER = 1.5 # how much a countries diplomatic weight will be increased when voting if on the council CHANGE_VOTE_COOLDOWN = 120 # number of days after voting in a resolution before you can change your vote DEFAULT_COUNCIL_SIZE = 0 # default number of community council members, will be modified DEFAULT_COUNCIL_VETO = no # can the council veto resolutions by default? DEFAULT_COUNCIL_EMERGENCY_MEASURES = yes # can the council by default propose emergency measures? CATEGORY_VOTE_COOLDOWN = 2520 # time before another resolution in a given category can proposed again TYPE_VOTE_COOLDOWN = 5040 # time before a referendum of a given type can be proposed again VETO_COOLDOWN = 1800 # time before a country can enact another veto EMERGENCY_MEASURES_COOLDOWN = 7200 # time before a country can propose another emergency measure DEFAULT_VETO_COST_MULT = 3 # proposed resolution cost is multiplied by this to determine the cost of vetoing that resolution JOIN_COMMUNITY_INFLUENCE_COST = 100 # cost to join the community manually after its formation LEAVE_COMMUNITY_MIN_INFLUENCE_COST = 100 # minimum cost to leave the galactic community LEAVE_COMMUNITY_MAX_INFLUENCE_COST = 500 # maximum cost to leave the galactic community LEAVE_COMMUNITY_INFLUENCE_COST_FACTOR = 0.5 # factor determining actual cost of leaving the community, this is multiplied with empire sprawl LEFT_COMMUNITY_MODIFIER_TIMER = 7200 # how many days the left_community_modifier will affect the leaving country COUNCIL_ELECTION_TIMER = 7200 # time between galactic council elections COUNCIL_ELECTION_SOON_CUTOFF = 180 # when there is less than this many days left until the next council we show an alert COMMUNITY_FREEZE_RESOLUTION_MONTHS = 48 # The time period a resolution is frozen by the Custodian/Emperor CUSTODIAN_TERM_LIMIT_DAYS = 10800 # The time period that a Custodian keeps their position CUSTODIAN_TERM_LIMIT_EXPIRATION_MESSAGE_DAYS = 1800 # The amount of days left on a term limit when a notification should be sent to the custodian about their term expiring ENVOY_STRENGTHEN_IMPERIAL_AUTHORITY_RELATION_GROWTH = 2 # Monthly opinion growth when having envoys assigned that strengthen the imperial authority ENVOY_STRENGTHEN_IMPERIAL_AUTHORITY_RELATION_DECAY = -1 # Monthly opinion decay when having envoys assigned that strengthen the imperial authority ENVOY_STRENGTHEN_IMPERIAL_AUTHORITY_RELATION_MAX = 200 # The highest the above growth can get to ENVOY_UNDERMINE_IMPERIAL_AUTHORITY_RELATION_GROWTH = -2 # Monthly opinion "growth" when having envoys assigned that undermine the imperial authority ENVOY_UNDERMINE_IMPERIAL_AUTHORITY_RELATION_DECAY = 1 # Monthly opinion "decay" when having envoys assigned that undermine the imperial authority ENVOY_UNDERMINE_IMPERIAL_AUTHORITY_RELATION_MIN = -200 # The "lowest" the above growth can get to FEDERATION_LOW_COHESION_CUTOFF = 0.1 # when there is less than this ratio left of cohesion with negative cohesion growth we show an alert OPINION_MAX = 1500 # Upper limit for opinion value OPINION_EXCELLENT = 750 # Min value to be considered level excellent OPINION_GOOD = 300 # Min value to be considered level good OPINION_POOR = -300 # Max value to be considered level poor OPINION_TERRIBLE = -750 # Max value to be considered level terrible OPINION_MIN = -1500 # Lower limit for opinion value FAVOR_CAP = 10 # Max amount of favors from same empire that can be stored FAVORS_PER_RESOLUTION_CAP = 100 # Max amount of favors that can be used for a resolution BORROWED_DIPLO_WEIGHT_FAVOR_MULT = 0.1 # Diplo weight mult per favor DECLINED_TO_LEAVE_FEDERATION_CASUS_BELLI_TYPE = "cb_secession" # Casus belli to use on the federation leader if a request to leave the federation was declined FEDERATION_VOTE_RESUBMIT_DELAY = 180 # Number of days that must pass before you can propose to vote for a given law again DEFAULT_ORIGIN = "origin_default" SPAWN_SYSTEM_BUFFER_DISTANCE = 10.0 # Systems created via spawn_system will not spawn within this distance to another system unless there really is no space for them to not do so SPAWN_SYSTEM_ATTEMPTS = 15 # Number of times the game will try and find a location for a system created via spawn_system before it defaults to the center of the galaxy. Note: The last ALLOW_UNACCEPTABLE_SYSTEM_THRESHOLD tries ignore SPAWN_SYSTEM_BUFFER_DISTANCE ALLOW_UNACCEPTABLE_SYSTEM_THRESHOLD = 2 # Number of last attempts that allow non-acceptable systems (by ignoring SPAWN_SYSTEM_BUFFER_DISTANCE) # Controls how strongly the clamp is applied when the position is outside the limits, using function: x / (1 + factor * x); # Higher values result in a sharper clamp (less allowed overflow). # The smooth clamp approaches a maximum value of 1 / OUTSIDE_LIMITS_CLAMP_FACTOR. # eg: with a clamp factor of 0.01, overflow reduction will asymptotically cap at 100, and an overflow of 100 will be reduced to about 50 (half)) OUTSIDE_LIMITS_CLAMP_FACTOR = 0.01 # Non-negative values are required EDICT_CAPACITY_BASE = 1 # Max number of active edicts before penalties kick in EDICT_UNITY_AMBITION_COST_MULT = 0.001 # Active Unity Ambitions cost (Next Tradition * this) Unity per month INTEL_CAP = 100 # Maximum Intel for countries INTEL_YEARLY_DECREASE = 1.0 # Amount of Intel lost every year to reach the target Intel INTEL_YEARLY_INCREASE = 12.0 # Amount of Intel gained every year to reach the target Intel INTEL_FROM_TRUST_MULTIPLIER = 0.5 # Value to be multiplied to the trust to calculate the minimum intel due to trust INTEL_FROM_COMMUNICATIONS = 10.0 # Minimum Intel, after establishing communications INTEL_FROM_NON_AGGRESSION_PACT = 20.0 # Minimum Intel, if there's a non aggression pact INTEL_FROM_GALACTIC_COMMUNITY = 30.0 # Minimum Intel, if both empires are part of the Galactic Community INTEL_FROM_GALACTIC_CUSTODIAN = 45.0 # Minimum Intel, if we are galactic custodian and they are a galactic community member INTEL_FROM_GALACTIC_EMPEROR = 65.0 # Minimum Intel, if we are galactic emperor and they are an imperium member INTEL_FROM_GALACTIC_EMPEROR_HEIGHTENED_SECURITY = 80.0 # Minimum Intel, if we are galactic emperor and they are an imperium member and the imperial_security_directorate resolution is passed INTEL_FROM_COMMERCIAL_PACT = 20.0 # Minimum Intel, if there's a commercial pact INTEL_FROM_MIGRATION_PACT = 30.0 # Minimum Intel, if there's a migration treaty INTEL_FROM_GUARANTEE = 20.0 # Minimum Intel, if one country is guaranteeing the other country INTEL_FROM_DEFENSIVE_PACT = 40.0 # Minimum Intel, if there's a defensive pact INTEL_FROM_FEDERATION_ASSOCIATION = 40.0 # Minimum Intel, if the country has federation association status INTEL_FROM_RESEARCH_AGREEMENT = 30.0 # Minimum Intel, if there's a research agreement INTEL_FROM_FEDERATION_CENTRALIZATION = 10.0 # Additive modifier to the base federation Intel. Multiplied by centralization level INTEL_FROM_EMBASSY = 20.0 # Additive modifier to the minimum Intel. INTEL_FROM_BEING_SUBJECT = 30.0 # Minimum Intel, if you're their subject INTEL_FROM_BEING_OVERLORD = 40.0 # Minimum Intel, if you're their overlord INTEL_FROM_SECRET_FEALTY = 20.0 # Additive modifier if you have pledged secret fealty. DETECTION_INTEL_DECAY_MONTHS = 120 # Length of time to retain memory of having been detected in a system FIRST_CONTACT_DICE_ROLL_MIN = 1 FIRST_CONTACT_DICE_ROLL_MAX = 10 FIRST_CONTACT_LOWER_INSIGHT_SCORE = 0 # score for any insights to be granted FIRST_CONTACT_HIGHER_INSIGHT_SCORE = 5 # score for more insights to be granted FIRST_CONTACT_LOWER_INSIGHT_REWARD = 1 # insights granted for FIRST_CONTACT_LOWER_INSIGHT_SCORE FIRST_CONTACT_HIGHER_INSIGHT_REWARD = 2 # insights granted for FIRST_CONTACT_HIGHER_INSIGHT_SCORE FIRST_CONTACT_DISCOVERY_SCORE = 10 # score for completing the stage FIRST_CONTACT_DISCOVERY_DAYS = 80 # 80 days for 1 roll FIRST_CONTACT_DISCOVERY_DAYS_AI = 110 # slower for AI to guarantee player has a chance to finish first FIRST_CONTACT_FIRST_STAGE = "base_contact_set" # Starting stage for all first contacts (see game/common/first_contact) FIRST_CONTACT_INTEL_TARGET = 10 FIRST_CONTACT_POLICY = "first_contact_protocol" FIRST_CONTACT_POLICY_FLAG_CAUTIOUS = "first_contact_cautious" FIRST_CONTACT_POLICY_FLAG_PROACTIVE = "first_contact_proactive" FIRST_CONTACT_POLICY_FLAG_ATTACK_ALLOWED = "first_contact_attack_allowed" FIRST_CONTACT_UNKNOWN_SPECIES_PORTRAITS_AMOUNT = 22 #Matches number of portraits in gfx\interface\intel\firstcontact\unknown_species; picks which one to use by doing ( "GFX_unknown_species_portrait_" + ( % ) ) SPACE_FAUNA_GROWTH_POLICY_FLAG_CONTROLLED = "controlled_space_fauna_growth" SPACE_FAUNA_GROWTH_POLICY_FLAG_EXCESSIVE = "excessive_space_fauna_growth" ORBITAL_SURRENDER_POLICY = "orbital_bombardment_accept_surrender" ORBITAL_SURRENDER_POLICY_FLAG_ALLOWED = "orbital_bombardment_surrender_allowed" ORBITAL_SURRENDER_POLICY_FORBIDDEN = "orbital_bombardment_surrender_forbidden" PRE_SAPIENTS_POLICY = "pre_sapients" SPY_NETWORK_LEVELS = 50 # What is the base maximum spy network level? (spy_network_levels_add and relative encryption can increase this value) SPY_NETWORK_MAX_LEVELS = 100 # What is the absolute maximum spy network level? SPY_NETWORK_ENCRYPTION_DECRYPTION_LEVELS_EFFECT = -10 # How much does each point of relative encryption difference modify the maximum network level? SPY_NETWORK_ENCRYPTION_DECRYPTION_LEVELS_MIN = -50 # Lower bounds on the infiltration level modifier value SPY_NETWORK_ENCRYPTION_DECRYPTION_LEVELS_MAX = 50 # Upper bounds on the infiltration level modifier value SPY_NETWORK_MAX_POWER = 100 # Including all modifiers, how powerful can a Spy Network ever be? SPY_NETWORK_MAX_ENVOYS_COUNT = 1 # How many envoys can be assigned to build a single spy network? SPY_NETWORK_DAILY_ENVOY_SCORE = 1.0 # How much progression do you get for each envoy SPY_NETWORK_SPRAWL_SCORE_SCALE = 400.0 # This many empire sprawl in the opposing empire adds 1 to daily spy network progression. SPY_NETWORK_BASE_LEVEL_SCORE = 5.0 # It takes (SPY_NETWORK_BASE_LEVEL_SCORE) + (Current Level * SPY_NETWORK_PER_LEVEL_SCORE) points to increase spy network level SPY_NETWORK_PER_LEVEL_SCORE = 5.0 # Per level portion of the above formula SPY_NETWORK_MONTHLY_DECAY = 1.0 # If we don't have an envoy assigned to a spy network or it's above the max value, it decays at this many levels per month SPY_NETWORK_ENCRYPTION_DECRYPTION_BONUS_MULT = -0.10 #Encryption vs decryption bonus scale, multiplied with the difference between those values. SPY_NETWORK_ENCRYPTION_DECRYPTION_BONUS_MIN = -0.4 # Lower bounds to encryption vs decryption (bad for attacker) SPY_NETWORK_ENCRYPTION_DECRYPTION_BONUS_MAX = 0.4 # Upper bounds to encryption vs decryption (good for attacker) SPY_NETWORK_MAXIMUM_ASSIGNED_ASSETS = 1 # Maximal number of assets that can be assigned to spy network SPY_NETWORK_RELATIVE_ENCRYPTION_DIFFICULTY_MULT = 1 # Difficulty modifier to be multiplied to the relative encryption SPY_NETWORK_RELATIVE_ENCRYPTION_DIFFICULTY_MIN = -4 # How low can excess Codebreaking drop the difficulty of operations? Negative numbers good for the spy. SPY_NETWORK_RELATIVE_ENCRYPTION_DIFFICULTY_MAX = 4 # How high can excess Encryption increase the difficulty of operations? Positive numbers good for the defender. SPY_NETWORK_RELATIVE_ENCRYPTION_MIN = -4 # Lower bounds for relative encryption SPY_NETWORK_RELATIVE_ENCRYPTION_MAX = 4 # Upper bounds for relative encryption GALACTIC_EMPIRE_BASE_AUTHORITY = 100 # Starting imperial authority when establishing the galactic empire GALACTIC_EMPIRE_MAX_AUTHORITY = 200 # Maximum value for imperial authority GALACTIC_EMPIRE_ENVOY_AUTHORITY_CHANGE = 0.1 # How much imperial authority is gained/lost each month per envoy assigned IMPERIAL_COUNCIL_CHANGE_MEMBER_INFLUENCE_COST = 100.0 # Influence cost of adding/removing members to/from Imperial Council MENACE_PERK_MINIMUM_ACTIVATION_TIME = 360 # Number of days before the perk can be deactivated SEEN_ALIENS = "seen_aliens" PLANET_COLONIZED_STRING = "colonized" # Identifies when a planet is newly colonized in telemetries PLANET_ACQUIRED_STRING = "acquired" # Identifies when a planet was acquired in any way from another empire in telemetries TRADITION_CATEGORIES_MAX = 7 CATAPULT_MIN_REACH = 5 # How far the catapult should reach at the least CATAPULT_MIN_RADIUS = 10 # Minimum radius of a catapult circle CATAPULT_MAX_RADIUS = 100 # Maximum radius of a catapult circle COUNCIL_COHESION_EDICT_FUND_MAX_MULT = 0.5 # Maximum edict fund multiplier from council cohesion COUNCIL_COHESION_TREND_FACTOR = 0.01 # Monthly council cohesion change COUNCIL_COHESION_SCORE_FANATIC_ETHIC = 1.5 # Cohesion change from matching/mismatching fanatic ethics COUNCIL_COHESION_SCORE_ETHIC = 1.0 # Cohesion change from normal ethics FLEET_LEASE_DAYS_MAXIMUM = 36000 # A fleet can be leased for this number of days maximum FLEET_LEASE_DAYS_DEFAULT = 3600 # A fleet can be leased for this number of days by default AGREEMENT_CHANGE_COOLDOWN_MONTHS = 60 # How often an agreement can be changed in months AGREEMENT_LOYALTY_DELTA_MULT = 5 # Used in Influence Cost calculations AGREEMENT_PROPOSE_INFLUENCE_COST = 50 # Base cost of agreement proposal. + |Loyalty Delta| * AGREEMENT_LOYALTY_DELTA_MULT between old and new agreements AGREEMENT_DENY_AS_SUBJECT_INFLUENCE_COST = 50 # + |Loyalty Delta| * AGREEMENT_LOYALTY_DELTA_MULT between old and new agreements AGREEMENT_DENY_AS_OVERLORD_INFLUENCE_COST = 25 # + |Loyalty Delta| * AGREEMENT_LOYALTY_DELTA_MULT between old and new agreements AGREEMENT_EXPANSION_TITHE_FACTOR = 0.5 # Factor applied on the total after modifiers are applied. 1.5 means 50% more cost which goes to the overlord AGREEMENT_PRESET_RELEASE_AS_SECTOR = "preset_release_sector" # Preset that will be applied when releasing a sector as a vassal AGREEMENT_PRESET_VASSAL = "preset_vassal" # The standard Vassal preset AGREEMENT_INTEGRATION_TERM = "subject_integration" # The agreement term for integration AGREEMENT_CAN_INTEGRATE_TERM_VALUE = "subject_can_be_integrated" # The agreement term value for allowing integration CLOAKING_ACTIVATION_COOLDOWN = 120 #days CLOAKING_LEVEL_MAX = 10 #days MAX_COOP_PLAYERS = 5 # The maximum players allowed in coop empire MAX_ADDITIONAL_COOP_PLAYERS = 4 # The number of additional players allowed in coop empire AWARENESS_MIN = 0 AWARENESS_MAX = 100 AWARENESS_UNAWARE_LIMIT = 1 # (exclusive) upper bound for the "unaware" awareness stage AWARENESS_LOW_LIMIT = 30 # (exclusive) upper bound for the "low" awareness stage AWARENESS_PARTIAL_LIMIT = 60 # (exclusive) upper bound for the "partially" awareness stage AWARENESS_HIGH_LIMIT = 100 # (exclusive) upper bound for the "high" awareness stage (anything >= this will be the fully aware stage) FLEET_FLASH_FORGING_HYPER_RELAY_FLAG = "flash_forging_hyper_relay" # Flag to allow to instantly build a megastructure, in this case hyper relay ASTRAL_RIFT_DEFAULT_DISPLAY_SIZE = 100.0 ASTRAL_RIFT_DICE_ROLL_MIN = 1 ASTRAL_RIFT_DICE_ROLL_MAX = 10 ASTRAL_RIFT_DISCOVERY_DAYS = 90 ASTRAL_RIFT_DISCOVERY_SCORE = 14 ASTRAL_JUMP_THREADS_COST = 500 # Cost in Astral Thread to perform an Astral Jump PHASE_FLEET_THREADS_COST = 250 # Cost in Astral Thread to perform a Phase Fleet UNLOCK_ASTRAL_JUMP_FLAG = "unlock_astral_jump" UNLOCK_PHASE_FLEET_FLAG = "unlock_phase_fleet" # Grand Archive collection GRAND_ARCHIVE_EXHIBITIONS_COUNT = 3 GRAND_ARCHIVE_EXHIBITS_COUNT = 9 COLLECTION_STORAGE_SLOTS_COUNT = 18 SPECIMEN_TYPES = { "aesthetic_wonder" "historical_item" "xeno_geology" } SPECIMEN_PRODUCTION_MODIFIER = "specimens_produces_mult" SELL_SPECIMEN_ENERGY_VALUES = { 250 #Common 500 #Rare 1000 #Epic 2000 #Exceptional } EXHIBIT_UNLOCK_COSTS = { 10 100 200 300 500 750 1000 1500 3000 } GRAND_ARCHIVE_DESTROYED = "grand_archive_destroyed" TRADE_VALUE_SPECIMEN_MULT = 1.3 # Specimen Trade Value (in Energy) = Sell Value * TRADE_VALUE_SPECIMEN_MULT TRADE_VALUE_SPECIMEN_COMPLETE_CATEGORY_MULT = 1.25 TRADE_VALUE_SPECIMEN_EMPTY_CATEGORY_MULT = 1.5 # Cached Technologies COLONY_TECH = "tech_colonization_1" PSIONIC_AURA_TECH = "tech_psionic_aura" AURA_INTENSIFICATION_TECH = "tech_aura_intensification" RANDOMLY_SPAWNED_OBJECTS_ON_OUTER_BORDER_MINIMUM_DISTANCE = 100.0 ASTRAL_RIFT_RELATIVE_SPAWN_MINIMAL_DISTANCE_FROM_PLANETS = 100.0 # Minimal distance required between any planet and the spawning rift when using relative_to. Replaced by orbit_distance if value is inferior. STORM_INTEL_MAX_LEVELS = 3 STORM_NOTIFICATION_WARNING_RANGE = 3 #Range to player's home turf measured by number of jumps, within which storm notification will be shown # How many months ahead it can predict storm location for each tech tier STORM_SPAWN_PREDICTION_MONTHS_TIER_1 = 3 STORM_SPAWN_PREDICTION_MONTHS_TIER_2 = 7 STORM_SPAWN_PREDICTION_MONTHS_TIER_3 = 12 STORM_INFLUENCE_FIELD_STEPS = 4 #The falloff steps of influence tech STORM_SYSTEM_MAX_NATURAL_WEIGHT = 0.5 STORM_SYSTEM_MIN_NATURAL_WEIGHT = 0 STORM_MAX_PATH_LENGTH = 12 STORM_CLOSEST_ATTRACTIVE_SYSTEM_RANGE = 45 FLEET_PATHFINDING_COSMIC_STORM_WEIGHT = 10 STORM_DIRECTION_ANGLE_OFFSET = 90 STORM_STEP_LENGTH = 40 STORM_PATH_INFLUENCE_MULTIPLIER = 0.45 STORM_INFLUENCE_TIER_LOW = 0.33 STORM_INFLUENCE_TIER_MODERATE = 0.66 STORM_INFLUENCE_TIER_HIGH = 1.0 EMERGENCY_FUND_RELIEF_PER_AFFECTED_SYSTEM = 3 FAILED_EMERGENCY_FUND_CONTRIBUTION_FLAG = "failed_fund_contribution" VIRTUAL_JOBS_FLAG = "virtual_jobs" THE_TEMPEST_INVOCATOR_RELIC_MAX_SACRIFICE_LEADER_COUNT = 3 COSMIC_STORM_SPAWN_CHANCE_SCALE_DEFAULT = 1 COSMIC_STORM_SPAWN_CHANCE_SCALE_MIN = 0 COSMIC_STORM_SPAWN_CHANCE_SCALE_MAX = 10 COSMIC_STORM_SPAWN_CHANCE_SCALE_STEP = 0.1 COSMIC_STORM_EARLY_GAME_SPAWN_MAX_CAP_DEFAULT_TINY_GALAXY = 1 COSMIC_STORM_MID_GAME_SPAWN_MAX_CAP_DEFAULT_TINY_GALAXY = 2 COSMIC_STORM_LATE_GAME_SPAWN_MAX_CAP_DEFAULT_TINY_GALAXY = 3 COSMIC_STORM_EARLY_GAME_SPAWN_MAX_CAP_DEFAULT_SMALL_GALAXY = 1 COSMIC_STORM_MID_GAME_SPAWN_MAX_CAP_DEFAULT_SMALL_GALAXY = 3 COSMIC_STORM_LATE_GAME_SPAWN_MAX_CAP_DEFAULT_SMALL_GALAXY = 5 COSMIC_STORM_EARLY_GAME_SPAWN_MAX_CAP_DEFAULT_MEDIUM_GALAXY = 2 COSMIC_STORM_MID_GAME_SPAWN_MAX_CAP_DEFAULT_MEDIUM_GALAXY = 5 COSMIC_STORM_LATE_GAME_SPAWN_MAX_CAP_DEFAULT_MEDIUM_GALAXY = 8 COSMIC_STORM_EARLY_GAME_SPAWN_MAX_CAP_DEFAULT_LARGE_GALAXY = 3 COSMIC_STORM_MID_GAME_SPAWN_MAX_CAP_DEFAULT_LARGE_GALAXY = 6 COSMIC_STORM_LATE_GAME_SPAWN_MAX_CAP_DEFAULT_LARGE_GALAXY = 10 COSMIC_STORM_EARLY_GAME_SPAWN_MAX_CAP_DEFAULT_HUGE_GALAXY = 4 COSMIC_STORM_MID_GAME_SPAWN_MAX_CAP_DEFAULT_HUGE_GALAXY = 8 COSMIC_STORM_LATE_GAME_SPAWN_MAX_CAP_DEFAULT_HUGE_GALAXY = 14 COSMIC_STORM_SPAWN_MAX_CAP_MIN = 1 COSMIC_STORM_SPAWN_MAX_CAP_MAX = 20 COSMIC_STORM_SPAWN_MAX_CAP_STEP = 1 COSMIC_STORM_SPAWN_COOLDOWN_SCALE_DEFAULT = 1 COSMIC_STORM_SPAWN_COOLDOWN_SCALE_MIN = 0.1 COSMIC_STORM_SPAWN_COOLDOWN_SCALE_MAX = 5 COSMIC_STORM_SPAWN_COOLDOWN_SCALE_STEP = 0.1 COSMIC_STORM_DEVASTATION_DEFAULT = 1.0 COSMIC_STORM_DEVASTATION_MIN = 0.0 COSMIC_STORM_DEVASTATION_MAX = 5.0 COSMIC_STORM_DEVASTATION_SLIDER_INTERVAL = 0.25 COSMIC_STORM_ALLOWED_NAME_LISTS = { "ART1" "ART2" "ART4" "FUN1" "FUN4" "HUM1" "MOL1" "REP1" } INITIATE_COSMIC_STORM_SITUATION_KEY = "situation_initiate_storm" # Vivarium WILD_CRITTERS_RARITY_TABLE = { 80 15 4 1 } # Probability to find a critter of the given rarity when captured ( Common, Rare, Epic, Exceptional ) CONTAINMENT_PROTOCOLS_WILD_CRITTERS_RARITY_TABLE = { 69.5 23 6 1.5 } CONTAINMENT_PROTOCOLS_UNLOCKED = "containment_protocols_unlocked" CRITTER_MAX_AGE = 200 MAX_VIVARIUM_CAPACITY = 1000 # Hard cap for vivarium capacity. Should match @max_vivarium_capacity GRAVITY_SNARE_COOLDOWN = "gravity_snare_is_in_cooldown" GRAVITY_SNARE_IS_FROM_AUTO_EXPLORE = "gravity_snare_is_from_auto_explore" GRAVITY_SNARE_CAPTURE_CHANCE_PER_SCIENTIST_LEVEL = 0.1 RARITY_UPGRADE_COST_MULT = 0.05 CAN_HAVE_SCRIPTED_BOMBARDMENT = "can_have_scripted_bombardment" MUTATION_SECTION_NAME = "mutation_section" VOIDWORMS_SCALING_DEFAULT = 1.0 VOIDWORMS_SCALING_MIN = 0.0 VOIDWORMS_SCALING_MAX = 3.0 VOIDWORMS_SCALING_SLIDER_INTERVAL = 0.5 CUTHOLOIDS_SCALING_DEFAULT = 1.0 CUTHOLOIDS_SCALING_MIN = 0.0 CUTHOLOIDS_SCALING_MAX = 3.0 CUTHOLOIDS_SCALING_SLIDER_INTERVAL = 0.5 SUBSPECIES_INTEGRATION_BASE = 25 COUNTRY_ACTIVE_FOCUS_CARDS_COUNT = 5 COUNTRY_FOCUS_CARDS_TIER_MIN = 1 COUNTRY_FOCUS_CARDS_TIER_MAX = 10 COUNTRY_FOCUS_NEXT_TIER_ENABLING_COEFFICIENT = 0.49 # Not 0.5 for a case if there is only 2 cards in a category on a tier COUNTRY_FOCUS_CARDS_DISMISS_UNITY_COST = 100 COUNTRY_FOCUS_CARDS_DISMISS_COOLDOWN_DAYS = 360 COUNTRY_FOCUS_PROGRESSION_DEFAULT_COST = 100 COUNTRY_FOCUS_PRIORITY_CHANGE_COOLDOWN_DAYS = 360 COUNTRY_FOCUS_COST_WAIVED_YEARS = 5 # Should match @waivedYearsDefine in 00_base_focus_categories DEFAULT_MAX_PLANET_BUILDINGS_PER_ZONE = 3 DEFAULT_MAX_DISTRICTS_PER_PLANET = 4 MEGASTRUCTURE_PLACEMENT_RADIUS = 8 MEGASTRUCTURE_SYSTEM_CENTER_RADIUS = 0.25 # percentage of the gravity well where a megastructure can't be placed by the spawn_megastructure effect MONTHLY_PATRON_ATTUNEMENT_VALUE_PER_ENVOY = 0.5 CALLING_COOLDOWN_REDUCTION_PER_ENVOY_DAYS = 0 # If you update the value below, also update @attunement_first_accord accordingly CARDINAL_PATRON_PASSIVE_ACCORD_DISTANCES = { 0.3 0.6 } # Attunement values needed (in percent) unlock passive accords of cardinal patrons PATRON_COVENANT_DISTANCE = 0.7 # Distance (in percent) from center for covenant access GREAT_PATRON_RADIUS = 0.37 # Radius taken by Great Patrons on the Shroud Plane MAX_ATTUNEMENT_VALUE = 1000 # Should be the same as @max_attunement DEEDS_COUNT_PER_PATRON = 5 CALLINGS_REFRESH_COOLDOWN_DAYS = 360 CALLINGS_TIER_MIN = 1 CALLINGS_TIER_MAX = 3 LAUNCH_RANDOM_FORTUNE_EVENT_EVENT_KEY = shroud.210 LAUNCH_RANDOM_OMENS_EVENT_EVENT_KEY = shroud.220 LAUNCH_RANDOM_COMMON_EVENT_EVENT_KEY = shroud.230 ROLL_RANDOM_CYCLE_EVENT_KEY = shroud.240 ROLL_CYCLE_EVENT_KEYS = { # Events launching cycles corresponding with CYCLE_KEYS by index "shroud.120" "shroud.130" "shroud.140" "shroud.150" "shroud.160" "shroud.170" "shroud.180" } CYCLE_KEYS = { # Should be the same size as ROLL_CYCLE_EVENT_KEYS "cycle_of_fortune" "cycle_of_omens" "cycle_of_growth" "cycle_of_prosperity" "cycle_of_conflict" "cycle_of_harmony" "cycle_of_knowledge" } CYCLE_OF_FORTUNE_FLAG_STR = "cycle_of_fortune" CYCLE_OF_OMENS_FLAG_STR = "cycle_of_omens" CYCLE_OF_GROWTH_FLAG_STR = "cycle_of_growth" CYCLE_OF_PROSPERITY_FLAG_STR = "cycle_of_prosperity" CYCLE_OF_CONFLICT_FLAG_STR = "cycle_of_conflict" CYCLE_OF_HARMONY_FLAG_STR = "cycle_of_harmony" CYCLE_OF_KNOWLEDGE_FLAG_STR = "cycle_of_knowledge" MINOR_PATRON_ENCOUNTER_DISTANCE = 200 # Attunement range around a Minor Patron to automatically encounter it MINOR_PATRON_DELVE_ENCOUNTER_CHANCE = 0.05 # Chance to encounter a Minor Patron when delving (requires major patrons of that section to be discovered) FORGE_OUR_OWN_PATH_NB_ACTIVE_ACCORDS = 1 # Number of active accords that forging your own path can give you per patron DISABLE_JUMP_DRIVE_COOLDOWN_MALUS_FLAG_STR = "disable_jump_drive_cooldown_malus" CYCLE_END_SITUATION_FLAG_STR = "end_of_the_cycle_situation_flag" CYCLE_END_RECKONING_FLAG_STR = "end_of_the_cycle_reckoning" SHIPS_MONTHLY_DAMAGE_HEALTH_THRESHOLD = 0.2 NEWLY_SPAWNED_PSIONIC_AURA_FLAG = "newly_spawned_psionic_aura" AURA_CLASHING_FLAG = "aura_is_clashing_against_" AURA_CLASH_LOSING_INTENSITY = 10 # Should be same value as @aura_clashing_loser_decrease AUTOMATED_WORKFORCE_MAX_PERC = 1.0 AURA_EFFECT_FALLEN_EMPIRE_OR_CRISIS_REDUCTION = 0.9 ENTROPY_COUNDUITS_TERRAFORM_SPEED = 0.5 ENTROPY_COUNDUITS_TERRAFORM_PLANET_CLASS_KEY = "pc_m" ENTROPY_COUNDUITS_TERRAFORM_PLANET_CLASS = "pc_m_star" ENTROPY_COUNDUITS_TERRAFORM_STAR_CLASS = "sc_m" ENTROPY_COUNDUITS_STATION_SHIP = "NAME_Conduit_Station" } NSpecies = { MIN_ETHIC_POINTS = 3 TRAIT_MODIFICATION_BASE_COST = 1500 # This cost is always added to a species modification project so modifying single pops isn't efficient TRAIT_CLIMATE_MODIFICATION_COST = 3 TRAIT_MODIFICATION_COST_MULT = 10 # species modification cost to be multiplied with the absolute trait cost of all changes applied, per pop MODIFICATION_COST_MULT = 5 # adds to the above species modification cost, per pop ROBO_TRAIT_MODIFICATION_BASE_COST = 750 # This cost is always added to a species modification project so modifying single pops isn't efficient ROBO_TRAIT_MODIFICATION_COST_MULT = 20 # species modification cost to be multiplied with the absolute trait cost of all changes applied, per pop ROBO_MODIFICATION_COST_MULT = 10 # adds to the above species modification cost, per pop UPLIFT_COST_BASE = 3000.0 TRAIT_MODIFICATION_TIME_LIMIT = 30 # Timeout for species modification special projects HOMEWORLD_HABITABILITY = 0.3 # Habitability on homeworld is increased by this value HABITABILITY_FLOOR = 0.0 # Default lowest possible habitability for a species HABITABILITY_CEIL = 1.0 # Default highest possible habitability for a species HABITABILITY_CEIL_UNCAPPED = 1.25 # Base cap of habitability for a species if species_has_uncapped_habitability_on_planet game rule is true # Can be increased by habitability_ceil_uncapped_add MUTATION_REMOVE_CHANCE = 50 MUTATION_ADD_CHANCE = 50 MUTATION_MIN_TRAITS = 2 MUTATION_MAX_TRAITS = 5 # The following four defines are for deciding the genders that randomly generated species will use for their leaders. # Default means male/female divide. Non-gendered is also known as undeterminable in the game files # It expects non-negative integer values. They can add up to anything, so long as it is greater than 0, and less than int_max DEFAULT_GENDER_CHANCE = 70 MALE_GENDER_CHANCE = 10 FEMALE_GENDER_CHANCE = 10 NON_GENDERED_CHANCE = 10 } NShip = { AGGRESSIVE_STANCE_INVASION_ODDS_MULT = 1.5 # Transport fleets on aggressive stance want to have combat strength of enemy ground troops x this to invade a world AGGRESSIVE_STANCE_MIN_POWER_MULT = 0.2 # Fleets that are less than our military power x this will be ignored by aggressive fleets that are bombarding DESIGNER_WEAPON_PREF_MUL = 1.33 # How much does weapon preference tags in the ship designer affect the weight it assigns a weapon? DESIGNER_WEAPON_ROLE_MUL = 5.33 # How much does weapon role tags in the ship designer affect the weight it assigns a weapon? DESIGNER_UTILITY_ROLE_MUL = 5.33 # How much does weapon role tags in the ship designer affect the weight it assigns a utility component DESIGNER_WEAPON_STACKING_DIV = 0.25 # The higher this is the more the ship designer will try to vary which weapon types are used on its sections ABANDONED_STATION_DECAY_RATE = 0.003 # Abandoned stations lose this amount of health per day STRIKE_CRAFT_COMBAT_REGEN = 0.2 MOVE_SHIP_TO_FLEET_MAX_DIST = 50.0 OUT_OF_COMBAT_SHIELD_REGEN_MULT = 5.0 # Shields recharge this much faster outside combat OUT_OF_COMBAT_ARMOR_REGEN_MULT = 5.0 # Armor recharge this much faster outside combat OUT_OF_COMBAT_HULL_REGEN_MULT = 5.0 # Hull recharge this much faster outside combat SHIP_SPEED_SCALE = 0.045 # Setting this to 1 makes the scripted speed value correspond to units/day SHIP_MAX_EVASION = 0.9 # The maximum evasion value a ship is allowed to have (percent) MAX_DAMAGE_SCALING = 100 # The maximum scaling value a target is allowed to have (ship size) ASSIST_CLOAKING_DETECTION_ORBIT_DISTANCE = 10.0 # The orbiting distance of the ship in a process of assisting cloaking detection FLEET_BASE_FORMATION_SCALE = 3.0 FLEET_BASE_FORMATION_DIV = 10 FLEET_FORMATION_CIRCLE_SHIPS_PER_LAYER_MULT = 4 FLEET_FORMATION_CIRCLE_RADIUS_PER_LAYER_MULT = 2.0 FLEET_UPGRADE_QUEUE_FACTOR_MULT = 0.25 # Scale the importness of the number of items in the construction queue when calculating best shipyard for upgrade in. LANDING_TIME_DAYS = 10 # Amount of days it takes to land an army MOVE_TO_ACTION_THRESHOLD = 5.0 # distance threshold used by move_to fleet action to determine when the fleet arrived HYPERLANE_WINDUP = 150 # In micro updates ( 10/day ) HYPERLANE_WINDDOWN = 0 # In micro updates HYPERDRIVE_INTERSTELLAR_TRAVEL_SPEED = 1.0 # In micro updates ( 10/day ) RULER_SHIP_SCALE_MULT = 0.5 # Scale up of unique ruler ship. JUMP_DRIVE_WINDUP = 14 # Jump drive windup in days JUMP_DRIVE_RANGE = 100 QC_WINDUP_SHIP_SIZE_DIV = 50 # Bigger the value faster the windup time will be. QC_WINDUP_SHIP_SIZE = 150 # Ship size after which the windup mult will be applied. SHIELD_RECHARGE_TICKS = 20 # Combat ticks before a shield that is fully depleted will start to recharge MILITARY_POWER_HEALTH_WEIGHT = 0.5 MILITARY_POWER_ARMOR_WEIGHT = 1.0 # compared to health MILITARY_POWER_SHIELD_WEIGHT = 1.0 # compared to health MILITARY_POWER_DAMAGE_WEIGHT = 0.5 MILITARY_POWER_SCALE = 0.25 MILITARY_POWER_EXPONENT = 0.65 # math: power = ( ( effective_health * damage_per_day ) ^ exponent ) * scale # below values determine how large an effect special values such as shield penetration have on the military power of a weapon MILITARY_POWER_ARMOR_PENETRATION_WEIGHT = 0.5 # larger value = adds more military power MILITARY_POWER_SHIELD_PENETRATION_WEIGHT = 0.5 MILITARY_POWER_HULL_DAMAGE_WEIGHT = 0.33 MILITARY_POWER_ARMOR_DAMAGE_WEIGHT = 0.33 MILITARY_POWER_SHIELD_DAMAGE_WEIGHT = 0.33 MILITARY_POWER_TRACKING_WEIGHT = -0.5 # at 0% tracking MILITARY_POWER_RANGE_DIV = 100 # smaller value = adds more military power MILITARY_POWER_MISSILE_MULT = 0.75 # overall military power of missiles is lowered due to being vulnerable to PD MILITARY_POWER_PD_MULT = 1.15 # overall military power of PD is increased to compensate for relatively bad DPS/range MILITARY_POWER_SIZE_MULTIPLIER_WEIGHT = 20.0 # increase the expected DPS and military power for weapons with size multipliers as if they're fighting this DEFAULT_ARMOR_RATIO = 0.4 DEFAULT_SHIELD_RATIO = 0.5 MIN_SPEED_FOR_UTILITIES = 1.25 # Minimum value for ship utilities with speed to be considered viable when creating designs EXCESS_POWER_BONUS_THRESHOLD_MAX = 1.0 # 0.5 means 0-50% excess power linearly scales ship_excess_power modifier between 0-1. EXCESS_POWER_BONUS_THRESHOLD_MIN = 0.05 # min value for excess power to be used. SHIP_EXP_GAIN_COMBAT = 5 # Gained each day ship is in combat SHIP_EXP_EXPERIENCED = 100 # Amount of exp to reach experienced rank SHIP_EXP_VETERAN = 1000 # Amount of exp to reach veteran rank SHIP_EXP_ELITE = 10000 # Amount of exp to reach elite rank CAN_TRAVEL_BETWEEN_UNEXPLORED_SYSTEMS = no # Can move between 2 unexplored systems CLOAKING_ANIMATION_SPEED = 0.02 SHIP_SIZE_SMALL = 9 SHIP_SIZE_MEDIUM = 20 SHIP_SIZE_LARGE = 40 SHIP_SIZE_EXTRA_LARGE = 80 BIOSHIP_MONTHLY_PROGRESS = 0 # default value added every month, decimal value SHIP_ROLE_NONE = "role_none" # what role to use as the "custom" role in the ship designer } NCombat = { # When ships are attacking they will try to stay at max range and orbit their target. # If the ship is closer than max range this value determines how fast it will "back off" in order to get to max range. # 0.0 means that the ship will not back off and orbit with whatever radius it already has # 1.0 means that the ship will prioritize orbit velocity the same as "back-off"-velocity. i.e a 45 degree angle COMBAT_BACK_OFF_RATE = 0.50 COMBAT_DESIRED_RANGE_MULT = 0.90 # Desired combat ranges should be slightly less than the actual range of a weapon. COMBAT_CHARGE_DISTANCE_COEFFICIENT = 200.0 # If a target is hitting us with impunity, we will multiply our desired range by this to see if we think we should charge them SHIP_SMOOTH_ROTATION_THRESHOLD = 3.141 # Used to smooth rotation rate of ships. equation is "y = x * ( min ( 1.0 x / SHIP_SMOOTH_ROTATION_THRESHOLD ) )" where x is the wanted delta rotation this tick and y the resulting delta rotation FORCE_DISPARITY_BASE = 20 # Added to size of fleets when calculating force disparity FORCE_DISPARITY_MAX_EFFECT = 5.0 # Max multiplier on force disparity SHIP_CURRENT_TARGET_MULTIPLIER = 1.1 # multiplier applied to the score of the current target of ships and components that focus on a single target # should be higher than 1 SHIP_RECENT_TARGET_PENALIZER = 0.3 # multiplier applied to the score of recent targets of ships and components that spread their fire among enemies # should be between 0 and 1 NUMBER_OF_TARGETS_TO_REMEMBER = 10.0 # number of recent targets to remember and try to avoid when spreading fire RANDOM_TARGETING_WEIGHT = 3.0 # The higher this is, the more random ship targeting will be. Only affects ship's main target ADMIRAL_DEATH_CHANCE = 0.1 # Chance that admiral dies when their ship gets blown up COMBAT_SHIP_TARGETING_SIZE_MULT = 0.03 # The higher this weight is, the more likely smaller, more fragile ships are to be targeted first COMBAT_SHIP_TARGETING_SIZE_MAX = 10 COMBAT_SHIP_TARGETING_TRACKING_MULT = 2.0 # This weight is needed to ensure high-tracking ships target high-evasion ships COMBAT_SHIP_EVASION_TARGETING_WEIGHT = 2.0 # The higher this is, the less likely ships are to target enemy ships with high chance to evade their shots COMBAT_SHIP_LOW_HEALTH_THRESHOLD = 0.5 # The health threshold at which the low health targeting weight is applied COMBAT_SHIP_LOW_HEALTH_TARGETING_WEIGHT = 1.5 COMBAT_SHIP_DISTANCE_TARGETING_WEIGHT = 0.002 # The higher this is, the less likely ships will be to fire on distant targets COMBAT_SHIP_DISTANCE_TARGETING_WEIGHT_MIN = 0.10 # Target weight can't be multiplied by less than this due to distance COMBAT_SHIP_UNARMED_TARGETING_WEIGHT = 0.005 # The lower this is, the less likely ships are to target unarmed enemies over armed ones COMBAT_SHIP_STARBASE_TARGETING_WEIGHT = 0.75 # The lower this is, the less likely ships are to target Starbases over military ships & defense platforms COMBAT_SHIP_EVASION_AVOID_MIN_SHIP_SIZE = 8 # Minimum size of ships that should try to avoid firing on highly evasive targets COMBAT_SHIP_EVASION_AVOID_THRESHOLD = 0.7 # Above this level of evasion, try to find a less evasive target COMBAT_DETECT_RANGE_MULT = 1.05 # Range to engage in combat with other ships is * COMBAT_DETECT_RANGE_MULT COMBAT_DETECT_RANGE_MIN = 10 COMBAT_AREA_MIN_ATTACK_RADIUS = 0.2 COMBAT_EMERGENCY_FTL_LOST_RISK = 0.05 # x% risk of ship becoming forever lost when jumping. COMBAT_EMERGENCY_FTL_DAMAGE_RISK = 0.25 # x% chance of ship taking damage in emergency ftl jump COMBAT_EMERGENCY_FTL_DAMAGE_AMOUNT = 0.75 # x% of damage that emergency ftl can potentially cause COMBAT_BASE_DAYS_UNTIL_EMERGENCY_FTL = 14.0 # how many days a fleet should be in combat until they can emergency ftl MISSILE_HIGH_CONTROL_DISTANCE = 5.0 # if the missile is closer to the target than MISSILE_HIGH_CONTROL_DISTANCE it will turn sharply MISSILE_HIGH_CONTROL_INTERPOLATION_RANGE = 5.0 # how long the missile will interpolate between "smooth controls" and "full control" MISSILE_BASE_ROTATION_SPEED = 0.001 # base rotation rate of missiles in radians per tick MISSILE_RETARGET_CHANCE_START = 100 # How likely a missile is to find a new target in range the first time its target is lost MISSILE_RETARGET_CHANCE_REDUCTION = 35 # How much the chance for a missile to find a new target is reduced each retargeting after the first SHIP_DISENGAGE_BASE_CHANCE = 0.75 # Chance each time a ship takes damage that it disengages, scales with damage received (X = chance at SHIP_DISENGAGE_HEALTH_THRESHOLD of health damage) SHIP_DISENGAGE_MAX_CHANCE = 0.5 SHIP_DISENGAGE_HEALTH_THRESHOLD = 0.5 # Health must be below this before damage taken for a ship to disengage SHIP_DISENGAGE_FRIENDLY_TERRITORY_MULT = 1.25 } NPop = { BASE_POLITICAL_POWER = 0.01 # Base political power MIN_POLITICAL_POWER_POSITIVE_STABILITY_IMPACT = 0.0 MAX_POLITICAL_POWER_POSITIVE_STABILITY_IMPACT = 20 MIN_POLITICAL_POWER_NEGATIVE_STABILITY_IMPACT = 0.05 MAX_POLITICAL_POWER_NEGATIVE_STABILITY_IMPACT = 20 BASE_POP_GROWTH = 1.0 # Base growth rate of pops LOGISTIC_POP_GROWTH_R = 0.0025 # Logistic Pop Growth Constant r LOGISTIC_POP_GROWTH_FLOOR = 0.1 # Logistic Pop Growth won't lower growth to less than this percent. LOGISTIC_POP_GROWTH_MIN_POPS = 10 # Treat small colonies as having this many pops to avoid the very bottom of the curve LOGISTIC_POP_GROWTH_LOWER_THRESHOLD = 0.0 # Ignore penalties to Pop Growth if the current number of pops of the species are below this percent of the carrying capacity MAX_CARRYING_CAPACITY = 50000 # Logistic Carrying Capacity Cap (so modders have access to this value in case they make a planet with infinite districts or something like that) MAX_NEW_COLONIES_SCALE = 2 # At this ratio of new to old colonies, no further scaling of migration POP_BULK_UNIT_SIZE = 100 # Default amount by which a pop group changes size in forced resettlement, effects like create_pop etc. POP_GROUP_COLLAPSING_THRESHOLD = 99 # Pop groups size for merging small groups together, that is 2x99 groups can become 1x198 group if partial key of species and category allows it. POP_OUTLINER_CIVILIAN_WARNING = 500 # Outliner will show the orange briefcase if there are this many or more civilians + unemployed COLONY_POPS_REQUIRED = 100 # Number of pops at which planet colonization is completed. COLONY_BOMBARDMENT_DAMAGE = 15 # Damage to colonization pops from bombarding fleet. Multiplied by bombardment stance planet_damage OVERCROWDING_NO_GROWTH_THRESHOLD = 1.15 # At this amount of overcrowding (required housing / actual housing), growth stops entirely OVERCROWDING_DECLINE_THRESHOLD = 1.25 # At this amount of overcrowding (required housing / actual housing), pops start declining OVERCROWDING_ABSOLUTE_THRESHOLD_FOR_NO_GROWTH = 5 # Planet needs this amount of overcrowding (required housing - actual housing) for OVERCROWDING_NO_GROWTH_THRESHOLD to kick in OVERCROWDING_NO_ASSEMBLY_THRESHOLD = 1.15 # At this amount of overcrowding (required housing / actual housing), robot and machine assemebly stops entirely OVERCROWDING_MACHINE_DECLINE_THRESHOLD = 1.25 # At this amount of overcrowding (required housing / actual housing), robot and machine pops start declining OVERCROWDING_MACHINE_ABSOLUTE_THRESHOLD_FOR_NO_GROWTH = 5 # Planet needs this amount of overcrowding (required housing - actual housing) for OVERCROWDING_NO_ASSEMBLY_THRESHOLD to kick in MACHINE_ASSEMBLY_WHEN_OVERCROWDED = 0 # amount of assembly that will be returned when reaching the overcrowding threshold (ie value used for "no assembly") RESETTLE_UNEMPLOYED_BASE_RATE = 10 # Base pop amount that can auto-migrate from a planet per month RESETTLE_DESTROY_COLONY_COST = 200 # Influence surcharge for manually resettling the last pop from a colony RESETTLE_ABROAD_MULTIPLIER = 0.8 # Multiplier applied to score of auto-migration targets in other empires ASSEMBLY_WEIGHT_HABITABILITY_THRESHOLD = 0.75 # If habitability is under this, apply exponentially increasing penalties to assembly weight ASSEMBLY_WEIGHT_LOW_HABITABILITY_PENALTY = 2 # If habitability is under current threshold, apply increasing penalties to assembly weight ASSEMBLY_WEIGHT_HOMEWORLD_MULT = 2 # Pops have increased weight for assembling on their homeworld ASSEMBLY_WEIGHT_TRAIT_MULT = 2 # Extra weight per trait point for assembled pops ASSEMBLY_WEIGHT_FOUNDER_SPECIES_MULT = 1.3 # Extra weight for a country assembling its own species if it can ASSEMBLY_WEIGHT_GROWTH_RATE_MULT = 0.5 # How much does species' total predicted growth matter for assembly weight POP_ENSLAVE_MAX_RANK = 2 # Pops above this stratum rank will not be enslaved from civics, etc BASE_POP_DECLINE = 5 # Base decline rate of pops BASE_POP_ASSEMBLY = 0 # Base assembly rate of pops DEFAULT_CHANGE_JOB_THRESHOLD = 10 # A job must have this much higher weight in order for a pop to switch to it from their current job LOW_HAPPINESS = 0.40 # Below this happiness, show bar as red HIGH_HAPPINESS = 0.60 # Above this happiness, show bar as green NEWLY_ASSEMBLED_POP_TARGET_RANK = 1 # Which category rank should pops from assembly be spawned in BASE_PRODUCTION = 1.0 # Base value of pop production BASE_HAPPINESS = 0.50 # Base value of pop happiness RECENTLY_CONQUERED_DAYS = 3600 # How long the recently conquered modifier stays on pops. } NArmy = { MONTHLY_REINFORCE = 0.2 # Monthly health percentage reinforcement of armies BASE_HEALTH = 200.0 # Base health BASE_DAMAGE_MIN = 1.5 # Base min damage BASE_DAMAGE_MAX = 3.0 # Base max damage BASE_MORALE = 200.0 # Base morale MORALE_DAMAGE_MULT = 1.0 # Morale Damage Multiplier how much of damage is also dealt to morale. MONTHLY_MORALE_REGENERATION = 1.0 # How much morale this unit regenerates each month percentage of max value. DISENGAGED_EFFECT = 0.15 # When a unit is disengaged, damage it deals is multiplied by this BROKEN_MORALE_EFFECT = 0.25 # When a unit's morale is 0, damage it deals is multiplied by this LOW_MORALE_THRESHOLD = 0.5 LOW_MORALE_EFFECT = 0.75 # When a unit's morale is less LOW_MORALE_THRESHOLD, damage it deals is multiplied by this ARMY_EXP_GAIN_DAMAGE_DEALT = 2.0 # Gained each time army deals damage ARMY_EXP_GAIN_DAMAGE_TAKEN = 1.0 # Gained each time army takes damage ARMY_EXP_EXPERIENCED = 100 # Amount of exp to reach experienced rank ARMY_EXP_VETERAN = 1000 # Amount of exp to reach veteran rank ARMY_EXP_ELITE = 10000 # Amount of exp to reach elite rank NUM_DAYS_BEFORE_RETREAT = 30 # How many days that need to pass before we can retreat. RETREAT_UNIT_LOST_MIN_CHANCE = 0.10 # Chance that a retreating unit is lost (scales to health) RETREAT_UNIT_LOST_MAX_CHANCE = 0.75 GROUND_COMBAT_RANDOM_TARGETING_WEIGHT = 1.0 # The higher this is, the more random army targeting will be GROUND_COMBAT_LOW_HEALTH_THRESHOLD = 0.5 # The army health threshold at which the low health targeting weight is applied GROUND_COMBAT_LOW_HEALTH_TARGETING_WEIGHT = 2.0 ARMY_MILITARY_POWER_SCALE = 0.25 ARMY_MILITARY_POWER_EXPONENT = 0.65 # math: power = ( ( effective_health * damage_per_day ) ^ exponent ) * scale ARMY_MILITARY_POWER_DAMAGE_MULT = 1 ARMY_MILITARY_POWER_MORALE_DAMAGE_MULT = 0.5 ARMY_MILITARY_POWER_HEALTH_MULT = 1 ARMY_MILITARY_POWER_MORALE_MULT = 0.5 ARMY_MILITARY_POWER_NO_MORALE_FACTOR = 3 ARMY_DISENGAGE_BASE_CHANCE = 0.75 # Chance each time a ship takes damage that it disengages, scales with damage received (X = chance at SHIP_DISENGAGE_HEALTH_THRESHOLD of health damage) ARMY_DISENGAGE_MAX_CHANCE = 0.5 ARMY_DISENGAGE_HEALTH_THRESHOLD = 0.5 # Morale must be below this before damage taken for an army to disengage ARMY_DISENGAGE_MORALE_DIV = 2.0 # At max morale, army chance to disengage is divided by this ARMY_DISENGAGE_MORALE_MIN_DIV = 1.0 ARMY_DISENGAGE_TARGET_PRIO = 0.5 # Target priority for disengaged armies is multiplied by this } NEconomy = { MIN_MODIFIER_MULT = -0.9 # Used for various modifer multipliers to cap the multiplication from reaching 0 or negative values. MIN_ECONOMIC_MODIFIER_MULT = -0.9 # Cost, upkeep and production modifiers generated through the economic system (common/economic_categories) cannot go beyond this point COLONY_MONTHLY_GROWTH = 3 # How much the colonization pops grow every month. COLONY_MAINTENANCE_COST = 8 # Base cost per month for a new colony. FLEET_UPGRADE_TIME_COST_MULT = 0.50 # Upgrade fleet time cost FLEET_UPGRADE_SECTION_COST_REFUND_MULT = 0.75 # Refund factor for ship section when upgrading FLEET_UPGRADE_COMPONENT_COST_REFUND_MULT = 0.90 # Refund factor for ship components when upgrading EXPANSION_COST_MAX = 1000.0 # Maximum cost of single outpost EXPANSION_COST_BASE = 75.0 # The influence base cost of outpost EXPANSION_COST_DISTANCE = 75.0 # Added per hyperlane jump away CLAIM_COST_MAX = 1000.0 # Maximum cost of a single claim CLAIM_COST_BASE = 50.0 # The influence base cost of making claims CLAIM_COST_STARBASE = 25.0 # Added cost for upgraded starbase CLAIM_COST_COLONY = 25.0 # Added cost for colonized system CLAIM_COST_DISTANCE = 25.0 # Added per hyperlane jump away CLAIM_COST_MULT_OFFENSIVE_WAR = 1.0 # Claims are ( 1 + this ) much more expensive to add for attackers in war CLAIM_COST_RIVAL_DISCOUNT = -0.20 # Claims are ( 1 + this ) much less expensive against rivals COMMERCIAL_PACTS_INCOME_PERCENTAGE = 0.1 # The amount of trade production that is being added to the pact partner's economy TRADITION_COST_RESOURCES = { "unity" } # Resource for tradition cost TRADITION_COST_AMOUNTS = { 300 } # Tradition base cost TRADE_AMOUNT_MULTIPLIER = { 1 5 10 50 100 } # Multiplier interval for resource trading base amount MARKET_TRADE_FEE_BASE = 0.3 # Base procentage for market trade fee MARKET_TRADE_FEE_MIN = 0.05 # Minumum trade fee percentage MARKET_FLUCTUATION_ABOVE_BASE_PRICE = 1 # Base fluctuation when trading a resource' base amount if price is > 0 MARKET_FLUCTUATION_BELOW_BASE_PRICE = 0.3 # Base fluctuation when trading a resource' base amount if price is <= 0 MARKET_MIN_FLUCTUATION_FROM_BASE_PRICE = -80 # Min fluctuation from base price MARKET_MAX_FLUCTUATION_FROM_BASE_PRICE = 400 # Max fluctuation from base price MARKET_DAYS_TO_BASE_PRICE = 1800 # Days until resource price reaches base price from max or min price MARKET_FLUCTUATION_EPSILON = 0.3 # If | fluctuation | < epsilon, reset fluctuation to zero MARKET_MONTHLY_TRADE_FRACTION = 0.1 # market base amount will be multiplied by this when determining starting amount of a monthly market trade MARKET_MAX_BASE_AMOUNTS = 200 # Max resource base amounts that the player is allowed to trade in a single trade HIGH_WATER_MARK_MONTHS = 12 # Income high water mark is tallied over this length of time HIGH_WATER_MARK_HISTORY = 2 # Income high water mark entails this many periods (including the current) INTERNAL_MARKET_DAYS_TO_BASE_PRICE = 3 # MARKET_DAYS_TO_BASE_PRICE * VAL for the Internal Market INTERNAL_MARKET_FLUCTUATION_MULT = 2 # Multiplier of MARKET_FLUCTUATION_ABOVE_BASE_PRICE/MARKET_FLUCTUATION_BELOW_BASE_PRICE for Internal Market BRANCH_OFFICES_ECONOMIC_CATEGORY = "planet_branch_offices" MONTHLY_TRADES_ECONOMIC_CATEGORY = "monthly_trades" PLANETARY_DEFICIT_ECONOMIC_CATEGORY = "planet_resource_deficit" TRADE_POLICY_ECONOMIC_CATEGORY = "trade_policy" COMMERCIAL_PACTS_ECONOMIC_CATEGORY = "commercial_pacts" PRICE_CHANGE_EQ_POS_C = 320000 # Constant C in f(x) = ( c / ( x - xo ) ) + d for f(x) > 0 PRICE_CHANGE_EQ_POS_D = -133.3 # Constant D in f(x) = ( c / ( x - xo ) ) + d for f(x) > 0 PRICE_CHANGE_EQ_POS_X0 = -600 # Constant X0 in f(x) = ( c / ( x - xo ) ) + d for f(x) > 0 PRICE_CHANGE_EQ_NEG_C = -45000 # Constant C in f(x) = ( c / ( x - xo ) ) + d for f(x) < 0 PRICE_CHANGE_EQ_NEG_D = 20 # Constant D in f(x) = ( c / ( x - xo ) ) + d for f(x) < 0 PRICE_CHANGE_EQ_NEG_X0 = -450 # Constant X0 in f(x) = ( c / ( x - xo ) ) + d for f(x) < 0 TRADE_DELIVERY_PERCENTAGE_HIGH = 80 # >= 80% of trade value reaches destination TRADE_DELIVERY_PERCENTAGE_LOW = 50 # <= 50 of trade value reaches destination SLAVE_MARKET_SLAVE_BASE_COST_RESOURCES = { "trade" } SLAVE_MARKET_SLAVE_BASE_COST_AMOUNT = { 1000 } SLAVE_MARKET_SIZE_CAP = 100 #Max amount of slaves allowed on the market SECTOR_AUTOMATION_CONTRUCTION_RAND_FACTOR = 0.1 # Random factor applied to the score of constructions in the sector automation SECTOR_AUTOMATION_FREE_JOBS_BUILD_CAP = 100 # Sector automation will build if there is unemployment OR free jobs <= SECTOR_AUTOMATION_FREE_JOBS_BUILD_CAP OR free housing <= SECTOR_AUTOMATION_FREE_HOUSING_BUILD_CAP SECTOR_AUTOMATION_FREE_HOUSING_BUILD_CAP = 100 SECTOR_AUTOMATION_BASE_FOCUS = "basic" # Items in this sector focus list are appended to all other ones SPACE_FAUNA_PREFERRED_PLANET_ORBIT_UPKEEP_MULT = 0.5 RARITY_MODIFIER_COMMON = 1 RARITY_MODIFIER_RARE = 2 RARITY_MODIFIER_EPIC = 3 RARITY_MODIFIER_EXCEPTIONAL = 5 LOGISTIC_FLEET_UPKEEP_DOCKED_MULT = 0.0 LOGISTIC_FLEET_UPKEEP_FRIENDLY_SPACE_MULT = 0.5 LOGISTIC_FLEET_UPKEEP_NEUTRAL_SPACE_MULT = 1.0 LOGISTIC_FLEET_UPKEEP_HOSTILE_SPACE_MULT = 2.0 MONTHLY_SUBJECT_TAX_ECONOMIC_CATEGORY = "subject_tax" MONTHLY_OVERLORD_SUBSIDY_ECONOMIC_CATEGORY = "overlord_subsidy" MONTHLY_SUBJECT_INTEGRATION_ECONOMIC_CATEGORY = "subject_integration" MONTHLY_EMERGENCY_FUND_CATEGORY = "emergency_fund" BORROW_DIPLO_WEIGHT_FAVOR_RESOURCE = { "influence" } BORROW_DIPLO_WEIGHT_FAVOR_COST = { 10 } POP_UNEMPLOYED_JOB_WEIGHT_BONUS = 0.001 MARKET_RESOURCE = "trade" } NAI = { AI_FREE_JOBS_DISTRICT_BUILD_CAP = 200 # AI will not build new districts on a planet with more than this many free jobs AI_FREE_JOBS_BUILDING_BUILD_CAP = 1000 # AI will not build new buildings on a planet with more than this many free jobs AI_DEFICIT_SCORE_MULT = 100 # AI will score buildings producing resources in deficit this much more AI_RARE_RESOURCE_SCORE_MULT = 10 # AI will score buildings producing rare resources this much more AI_FOCUS_SCORE_MULT = 2 # AI will score buildings producing focus resources this much more AI_RESOURCE_PRODUCTION_SCORE_MULT = 1 # AI will score resource producing buildings this much more AI_AMENITIES_SCORE_MULT = 3 # AI will score amenity buildings this much more than other misc resources AI_HOUSING_SCORE_MULT = 3 # AI will score housing buildings this much more than other misc resources AI_CRIME_REDUCTION_SCORE_MULT = 1.5 # AI will score crime fighting buildings this much more than other misc resource AI_CRIME_REDUCTION_THRESHOLD = 15 # AI will start to think about reducing crime after this threshold has been reached AI_ADMIN_CAP_SCORE_MULT = 2 # AI will score admin cap buildings this much more than other misc resource AI_POPS_SCORE_MULT = 0.01 # AI will score pop growth and assembly buildings this much more ( already fairly high weighted in code ) AI_NAVAL_CAP_SCORE_MULT = 15 # AI will score naval cap buildings this much more than other misc resource AI_POP_GROWTH_JOB_TRESHOLD = 0.05 # AI will consider a job defined as a giving pop growth if it gives at least this many % bonus AI_UPGRADE_SCORE_MULT = 2 # AI will score building upgrades this much more ( since they don't take up a new building slot ) AI_MIN_CURRENCY_INCOME_TO_BUILD_STARBASE_MODULES = 50 # AI will not build starbase modules (or defense platforms) if energy income is below this threshold AI_MIN_NAVAL_CAP_USAGE_TO_BUILD_DEFENSE_PLATFORMS = 0.95 # AI will not build defense platforms if it is using less than this amount of its naval cap AI_FRUITFUL_SCORE_MULT = 100 # AI will prioritize capturing critters that are not seeded (Fruitful Partnership) AI_UPPER_AMENITIES_LIMIT = 500 # AI will try to reduce the amount of amenities on a planet if it's above this number by downprioritizing amenity jobs AI_LOWER_AMENITIES_LIMIT = 100 # AI will try to increase amenities on a planet if it's below this number by increasing priority of amenity jobs # If AI is either below -10 amenities or if both stability and amenity target is met AI_PLANET_LOWER_THRESHOLD_AMENITY_CONSTRUCTION = -300 # AI will try to build new amenity buildings if below this amenity target # Both requirements need to be fulfilled AI_PLANET_UPPER_THRESHOLD_AMENITY_CONSTRUCTION = 0 # AI will try to build new amenity buildings if below this amenity target AI_PLANET_STABILITY_THRESHOLD_AMENITY_CONSTRUCTION = 50 # AI will try to build new amenity buildings if below this stability target AI_DISTRICT_MAX_OPPORTUNITY_COST_FACTOR = 0.3 # With only one District cap left, the AI will subtract the second best choice times this number from the # weight for building a new District (making it relatively more willing to build e.g. a Building instead) AI_DISTRICT_OPPORTUNITY_COST_FALLOFF = 0.75 # With each additional District cap left, the above deduction is multiplied by this (making it less important). AI_DISTRICT_MAX_FREE_SLOTS_FOR_OPPORTUNITY_COST = 3 # Above this number of free District cap, opportunity costs aren't considered at all. AI_DISTRICT_MIN_HYPOTHETICAL_WEIGHT = 50 # When evaluating opportunity costs, the AI hypothesizes a competing District with this weight if none are known. AI_BUILDING_MAX_OPPORTUNITY_COST_FACTOR = 0.5 # With only one Building slot left, the AI will subtract the second best choice times this number from the # weight for building a new Building (making it relatively more willing to build e.g. a District, or a # Building in a different Zone, instead.) AI_BUILDING_OPPORTUNITY_COST_FALLOFF = 0.5 # With each additional Building slot left, the above deduction is multiplied by this (making it less important). AI_BUILDING_MAX_FREE_SLOTS_FOR_OPPORTUNITY_COST = 3 # Above this number of free District cap, opportunity costs aren't considered at all. AI_BUILDING_MIN_HYPOTHETICAL_WEIGHT = 100 # When evaluating opportunity costs, the AI hypothesizes a competing Building with this weight if none are known. AI_IS_AMENITIES_JOB_FACTOR = 0.015 # Factor of when a job is considered an amenities job, e.g. for 2 a job needs to produce twice as much amenities as resources # Rescaled by a factor of 100 due to economic/pop changes in 4.0 POP_RANK_LIMIT_FOR_AMENITIES_ADJUSTMENT = 2 # Pops above this rank will not be subject of automatic job reshuffling to balance amenities AI_MINIMUM_AMENITY_PER_JOB_LIMIT = 3 # Jobs need to produce at least this many amenities to be considered for the AI amenity shuffling AI_TECHNOLOGY_RARE_WEIGHT_MULT = 1.5 # AI will multiply AI weight of rare techs with this value AI_TECHNOLOGY_INFINITELY_REPEATABLE_WEIGHT_MULT = 0.01 # AI will multiply AI weight of infinitely repeatable techs with this value AI_IN_BREACH_THRESHOLD = 3 # AI will consider leaving the community ( and wont try to join it either ) if theyre in breach of this many resolutions AI_MAX_DISTANCE = 200 # AI considers all systems more distant than this to initially be too far away, but this will be multiplied to increase search range when that happens AI_SYNTH_QUEEN_MAX_FE_HUNTING_DISTANCE = 500 # To help the synth Queen hunt Fallen Empires more efficiently AI_POP_MODIFICATION_DISCOUNT = 0.25 # AI pays this much (of base) for gene/robomodding projects MIN_DISTANCE_TO_JUMP = 3 # Target must be at least this many systems away for AI to want to use jump drive AI_JUMP_DRIVE_BRAVERY = 0.33 # AI will not want to jump into systems unless enemy is this much weaker than them, relatively # AI will resettle pops with lower habitability than LOW threshold onto worlds where they will have HIGH threshold habitability or more AI_RESETTLE_FROM_LOW_HABITABILITY_THRESHOLD = 0.15 AI_RESETTLE_TO_HIGH_HABITABILITY_THRESHOLD = 0.70 # AI will not resettle pops from planets that have less pops than this value AI_LEAVE_POPS_WHEN_RESETTLING = 500 # AI will not resettle pops from planets that have more sapient pops than this value AI_SKIP_RESETTLING_MANY_POPS = 50000 # These are used to determine where the AI should be upgrading its starbases STARBASE_COLONY_SCORE = 5 STARBASE_HABITABLE_PLANET_SCORE = 3 STARBASE_MEGASTRUCTURE_SCORE = 5 STARBASE_BYPASS_SCORE = 10 STARBASE_CHOKEPOINT_SCORE = 2 STARBASE_HAZARD_CHOKEPOINT_SCORE_MULT = 1.5 STARBASE_SECTOR_CAPITAL_SCORE = 5 # Extra score to build a starbase at a sector capital system STARBASE_MAX_OVER_CAP_DURING_WAR = 6 # AI will not downgrade starbases during war unless it is this many or more over cap AI_WAR_PREPARATION_MIN_MONTHS = 12 # Minimum time AI will prepare for war AI_WAR_PREPARATION_MAX_MONTHS = 30 # Maximum time AI will prepare for war # Defines used to enable AI to destroy buildings/districts if they are producing too much of a resource # current income needs to surpass both the addative and the multiplicative check in order to be destroyed AI_ADDITIVE_SUPERFLUOUS_INCOME_THRESOLD = 500 # Addative threshold, AI_MULTIPLICATIVE_SUPERFLUOUS_INCOME_THRESOLD = 1.3 # Multiplicative threshold AI_RESOURCE_TARGET_EXPIRATION_MONTHS = 24 # If income target high water marks are out of reach for this long, reset them (we may have lost territory) AI_RESOURCE_TARGET_VALID_THRESHOLD = 0.75 # High water marks times this factor are "out of reach" for the purpose of the above WAR_OCCUPIED_BORDER_PRIO = 20 # Priority on targeting systems that are bordering our occupied space WAR_OWN_BORDER_PRIO = 10 # Priority on targeting systems that are bordering us WAR_ALLY_BORDER_PRIO = 5 # Priority on targeting systems that are bordering allies WAR_NO_BORDER_PRIO = 0.01 # Priority on targeting systems that are in the middle of hostile space WAR_DEFENSE_OWN_PRIO = 3 # Priority on defending own borders WAR_DEFENSE_CONTROLLED_PRIO = 5 # Priority on defending conquered systems WAR_DEFENSE_ALLY_PRIO = 3 # Priority on defending allies WAR_NEUTRAL_SPACE_PRIO = 0.5 # Priority on targeting enemies in neutral space WAR_ATTACK_CLAIM_PRIO = 1.5 # Priority on targeting enemy systems we have claimed WAR_DEFENSE_CLAIM_PRIO = 1.5 # Priority on defending claimed system we have conquered WAR_DEFENSE_OWN_PLANET_PRIO = 1.5 # Priority on defending own planets in a controlled system WAR_DEFENSE_OWN_PLANET_ENEMY_CONTROL_PRIO = 5 # Priority on defending own planets in an enemy controlled system WAR_ATTACK_PLANET_PRIO = 2.0 # Priority on targeting enemy systems with planets WAR_ATTACK_PLANET_CONTROLLED_SYSTEM_PRIO = 3.0 # Priority on targeting enemy planets in controlled systems WAR_ATTACK_STARBASE_PRIO = 4 # Priority on targeting enemy systems with upgraded starbases WAR_DEFEND_STARBASE_PRIO = 2.5 # Priority on defending systems with an upgraded starbase WAR_ATTACK_MILITARY_FLEET_PRIO = 5.0 # Priority on targeting enemy military fleets WAR_ATTACK_JUMP_DRIVE_FLEET_PRIO = 2.0 # Priority on targeting vulnerable jump-drive fleets that are in cooldown SPACE_MONSTER_MOVE_CHANCE = 2 # % chance that space monsters pick a new wander target each week SPACE_MONSTER_WANDER_FACTOR = 0.75 # The higher this is, the further space monsters will tend to wander from their spawn point (range: 0.0 - 1.0) SEEDED_SPACE_MONSTER_MOVE_CHANCE = 80 # % chance that space monsters pick a new wander target each week SEEDED_SPACE_MONSTER_WANDER_FACTOR = 1 # The higher this is, the further space monsters will tend to wander from their spawn point (range: 0.0 - 1.0) TERRAFORMING_RESOURCE_THRESHOLD_FACTOR = 1.2 # AI wants to have this factor more resources than what is required for the terraforming EXTRADIMENSIONAL_MIN_FLEETS = 3 # At less fleets than this, extradimensionals pull back to the portal AI_NO_RETREAT_LIMIT = 3 # At fewer owner/controlled planets than this, the AI will fight to the death in their home systems CRISIS_THREAT_THRESHOLD_UPPER = 100 # At this crisis threat, AI drops other priorities and focuses on fighting the crisis CRISIS_THREAT_THRESHOLD_LOWER = 10 # Below this threshold, AI stops focusing on crisis fighting CRISIS_MILITARY_POWER_MULT_DEFAULT = 1.5 # AI willing to engage crisis factions at these odds normally CRISIS_MILITARY_POWER_MULT_CRISIS_FIGHTER = 0.6 # AI willing to engage crisis factions at these odds if they prioritize crisis fighting CRISIS_MILITARY_POWER_MULT_INHABITED_SYSTEM = 0.5 # AI willing to engage crisis factions at these odds in systems of others under attack by crisis CRISIS_MILITARY_POWER_MULT_OWN_SYSTEM = 0.33 # AI willing to engage crisis factions at these odds in their own systems CRISIS_MILITARY_POWER_MULT_DESPERATION = 0.10 # AI willing to engage crisis factions at these odds when down to their last few worlds CRISIS_MILITARY_AGGRESSIVENESS = 2 # aggressiveness of crisis empires. This works the saame as the value in personalities (but crisis don't have personalities, and were using the default "1" BOSS_MILITARY_POWER = 40000 # The military power at which AI feels safe to engage a 'boss' creature ULTRA_BOSS_MILITARY_POWER = 100000 # The military power at which AI feels safe to engage a 'ultra boss' opponent WAS_HUMAN_MONTHS = 180 # Amount of months that the AI will refrain from making large changes to the empire if it's taking over from a player MIN_FLEET_FOR_OPERATIONS = 500 # Minimum fleet power to get assigned to missions like attacking targets etc MIN_FLEET_TO_RESTRICT_SYSTEM = 3000 MIN_FLEET_THREAT_TO_CRISIS = 8000 FLEET_GROUP_ABORT_MISSION_MULT = 1.2 # The wanted amount of fleet power needs to have increased by at least this much for the AI to reconsider a mission once commited FLEET_COMBAT_INTERVENTION_MULT = 0.5 # The AI wont try to intervene in a fleet combat unless that intervention puts us at this percentage of the enemy fleet ( i.e. we wont intervene if the enemy outnumbers us by 2 or more ) OFFENSE_VS_DEFENSE_STRATEGY_ALLOTMENT = 1.0 # How much of its fleet power should a country with 1.0 aggressiveness should try to commit to offensive missions FLEET_DAMAGED_THRESHOLD_WAR = 0.40 # threshold when a fleet will be considered damaged and should return for repairs and avoid certain actions FLEET_DAMAGED_THRESHOLD_PEACE = 0.99 # same but for peace FLEET_ARMOR_DAMAGED_THRESHOLD_WAR = 0.40 # same as above but for armor FLEET_ARMOR_DAMAGED_THRESHOLD_PEACE = 0.99 # same but for armor in peace TARGET_BASE_SCORE = 100.0 # base score to use when scoring AI military targets HOSTILE_FLEETS_TARGET_SCORE = 20 # extra score for engaging hostile fleets CAPITAL_TARGET_SCORE = 5 # extra score for defending/invading a capital CRISIS_CONSTRUCTOR_TARGET_SCORE = 3 # extra score for crisis defending constructor ships CHOKEPOINT_TARGET_MULT = 2 # extra multiplier for defensive scoring of chokepoints MIN_GIFT_SIZE = 25 # in opinion impact MAX_GIFT_SIZE = 50 AI_TRADE_INTERVAL = 5000 # the higher this is the less often the AI will offer trades MAX_TRUST = 100 # trust can never be more than this MAX_TRUST_DEFENSIVE_PACT = 100 # trust can tick up to this if defensive pact MAX_TRUST_ASSOCIATE = 100 # trust can tick up to this if federation associate MAX_TRUST_NAP = 75 # trust can tick up to this if non-aggression pact MAX_TRUST_MIN = 50 # trust can always tick up to at least this BASE_TRUST_CHANGE = -0.25 # only applied if no other factor is changing trust MONTHLY_TRUST_GUARANTEE = 0.25 MONTHLY_TRUST_RESEARCH_TREATY = 0.10 MONTHLY_TRUST_MIGRATION_TREATY = 0.25 MONTHLY_TRUST_NON_AGGRESSION_PACT = 0.50 MONTHLY_TRUST_COMMERCIAL_PACT = 0.25 MONTHLY_TRUST_ASSOCIATION_STATUS = 0.50 MONTHLY_TRUST_DEFENSIVE_PACT = 0.75 MONTHLY_TRUST_SUBJECT = 0.25 MONTHLY_TRUST_FEDERATION = 1.00 MONTHLY_TRUST_AT_WAR = -2.00 MONTHLY_TRUST_RIVAL = -2.00 MONTHLY_TRUST_EMBASSY = 0.10 TRAIT_AUTOPICK_WEIGHT_FACTOR_IS_COUNCILOR = 20 # If we are on the council increase chance to auto-pick councilor traits TRAIT_AUTOPICK_WEIGHT_FACTOR_IS_NOT_COUNCILOR = 0.1 # If we are not on the council and we do not have a councilor subclass then multiply councilor-only traits' auto-pick weights by this factor TRAIT_AUTOPICK_WEIGHT_FACTOR_FOR_UPGRADES = 2 # Trait upgrades are more likely to be auto-picked than new traits. BROKEN_TRADE_DEAL_FACTOR = 0.5 # How much does broken trade deal affect opinion (based on value of deal) THREAT_PLANET_MULT = 8.0 # Base threat multiplier for planet THREAT_STARBASE_MULT = 4.0 # Base threat multiplier for system with upgraded starbase THREAT_SYSTEM_MULT = 2.0 # Base threat multiplier for system HIGH_THREAT_THRESHOLD = 50 # Must have at least this much threat to become fearful SHARED_THREAT_MULT = 0.5 # How much does having a shared threat boost opinion? THREAT_SHARED_THREAT_REDUCTION = 4 # Each point of threat will also eliminate this much shared threat SHARED_THREAT_MAX = 200 THREAT_DECAY = -0.25 # Each month THREAT_DISTANCE_FACTOR = 0.01 # The higher this is the larger the threat reduction from being far away THREAT_SIZE_FACTOR = 1.0 # How much does the relative power of the aggressive empire affect threat? THREAT_SIZE_FACTOR_MAX = 2.0 THREAT_SIZE_FACTOR_MIN = 0.1 THREAT_NAP_FACTOR = 0.5 # How much is threat lowered if we have a NAP or defensive pact? THREAT_POSITIVE_OPINION_FACTOR = 0.002 # How much does opinion of the victim affect threat? THREAT_NEGATIVE_OPINION_FACTOR = 0.002 THREAT_OPINION_MAX = 1.25 THREAT_OPINION_MIN = 0.75 AI_AGGRESSIVENESS_LOW_MULT = 0.5 AI_AGGRESSIVENESS_HIGH_MULT = 2.0 AI_AGGRESSIVENESS_BASE = 25 # Base chance AI will declare a war (multiplied by personality aggressiveness score) AI_AGGRESSIVENESS_PROPAGATOR_BOXED_IN_MULT = 10 # When a warlike 'propagator' personality is boxed in aggression is multiplied by this value AI_AGGRESSIVENESS_BOXED_IN_MULT = 4 # When an AI can no longer peacefully expand aggression is multiplied by this value AI_AGGRESSIVENESS_NO_COLONY_TARGET_MULT = 2 # When an AI has no immediate colony targets and at least MAX_PLANETS_FOR_BUDGET_FACTOR planets (but is not boxed in) aggression is multiplied by this value AI_VULNERABLE_PLANET_DISTANCE = 3 # Number of jumps from the border of a hostile empire, AI will build strongholds on these planets ACTION_MIN_DAYS_REJECTED = 10000 # AI will remember a rejection at least this time ACTION_DAYS_REJECTED_RANDOM = 5000 # Max random extra days AI will reject offer ACTION_MIN_DAYS_TIMED_OUT = 3600 # AI cooldown for timed out proposals ACTION_MIN_DAYS_REJECTED_PEACE = 360 # AI will remember a peace deal rejection at least this time ACTION_DAYS_REJECTED_RANDOM_PEACE = 360 # Max random extra days AI will reject peace offer INSTANT_AI_DIPLOMACY = 0 # AI answers diplomacy immediately. No proposals are sent off to AIs. DIPLOMACY_RESPONSE_COOLDOWN_DAYS = 7 # Cooldown days before the AI will consider answer a proposed diplo action, after that on daily roll with increasing chance until proposal experation date DIPLO_BREAK_THRESHOLD = -30 # If AI values an existing deal at less than this break it ACCEPTANCE_DEAL_BREAKER = -1000 # This is used when something is a deal breaker in diplomacy ACCEPTANCE_DEAL_ALWAYS = 1000 # This is used when the AI should always accept a deal VASSALIZATION_ACCEPTANCE_OVERLORD = -800 MAX_GUARANTEES = 3 # Below are various acceptance factors for specific actions FEDERATION_ACCEPTANCE_CRISIS_FACTOR = 30 FEDERATION_ACCEPTANCE_OPINION_FACTOR = 0.1 FEDERATION_ACCEPTANCE_VOTED_DOWN_PROPOSAL = -50 FEDERATION_ACCEPTANCE_ATTITUDE_ALLIANCE = 30 FEDERATION_ACCEPTANCE_ATTITUDE_COEXIST = 0 FEDERATION_ACCEPTANCE_OTHER_ATTITUDE = -50 FEDERATION_ACCEPTANCE_SHARED_RIVAL = 10 # per rival FEDERATION_ACCEPTANCE_SHARED_RIVAL_IN_FEDERATION = 10 # extra per rival in alliance FEDERATION_ACCEPTANCE_SHARED_THREAT = 0.25 # scales with actual threat FEDERATION_CONQUEROR_DIFFERENCE = -30 # penalty if one side wants to wage wars of conquest and the other doesn't FEDERATION_ACCEPTANCE_RELATIVE_STRENGTH_FACTOR = 5 # For each 1x we are stronger than them FEDERATION_ACCEPTANCE_RELATIVE_STRENGTH_MAX = 20 FEDERATION_ACCEPTANCE_MEMBER_VOTE = 50 # added to acceptance when a member is voting whether to approve an alliance invite FEDERATION_ACCEPTANCE_MEMBER_VOTE_SIZE_FACTOR = 0 # for each member above two FEDERATION_ACCEPTANCE_MEMBER_VOTE_MIN = 50 FEDERATION_ACCEPTANCE_ASSOCIATION_VOTE = 100 FEDERATION_ACCEPTANCE_DISTANCE_MULT = -0.1 # per 1 border distance FEDERATION_LAW_SUPPORT_THRESHOLD = 50 # How big ai weight should be for AI to support the vote FEDERATION_ACCEPTANCE_SUPPORT = 100 # Support for ai law FEDERATION_PROPOSE_THRESHOLD = 125 # How big ai weight should be for AI to propose the vote FEDERATION_WEIGHT_COHESION_FACTOR = 0.25 # Cohesion added on the vote weight FEDERATION_ALL_AI_LEADER_WEIGHT_FACTOR = 1.5 # Since the AI is set to generally not propose votes on laws in player federations, it needs this boost to care enough to reach FEDERATION_PROPOSE_THRESHOLD in AI-only federations. FEDERATION_DISBAND_THRESHOLD = -45 # If leaving the federation would disband it, AI will use this threshold instead of DIPLO_BREAK_THRESHOLD. FEDERATION_DISBAND_PLAYER_THRESHOLD = -60 # Used instead of FEDERATION_DISBAND_THRESHOLD if the federation has any players in it. DEFENSIVE_PACT_ACCEPTANCE_OPINION_FACTOR = 0.2 DEFENSIVE_PACT_ACCEPTANCE_ATTITUDE_ALLIANCE = 50 DEFENSIVE_PACT_ACCEPTANCE_ATTITUDE_COEXIST = 20 DEFENSIVE_PACT_ACCEPTANCE_OTHER_ATTITUDE = -50 DEFENSIVE_PACT_ACCEPTANCE_NUM_PACTS = -50 # per existing defensive pact DEFENSIVE_PACT_ACCEPTANCE_SHARED_RIVAL = 30 # per rival DEFENSIVE_PACT_ACCEPTANCE_SHARED_ALLY = 30 # per shared ally DEFENSIVE_PACT_ACCEPTANCE_SHARED_THREAT = 0.25 # scales with actual threat DEFENSIVE_PACT_ACCEPTANCE_RELATIVE_STRENGTH_FACTOR = 5 # For each 1x we are stronger than them DEFENSIVE_PACT_ACCEPTANCE_RELATIVE_STRENGTH_MAX = 20 DEFENSIVE_PACT_ACCEPTANCE_DISTANCE_MULT = -0.1 # per 1 border distance EMBASSY_ACCEPTANCE_OPINION_FACTOR = 0.5 EMBASSY_ACCEPTANCE_ATTITUDE_ALLIANCE = 100 EMBASSY_ACCEPTANCE_ATTITUDE_COEXIST = 40 EMBASSY_ACCEPTANCE_OTHER_ATTITUDE = -25 EMBASSY_ACCEPTANCE_NUM_PACTS = 0 # per existing defensive pact EMBASSY_ACCEPTANCE_SHARED_RIVAL = 40 # per rival EMBASSY_ACCEPTANCE_SHARED_ALLY = 60 # per shared ally EMBASSY_ACCEPTANCE_SHARED_THREAT = 0.25 # scales with actual threat EMBASSY_ACCEPTANCE_RELATIVE_STRENGTH_FACTOR = 1 # For each 1x we are stronger than them EMBASSY_ACCEPTANCE_RELATIVE_STRENGTH_MAX = 20 EMBASSY_ACCEPTANCE_DISTANCE_MULT = -0.05 # per 1 border distance NON_AGGRESSION_PACT_ACCEPTANCE_OPINION_FACTOR = 0.2 NON_AGGRESSION_PACT_ACCEPTANCE_ATTITUDE_ALLIANCE = 100 NON_AGGRESSION_PACT_ACCEPTANCE_ATTITUDE_COEXIST = 50 NON_AGGRESSION_PACT_ACCEPTANCE_OTHER_ATTITUDE = 0 NON_AGGRESSION_PACT_ACCEPTANCE_NUM_PACTS = -30 # per existing non-aggression pact NON_AGGRESSION_PACT_ACCEPTANCE_SHARED_RIVAL = 50 # per rival NON_AGGRESSION_PACT_ACCEPTANCE_SHARED_THREAT = 0.25 # scales with actual threat NON_AGGRESSION_PACT_ACCEPTANCE_RELATIVE_STRENGTH_FACTOR = 20 # For each 1x we are stronger than them NON_AGGRESSION_PACT_ACCEPTANCE_RELATIVE_STRENGTH_MAX = 100 NON_AGGRESSION_PACT_ACCEPTANCE_DISTANCE_MULT = -0.1 # per 1 border distance RESEARCH_AGREEMENT_ACCEPTANCE_OPINION_FACTOR = 0.4 RESEARCH_AGREEMENT_ACCEPTANCE_ATTITUDE_ALLIANCE = 100 RESEARCH_AGREEMENT_ACCEPTANCE_ATTITUDE_COEXIST = 50 RESEARCH_AGREEMENT_ACCEPTANCE_OTHER_ATTITUDE = 0 RESEARCH_AGREEMENT_ACCEPTANCE_NUM_PACTS = -30 # per existing research agreement RESEARCH_AGREEMENT_ACCEPTANCE_DISTANCE_MULT = -0.1 # per 1 border distance RESEARCH_AGREEMENT_ACCEPTANCE_GIVEN_TECHS = -0.5 # Per tech we have they don't RESEARCH_AGREEMENT_ACCEPTANCE_TAKEN_TECHS = -0.5 # Per tech they have we don't RESEARCH_AGREEMENT_ACCEPTANCE_TECHS_MIN = -100 RESEARCH_AGREEMENT_ACCEPTANCE_TECHS_MAX = 100 COMMERCIAL_PACT_ACCEPTANCE_OPINION_FACTOR = 0.4 COMMERCIAL_PACT_ACCEPTANCE_ATTITUDE_ALLIANCE = 100 COMMERCIAL_PACT_ACCEPTANCE_ATTITUDE_COEXIST = 50 COMMERCIAL_PACT_ACCEPTANCE_OTHER_ATTITUDE = 0 COMMERCIAL_PACT_ACCEPTANCE_NUM_PACTS = -30 # per existing commercial pact COMMERCIAL_PACT_ACCEPTANCE_DISTANCE_MULT = -0.1 # per 1 border distance COMMERCIAL_PACT_ACCEPTANCE_GIVEN_VALUE = -0.5 # Per collected trade value COMMERCIAL_PACT_ACCEPTANCE_GIVEN_VALUE_MIN = -100 COMMERCIAL_PACT_ACCEPTANCE_GIVEN_VALUE_MAX = 0 COMMERCIAL_PACT_ACCEPTANCE_TAKEN_VALUE = 1 # Per collected trade value COMMERCIAL_PACT_ACCEPTANCE_TAKEN_VALUE_MIN = 0 COMMERCIAL_PACT_ACCEPTANCE_TAKEN_VALUE_MAX = 100 MIGRATION_PACT_ACCEPTANCE_OPINION_FACTOR = 0.5 MIGRATION_PACT_ACCEPTANCE_ATTITUDE_ALLIANCE = 10 MIGRATION_PACT_ACCEPTANCE_ATTITUDE_COEXIST = 0 MIGRATION_PACT_ACCEPTANCE_THREAT_MULT = -0.5 # scales with actual threat MIGRATION_PACT_ACCEPTANCE_OTHER_ATTITUDE = 0 MIGRATION_PACT_ACCEPTANCE_DISTANCE_MULT = -0.05 # per 1 border distance PREFTL_PACT_ACCEPTANCE_OPINION_FACTOR = 1 PREFTL_PACT_ACCEPTANCE_ATTITUDE_ALLIANCE = 100 PREFTL_PACT_ACCEPTANCE_ATTITUDE_COEXIST = 50 PREFTL_PACT_ACCEPTANCE_OTHER_ATTITUDE = 0 VASSALIZATION_ACCEPTANCE_PROTECTORATE_MULT = 0.1 # multiplied by number of techs potential overlord is ahead in VASSALIZATION_ACCEPTANCE_PROTECTORATE_MAX = 20 VASSALIZATION_ACCEPTANCE_NUM_POPS = -0.0025 # per pop VASSALIZATION_ACCEPTANCE_POWER_DIFFERENCE_MIN = 1.5 VASSALIZATION_ACCEPTANCE_POWER_DIFFERENCE_MULT = 15 # for each 1x over min VASSALIZATION_ACCEPTANCE_POWER_DIFFERENCE_MAX = 100 VASSALIZATION_ACCEPTANCE_ATTITUDE_ALLIANCE = 20 VASSALIZATION_ACCEPTANCE_ATTITUDE_COEXIST = 0 VASSALIZATION_ACCEPTANCE_ATTITUDE_ATTACK = -1000 VASSALIZATION_ACCEPTANCE_OTHER_ATTITUDE = -20 VASSALIZATION_ACCEPTANCE_OTHER_THREAT_MULT = 0.2 VASSALIZATION_ACCEPTANCE_OTHER_THREAT_MAX = 20 VASSALIZATION_ACCEPTANCE_DISTANCE_MULT = -0.5 # per 1 border distance VASSALIZATION_ACCEPTANCE_LOYALTY_MULT = 2.0 OFFER_VASSALIZATION_ACCEPTANCE_ATTITUDE_VASSALIZE = 100 OFFER_VASSALIZATION_ACCEPTANCE_OTHER_ATTITUDE = -1000 OFFER_TRADE_ACCEPTANCE_ATTITUDE = -1000 # if attitude is trade = no OFFER_TRADE_MIN_RESOURCE_THRESHOLD = 0.8 # if ai want for an accumulative resource is at least max * this it won't trade away that resource TRADE_MAX_RESOURCE_PERCENT = 0.3 TRADE_MIN_RESOURCE_DELTA = 10 TRADE_MIN_RESOURCE_STOCKPILE = 500 TRADE_RESOURCE_STOCKPILE_UNDER = 0.33 # AI will want to trade one resource for another if stockpile is this low (fraction of max storage) TRADE_RESOURCE_STOCKPILE_OVER = 0.75 # AI will want to trade one resource for another if stockpile is over this (fraction of max storage) TRADE_RESOURCE_FRACTION_MIN = 0.1 # How much of stockpile AI should offer to trade (min) TRADE_RESOURCE_FRACTION_MAX = 0.2 # How much of stockpile AI should offer to trade (max) MIN_WILLINGNESS_TO_OFFER_TRADE = 0.75 # AIs with a personality whose trade willingness is below this will not offer trades MIN_RELATION_TO_TRADE_SPECIMENS = 750 # AIs need a good relation to trade specimens TRADE_VALUE_RESOURCE_INCOME_BASE = 50 # used for calculating resource income effect (lower = more value reduction from higher income) TRADE_VALUE_RESOURCE = 2 # for minerals and energy (scaled by income & need) TRADE_VALUE_RESOURCE_MONTHLY_MULT = 0.5 # value of monthly resources is multiplied by this compared to lump-sum TRADE_VALUE_SYSTEM = 5 TRADE_VALUE_COLONY = 0.2 # Per pop TRADE_VALUE_SENSOR_CHARTS = 2 # Per new comms TRADE_VALUE_SENSOR_CHARTS_MAX = 10 TRADE_VALUE_SENSOR_LINK = 0.05 # Per system within their borders TRADE_VALUE_SENSOR_LINK_MAX = 1.0 # Multiplied by treaty years TRADE_VALUE_LOYALTY = 1.0 # Multiplied by the Loyalty offered in the trade TRADE_VALUE_LEADER_TRAIT_DEFAULT = 1 TRADE_VALUE_LEADER_TRAIT_WEIGHT_MULT = 10 TRADE_VALUE_LEADER_MAX_WEIGHT = 100 TRADE_VALUE_LEADER_LEVEL_WEIGHT_MAGIC_NUMBER = 0.2 TRADE_VALUE_FLEET_MILITARY_WEIGHT_MULT = 120 # Above are various acceptance factors for specific actions AI_BUDGETING_START_YEARS = 15 # These variables are used for some of the AI's budgeting to ensure it prioritizes the right things early on AI_BUDGETING_MID_YEARS = 30 AI_BUDGETING_LATE_YEARS = 50 BUILDING_DEMOLISH_THRESHOLD = -1 # At AI weight less than or equal to this, demolish building or district BUILDING_BUILD_THRESHOLD = 1 # Ait AI weight greater than or equal to this, the AI will consider building it. MIN_ASSAULT_ARMIES = 10 MAX_ASSAULT_ARMIES = 50 ASSAULT_ARMIES_PER_POP = 0.001 BUILDING_EXISTS_DIV_SCORE = 1 # The higher this is, the more the AI will avoid building the same building on planets NUM_TRADITIONS_FOR_EDICTS = 49 # How many traditions does the AI want before spending Unity on edicts (there are 49 in total in the base game counting adoption & completion effects) MAX_PLANETS_FOR_BUDGET_FACTOR = 3 # At this amount of planets budget is normalized UNDERDEVELOPED_POP_LIMIT = 1000 # Planets are considered underdeveloped if they have fewer than this many pops UNDERDEVELOPED_PLANET_LIMIT = 3 # The AI prefers not to have more than this many underdeveloped colonies MIN_NAVY_SIZE_FOR_ADMIRAL = 10 # AI wants a navy of at least this fleetsize before buying an admiral FLEET_SPECIALIZATION_REFIT_TRESHOLD = 0.1 # AI will refit its fleet to fit into the admirals specialization if at least this ratio of ships will be upgraded ABORT_MISSION_LIMIT = 0.50 # MilitaryPower fraction below this level will result in AI escaping battle WAR_EXHAUSTION_TO_INTERVENE = 0.25 # AI may want to intervene to help empires with this war exhaustion or higher PEACE_WAR_EXHAUSTION_FACTOR = 100 PEACE_OCCUPATION_FACTOR = 100 PEACE_STATUS_QUO_FACTOR = -75 PEACE_HIGH_WE_STATUS_QUO_FACTOR = 100 PEACE_STALE_WAR_STATUS_QUO_FACTOR = 75 # Extra AI acceptance for status quo when they are in a stale war where nothing can happen STALE_WAR_TIMER = 10 # Number of times the AI has to fail at finding any military objectives to trigger the stale war PEACE_DEMAND_SURRENDER_FACTOR = -100 PEACE_DEFENDING_CLAIM_SYSTEM_FACTOR = -10 # For every system PEACE_DEFENDING_CLAIM_STARBASE_FACTOR = -40 # For systems with upgraded starbases PEACE_DEFENDING_CLAIM_PLANET_FACTOR = -100 # For systems with colonies PEACE_RELATIVE_NAVY_STRENGTH_FACTOR = 50 MIN_WANTED_SCIENTISTS = 1 # Below this AI prioritizes unity spending to get more scientists ENEMY_FLEET_POWER_MULT = 1.2 # AI will need the fleet power of the enemy multiplied by this value to become offensive in an offensive war ENEMY_ARMY_POWER_MULT = 1.0 # AI will need the military power of the enemy multiplied by this value to land armies on planet ENEMY_FLEET_POWER_HOME_SYSTEM_MULT = 1.0 # AI will need the fleet power of the enemy multiplied by this value to attack hostiles in own systems CRISIS_NAVY_SIZE_LIMIT = 100 # Crisis fleets will aim for this size before attacking targets HORDE_NAVY_SIZE_LIMIT = 50 # Horde fleets will aim for this size before attacking targets ANTI_CRISIS_NAVY_SIZE_LIMIT = 50 # Anti-Crisis fleets will aim for this size before attacking targets CONTINGENCY_IGNORE_HUBS_THRESHOLD = 0.5 ATTITUDE_CHANGE_BUFFER = 0 # Don't change attitude if weight diff is less than this AI_COMMUNICATIONS_RANDOM_VALUE = 60 # AI communications days will vary with +- these many days TRANSPORT_FLEET_SIZE = 20 # AI will have transport fleets of this size TRANSPORT_RETREAT_HEALTH_THRESHOLD = 0.75 # If a transport goes below this amount of HP it will try to emergency FTL AUTO_EXPLORE_ATTRACTION_SCORE = 200 # Attraction score to auto explore a system will descrease by this much if system is owned by you or has a planet owned by you AUTO_EXPLORE_COLLABORATION_PENALTY = 750 # Auto survey will be this much less willing to survey a system already assigned to another science ship AUTO_EXPLORE_SYSTEM_OWNED = 1000 # Auto survey is this much less willing to enter into systems owned by other empires MAX_EXPANSION_DISTANCE = 2 # Max number of jumps away AI will build starbases MAX_EXPANSION_DISTANCE_SUBJECT = 2 # Max number of jumps away AI subjects will build starbases EXPANSION_OWN_PRIORITY = 1000 # Priority on rebuilding destroyed starbases in colonized systems EXPANSION_CUT_OFF_SYSTEM_PRIORITY = 10 # Priority on systems cut-off inside own territory EXPANSION_BORDERING_PRIORITY = 500 # How much will AI prioritize bordering systems when building starbases EXPANSION_RESOURCE_PRIORITY = 2 # How much will AI prioritize resource-rich systems when building starbases EXPANSION_COLONY_PRIORITY = 400 # How much will AI prioritize systems with colonizable worlds when building starbases EXPANSION_BYPASS_PRIORITY = 10 # How much will AI prioritize systems with bypasses when building starbases EXPANSION_MIN_VALUE_FOR_HIGH_PRIO = 10 # How much value does a system need to be considered priority over building up existing systems in borders EXPANSION_RANDOM_AMOUNT = 50 # A random roll of this amount is added to each system's score when deciding where to expand next EXPANSION_RESOURCE_GAIN_UPKEEP = 0.5 # When checking candidate systems for outposts, the AI looks at the resources in the system and counts this fraction towards upkeep gain MAX_CLAIM_DISTANCE = 4 # Max number of jumps away AI will make claims on MAX_CLAIM_DISTANCE_SUBJECT = 2 # Max number of jumps away AI subjects will make claims on CLAIM_BASE_VALUE = 100 CLAIM_RESOURCE_FACTOR = 2 # How much will AI prioritize resource-rich systems when making claims CLAIM_BYPASS_FACTOR = 10 # How much will AI prioritize systems with bypasses when making claims CLAIM_RELATIONS_FACTOR = -0.1 # How much will AI factor in opinion when making claims CLAIM_COST_FACTOR = -0.2 # How much will AI prioritize resource-rich systems when making claims CLAIM_COLONY_FACTOR = 25 # How much will AI prioritize colonies when making claims CLAIM_BORDERING_FACTOR = 100 # How much will AI prioritize bordering systems when making claims NO_WARS_FLAG = "ai_no_wars" NO_LEAVE_FED_FLAG = "ai_no_leave_fed" SURRENDER_ACCEPTANCE_HIGHEST = 1 # Display "ready to surrender" in war summary badge SURRENDER_ACCEPTANCE_HIGH = -20 # Display "approaching surrender" in war summary badge SURRENDER_ACCEPTANCE_LOW = -60 # Display "unlikely to surrender" in war summary badge SURRENDER_ACCEPTANCE_LOWEST = -100 # Display "for sure not surrender" in war summary badge AI_ALLOWED_TO_BUY = { "energy" "minerals" "food" "alloys" "consumer_goods" "exotic_gases" "rare_crystals" "volatile_motes" "sr_living_metal" "sr_dark_matter" "sr_zro" } AI_ALLOWED_TO_SELL = { "energy" "minerals" "food" "alloys" "consumer_goods" "exotic_gases" "rare_crystals" "volatile_motes" "sr_living_metal" "sr_dark_matter" "sr_zro" } AI_MIN_CURRENCY_TO_SELL = 1000.0 # If the AI has less currency (trade) than this it will consider selling resources AI_MIN_CURRENCY_INCOME_TO_SELL = 10.0 # If the AI has less currency (trade) gain last month than this it will consider selling resources AI_MAIN_CONSTRUCTION_CURRENCY = "minerals" # Tells the AI which is the most important construction resource AI_RARE_RESOURCES = { "exotic_gases" "rare_crystals" "volatile_motes" } #Tells AI which the "strategic" resources are used for their economy planing AI_MAIN_CONSTRUCTION_CURRENCY_MINIMUM_TARGET = 25 # AI will forbid jobs consuming the main construction currency to reach this level of monthly income to recover from death spiral AI_MAIN_CONSTRUCTION_CURRENCY_EMPIRE_SIZE_MULT = 0.005 # Scaling for the minimum income target so larger empires can recover faster AI_MIN_HABITABILITY_TO_COLONIZE = 0.35 # AI will avoid colonizing planets with habitability lower than this. AI_MIN_BRANCH_OFFICE_WORTH_TO_ESTABLISH = 2.0 # AI megacorporations will not establish branch offices unless value is above this AI_MIN_HOLDING_WORTH_TO_BUILD = 0.0 # AI overlords will not build holdings unless value is above this AI_SLAVE_MARKET_BUY_INTERACTION_CHANCE = 0.05 # Chance that AI will try to buy pops on the slave market during the monthly AI update 1.0 = 100% chance AI_SLAVE_MARKET_SELL_INTERACTION_CHANCE = 0.20 # Chance that AI will try to sell pops on the slave market during the monthly AI update 1.0 = 100% chance AI_SLAVE_MARKET_SELL_LIMIT = 600 # Upper limit on how many pops AI will put on the market SLAVE_BUY_EC_THRESHOLD = 1000 # if we have less ec than this, dont buy slaves SLAVE_BUY_UNEMPLOYMENT_THRESHOLD = 200 # if any one planet has this many unemployed pops, don't consider buying slaves for it SLAVE_BUY_HABITABILITY_THRESHOLD = 0.4 # if we cant find a planet with at least this much habitability for a prospective slave, dont buy it SLAVE_SELL_EC_THRESHOLD = 3000 # if we have more ec than this and a positive net income, then don't sell any slaves SLAVE_SELL_UNEMPLOYMENT_THRESHOLD = 100 # if any one planet has this many unemployed pops on it, consider selling one as a slave SLAVE_SELL_MIN_POPS = 100 # do not sell slaves from this planet if it has this amount of pops, or less SCIENTIST_HIRING_REPLACEMENT_THRESHOLD = 1.25 # When hiring for a job category, how much the score has to be higher than the previous tenants's score to replace him SCIENTIST_HIRING_PREV_JOB_THRESHOLD = 1.1 # When hiring a scientist, how much the better score for the new category has to be compared to your current employment score SCIENTIST_HIRING_UNEMPLOYMENT_MULT = 1.1 # how much of a bonus unemployed scientist get to their job score SCIENTIST_HIRING_SURVEY_MULTIPLIER = 0.5 # when hiring for research, the multiplier applied to a scientist who's on a science ship, to ensure surveying has priority over research SURVEY_COLONIZABLE_SYSTEM_MULTIPLIER = 2 # AI multiplier to incentivize surveying systems with known colonizeable planets WAR_DECLARATION_MAX_DISTANCE = 50 # How far away (in jumps) another empire has to be before the empire will not consider them for declaration WAR_DECLARATION_MALUS_DISTANCE = 25 # Distance between empires (in jumps) at which the AI will be less likely to declare war WAR_DECLARATION_MALUS = 0.05 # malus per jump above the malus distance (above) for each jump WAR_DECLARATION_MINIMUM_SCORE = 0.5 # minimum score multiplier for war declaration after all distance have been applied COLONY_AUTOMATION_COOLDOWN = 3 # Number of days automation will not be done after a build queue item on a planet completes COLONY_AUTOMATION_DISTRICT_PREFERENCE = 1 # Prefer to build districts over buildings unless there are multiple building slots open or this many times as many districts as buildings, minimum 1 DIPLO_ACTION_REPEAT_DELAY = 360 # number of days before the ai will try to repeat a proposal AI_FEDERATION_PROPOSE_LAW_CATEGORY_COOLDOWN = 3600 # number of days cooldown before an AI federation member will suggest changing a law of the same category RESOLUTION_VOTE_PROPOSE_THRESHOLD = 8.0 # the AI weight required to propose a resolution RESOLUTION_VOTE_ABSTAIN_THRESHOLD = 5.5 # the AI weight of a resolution need to be at least this much, else the AI will oppose it RESOLUTION_VOTE_SUPPORT_THRESHOLD = 7.0 # if the AI weight of a resolution reaches this value the AI will vote for it RESOLUTION_VOTE_VETO_THRESHOLD = 1.0 # if the AI hates something this much ( weight is lower ), they might veto it RESOLUTION_VOTE_EMERGENCY_THRESHOLD = 10.0 # if it isnt their own resolution but the AI still loves something this much they might declare it an Emergency Measure RESOLUTION_VOTE_FREEZE_THRESHOLD_DELTA = 3.0 # if the resolution next in line after the current resolution is this much better, the AI will freeze the current resolution RESOLUTION_USE_FAVORS_THRESHOLD_DELTA = 2.0 # if weight reaches the threshold +/- DELTA (support/abstain) AI will use favors to boost their diplo weight # Resolution AI weight is multiplied by values in these ranges based on opinion RESOLUTION_TARGET_OPINION_MIN_FACTOR = 0.0 # Corresponds to Terrible opinion towards the resolution target if resolution is non-harmful, Excellent opinion if harmful RESOLUTION_TARGET_OPINION_BASE_FACTOR = 0.5 # Will be used if opinion towards resolution target is neutral RESOLUTION_TARGET_OPINION_MAX_FACTOR = 1.5 # Corresponds to Excellent opinion towards the resolution target if resolution is non-harmful, Terrible opinion if harmful RESOLUTION_PROPOSER_OPINION_MIN_FACTOR = 0.5 # Corresponds to Terrible opinion towards the proposer RESOLUTION_PROPOSER_OPINION_BASE_FACTOR = 1.0 # Will be used if opinion towards the proposer is neutral RESOLUTION_PROPOSER_OPINION_MAX_FACTOR = 1.3 # Corresponds to Excellent opinion towards the proposer MAX_SUPPORT_PERCENTAGE_FOR_FAVORS_SUPPORTING = 55 # if we are supporting the resolution, don't spend favors if support percentage is above this MIN_SUPPORT_PERCENTAGE_FOR_FAVORS_OPPOSING = 45 # if we are opposing the resolution, don't spend favors if support percentage is below this DIPLO_ACTION_FAVOR_AI_ACCEPTANCE_VALUE = 5 # AI acceptance boost per favor AGREEMENT_INFLUENCED_BY_FAVORS_AI_BREAK_COOLDOWN = 1800 HORDE_INVASION_PLANNING_DEPTH = 5 # How far out does the Horde AI looks for invasion targets (in system hops) PLANETARY_ASCENSION_ALLOWED_SPENDING = 0.1 # How much AI is willing to pay for planetary ascension in relation to the cost of a tradition SWARM_INVASION_PLANNING_DEPTH = 5 # How far out does the Swarm AI looks for invasion targets (in system hops) SWARM_POP_TARGET_MULT = 1.0 # Extra target scoring for swarm (multiplied by number of edible pop on the planet) SWARM_UNEDIBLE_POP_TARGET_MULT = 0.10 # Extra target scoring for swarm (multiplied by number of non edible pop on the planet) SWARM_NUM_DEFENSIVE_FLEETS = 3 SWARM_FULLY_CONQUER_SYSTEM = 1000 # Extra incentive to keep taking a partially conquered system. Mostly relevant for multi-planet systems with no starbase (already destroyed). CONTINGENCY_LINKUP_DESIRE = 10 # how much the contingency wants to link up its various hubs CONTINGENCY_MEGASTRUCTURE_EXTRA_VALUE = 4 # How attractive are megastructures to the Contingency (added to the base value of 1) CONTINGENCY_BASE_DEFENSIVE_FLEETS = 4 # Number of active hubs is added to this CONTINGENCY_CONSTRUCTION_DEPTH = 3 # Number of systems not owned by the contingency construction fleet are willing to go through UNBIDDEN_PORTAL_EXTRA_VALUE = 20 # How much does the Unbidden want to defend their portal (compared to base value of 1) UNBIDDEN_BYPASSES_EXTRA_VALUE = 4 # How attractive are bypasses to the Unbidden (added to the base value of 1) UNBIDDEN_ASTRAL_RIFTS_EXTRA_VALUE = 2 # How attractive are astral rifts to the Unbidden (added to the base value of 1) UNBIDDEN_RIVALS_EXTRA_VALUE = 10 # Extra target scoring for rival invaders (Aberrant and Vehement) UNBIDDEN_TARGET_EXTRA_VALUE = 10 # Extra target scoring for randomly chosen nemesis AVERAGE_FLEET_SIZE_FACTOR = 1 # Ballpark estimate of the minimum size a fleet should be in relation to total fleet power FLEET_MAX_DISTANCE_LOOKUP = 20 # Maximum number of hops the fleet AI should consider when assigning mission. # If no objective is found, the backup AI will send it to the closest objective available, or back to base. FLEET_MAX_DISTANCE_LOOKUP_LARGE = 30 # Maximum number of hops the fleet AI should consider when assigning mission on a large map (800 systems or more). FLEET_MAX_DISTANCE_LOOKUP_HUGE = 50 # Maximum number of hops the fleet AI should consider when assigning mission on a large map (1000 systems or more) CONSTRUCTION_SHIP_DISTANCE_PENALTY = 20 # Score penalty for the distance (number of jumps) for AI construction of mining stations etc OWN_FLEET_POWER_FACTOR = 1.0 # How much does AI count its own fleet power when evaluating forces ALLY_FLEET_POWER_FACTOR = 0.5 # How much does AI count ally fleet power when evaluating forces ENEMY_FLEET_POWER_FACTOR = 1.0 # How much does AI count enemy fleet power when evaluating forces FLEET_SUPERIORITY_FACTOR = 1.5 # How stronger should the AI be before it starts considering splitting fleets (fleet count = relative strength / this factor) CRISIS_FLEET_SUPERIORITY_FACTOR = 1.0 # Same as previous but will be compared to the strongest foe in the universe CRISIS_INHIBITOR_EXTRA_VALUE = 10 # extra incentive for crisis to destroy inhibitors, currently only used by the extra dimensionals AI_FOLLOW_FLEET_DESIRE = 5 # AI desire to follow "take point" fleets from random people AI_FOLLOW_WAR_LEADER_DESIRE = 20 # AI desire to follow "take point" fleets from the war leader CRISIS_EMPIRE_PROTECTIVE_MULT = 1.5 # Used when calculating atitude protective weigth AI_GALCOM_PATROL_ORBIT_TIME_DAYS = 60 # The time that the Galactic Defense Force AI will stay in orbit around a capital before moving to the next one CRISIS_EMPIRE_DESTROY_DESIRE = 1 # AI desire to destroy stars as a crisis empire SHIP_DESIGN_STALE_MONTHS = 24 # AI will redesign its per-role custom designs this often (from scratch; # new tech will upgrade individual components more often however) PROPOSE_EMBASSY_THRESHOLD = 1 # AI scripted weight threshold to propose the embassy diplomatic action SHIP_FLEET_POWER_UPGRADE_THRESHOLD = 1.3 # How much more a ship or defense platform need to increase their fleet power for AI to start upgrading it AI_DESIGNATION_RESOURCES_IN_ECONOMIC_PLAN_BONUS = 1.25 # Bonus to resources gained from designations that align with economic plan, resources we have a surplus of gets divided by this factor AI_DESIGNATION_COOLDOWN = 360 # Number of days that AI has to wait before changing designation again MERCENARY_ENCLAVE_OFFER_FLEET_RENT_DAYS = 3600 # Default amount of days a fleet can be rented for MERCENARY_ENCLAVE_OFFER_FLEET_CONTRACT_PROLONGATION_DAYS = 3600 # Default amount of days a fleet contract can be extended for MERCENARY_ENCLAVE_OFFER_FLEET_CAN_AFFORD_FACTOR = 2.0 # A country should have on the deposit more than the price of fleet hiring multiplied by this value to be able to hire the fleet MERCENARY_ENCLAVE_OFFER_FLEET_POWER_SCORE_FACTOR = 0.8 # The fleet power multiplied by this value defines one of the components of how appealing is the hiring of this fleet MERCENARY_ENCLAVE_OFFER_FLEET_COST_SCORE_FACTOR = -0.2 # The fleet hiring cost multiplied by this value defines one of the components of how appealing is the hiring of this fleet MERCENARY_ENCLAVE_OFFER_FLEET_REMOTENESS_SCORE_FACTOR = -5.0 # The amount of FTL jumps the fleet needs to reach the capital star system of a country multiplied by this value defines one of the components of how appealing is the hiring of this fleet MERCENARY_ENCLAVE_OFFER_FLEET_REMOTENESS_MAX = 1000000 # The fleet hiring cost multiplied by this value defines one of the components of how appealing is the hiring of this fleet MERCENARY_ENCLAVE_OFFER_FLEET_AI_CHANCE_TRHESHOLD = 5 # If a random number is less than this value the most appealing fleet will be hired by a country in the normal state MERCENARY_ENCLAVE_OFFER_FLEET_AI_CHANCE_INWAR_ADD = 80 # If a random number is less than this value the most appealing fleet will be hired by a country in the state of war MERCENARY_ENCLAVE_OFFER_FLEET_AI_CHANCE_PREPARING_WAR_ADD = 20 # If a random number is less than this value the most appealing fleet will be hired by a country in the state of preparing to war MERCENARY_ENCLAVE_OFFER_FLEET_POWER_TO_PRICE_FACTOR = 0.5 # The fleet power multiplied by this value defines the price (in energy) for hiring the fleet MERCENARY_ENCLAVE_OFFER_FLEET_TRUST_PRICE_FACTOR = 0.5 # Hiring a fleet: this value defines the maximal decrease of the price MERCENARY_ENCLAVE_OFFER_FLEET_TRUST_THRESHOLD = 0 # Hiring a fleet: if the merc enclave has opinion of a country that is less than this value the offer is not given MERCENARY_ENCLAVE_OFFER_FLEET_LANDLORD_OPINION_PRICE_FACTOR = 0.75 # Hiring a fleet: this value defines the maximal decrease of the price (if the founder of the merc enclave has the most positive opinion of a country) or the maximal increase of the price (if the founder of the merc enclave has the most negative opinion of a country) MERCENARY_ENCLAVE_OFFER_FLEET_LANDLORD_OPINION_THRESHOLD = -300 # NGameplay::OPINION_POOR: if the opinion of the enclave landlord towards the potential buyer is less than this value the offer vill be not given MERCENARY_ENCLAVE_OFFER_FLEET_CONTRACT_PROLONGATION_POWER_TO_PRICE_FACTOR = 0.25 # The fleet power multiplied by this value defines the price (in energy) for extension of the fleet contract MERCENARY_ENCLAVE_OFFER_FLEET_CONTRACT_PROLONGATION_TRUST_PRICE_FACTOR = 0.5 # Extension of a fleet contract: this value defines the maximal decrease of the price (if the merc enclave has the most positive opinion of a country) or the maximal increase of the price (if the merc enclave has the most negative opinion of a country) MERCENARY_ENCLAVE_OFFER_FLEET_CONTRACT_PROLONGATION_TRUST_THRESHOLD = 0 # Extension of a fleet contract: if the merc enclave has opinion of a country that is less than this value the offer is not given MERCENARY_ENCLAVE_OFFER_FLEET_CONTRACT_PROLONGATION_LANDLORD_OPINION_PRICE_FACTOR = 0.5 # Extension of a fleet contract: this value defines the maximal decrease of the price (if the founder of the merc enclave has the most positive opinion of a country) or the maximal increase of the price (if the founder of the merc enclave has the most negative opinion of a country) MERCENARY_ENCLAVE_OFFER_FLEET_CONTRACT_PROLONGATION_LANDLORD_OPINION_THRESHOLD = -300 # NGameplay::OPINION_POOR # Extension of a fleet contract:if the opinion of the enclave landlord towards the potential buyer is less than this value the offer vill be not given MERCENARY_ENCLAVE_ESTABLISHING_AI_CHANCE_THRESHOLD = 5 # If a random number is less than this value and there is an appropriate fleet in an appropriate star system then the merc enclave will be created ASK_FOR_AGREEMENT_ACCEPTANCE_OVERLORD_LOYALTY_OFFSET = 100 # Acceptance from loyalty = OFFSET+FACTOR*e^(LOYALTY*EXP) ASK_FOR_AGREEMENT_ACCEPTANCE_OVERLORD_LOYALTY_FACTOR = -122 ASK_FOR_AGREEMENT_ACCEPTANCE_OVERLORD_LOYALTY_EXP = 0.06 NEGOTIATE_AGREEMENT_ACCEPTANCE_SUBJECT_POWER_STEP = 375 DEMAND_SUBJUGATION_ACCEPTANCE_SUBJECT_POWER_STEP = 375 NEGOTIATE_AGREEMENT_ACCEPTANCE_OPINION_FACTOR = 0.333 NEGOTIATE_AGREEMENT_MIN_ECONOMY_WEIGHT = 100.0 NEGOTIATE_AGREEMENT_MIN_REFERENCE_RESOURCE = 100.0 # Pretty much only Energy. Tithes are assumed to be on at least this much income. NEGOTIATE_AGREEMENT_MIN_REFERENCE_INTANGIBLE = 10.0 # E.g science. Tithes are assumed to be on at least this much income. NEGOTIATE_AGREEMENT_ACCEPTANCE_ECONOMIC_IMPACT_MULTIPLIER = 500.0 # Very approximately, this corresponds to giving away the entire economy NEGOTIATE_AGREEMENT_ACCEPTANCE_INTANGIBLE_IMPACT_MULTIPLIER = 500.0 NEGOTIATE_AGREEMENT_MAX_ACCEPTANCE_FROM_TERMS = 1000 NEGOTIATE_AGREEMENT_MIN_ACCEPTANCE_FROM_TERMS = -10000 # Loyalty is multiplied by this and added to (overlord's) acceptance NEGOTIATE_AGREEMENT_ACCEPTANCE_LOYALTY_RELATIVE_POWER_PATHETIC = 0.5 NEGOTIATE_AGREEMENT_ACCEPTANCE_LOYALTY_RELATIVE_POWER_INFERIOR = 1 NEGOTIATE_AGREEMENT_ACCEPTANCE_LOYALTY_RELATIVE_POWER_EQUIVALENT = 2 NEGOTIATE_AGREEMENT_ACCEPTANCE_LOYALTY_RELATIVE_POWER_SUPERIOR = 4 NEGOTIATE_AGREEMENT_ACCEPTANCE_LOYALTY_RELATIVE_POWER_OVERWHELMING = 8 # If subject is/will be a Specialist, Loyalty is multiplied by this and added to (overlord's) acceptance NEGOTIATE_AGREEMENT_ACCEPTANCE_LOYALTY_SPECIALIST = 1 SPECIMEN_TRADE = "has_already_traded_specimens" SPECIMEN_TRADE_FLAG_DAYS = 3600 SECRET_FEALTY_PLEDGE_TERMS_MULTIPLIER = 14 # Multiplied with the disloyalty of a subject. If this is higher, the AI subject is more likely to pledge Secret Fealty SECRET_FEALTY_PLEDGE_TERMS_BONUS = 100 # A higher value makes the AI subject more likely to pledge a Secret Fealty to another empire SECRET_FEALTY_PROPOSE_TERMS_MULTIPLIER = 14 # # Multiplied with the disloyalty of a subject. If this is higher, the AI is more likely to propose a subject to pledge Secret Fealty SECRET_FEALTY_PROPOSE_TERMS_BONUS = 100 # A higher value makes the AI subject more likely to propose for a subject empire to pledge a Secret Fealty to them SECRET_FEALTY_BREAK_TERMS_MULTIPLIER = 14 # Multiplied with the loyalty of a subject. If this is higher, the AI subject is more likely to break Secret Fealty SECRET_FEALTY_BREAK_TERMS_BONUS = 100 # A higher value makes the AI subject more likely to break a Secret Fealty to another empire SECRET_FEALTY_BREAK_LOYALTY_THRESHOLD = 30 # Subject will break the pledge when loyalty reaches this value. SECRET_FEALTY_BREAK_RELATIVE_POWER_THRESHOLD = 0.75 # Subject will break the pledge when potential overlords relative power to current overlord is lower than this value. FORMLESS_ANCHOR_EXTRA_VALUE = 20 # How much does the Formless want to defend their anchor (compared to base value of 1) DIMENSIONAL_LOCK_AI_WEIGHT_DISTANCE_TO_CAPITAL_MAX_WEIGHT = 100 # How important is the distance from a bypass to the capital DIMENSIONAL_LOCK_AI_WEIGHT_RIVALRY = 100 # How important is a bypass linking to a system which owner is a rival DIMENSIONAL_LOCK_AI_WEIGHT_WAR = 1000 # How important is a bypass linking to a system which owner is at war DIMENSIONAL_LOCK_AI_WEIGHT_ALLIANCE = -50 # How important is a bypass linking to a system which owner is an ally DIMENSIONAL_LOCK_AI_WEIGHT_CLOSED_BORDERS = 30 # How important is a bypass linking to a system with closed borders DIMENSIONAL_LOCK_AI_WEIGHT_NO_OWNER = 50 # How important is a bypass linking to a system with no owner # Flags that indicate what cosmic storm an AI country in affected by AFFECTED_BY_SHROUD_STORM_FLAG = "affected_by_shroud_storm" AFFECTED_BY_GRAVITY_STORM_FLAG = "affected_by_gravity_storm" AFFECTED_BY_SOLAR_STORM_FLAG = "affected_by_solar_storm" # location weights for the AI assigning leaders to location # higher priority locations get leaders first LOCATION_WEIGHT_PLANET_MULTIPLIER = 1.0 # the multiplier is applied to number of pops LOCATION_WEIGHT_FLEET_MULTIPLIER = 1.0 # the multiplier is applied to number of ships in the fleet LOCATION_WEIGHT_FEDERATION_MULTIPLIER = 1.0 # the multiplier is applied to the number of members in the federation LOCATION_WEIGHT_GALACTIC_COMMUNITY = 100.0 # Weight for the galactic community when it is formed, this is not a multiplier but a flat value # Flags that indicate what cosmic storm an AI country in affected by AFFECTED_BY_SHROUD_STORM_FLAG = "affected_by_shroud_storm" AFFECTED_BY_GRAVITY_STORM_FLAG = "affected_by_gravity_storm" AFFECTED_BY_SOLAR_STORM_FLAG = "affected_by_solar_storm" VOIDWORMS_NEWBORNS_SHIP_SIZE = "voidworms_small" # Shipsize of ships created from bombardments VOIDWORMS_EXPLORER_SHIP_SIZE = "voidworms_medium" # Shipsize of the ships exploring the galaxy VOIDWORMS_ADULTS_SHIP_SIZE = "voidworms_large" # Shipsize of the ships waiting to be merged into aggressive fleets VOIDWORMS_AGRESSIVE_SHIP_SIZE = "voidworms_titan" # Shipsize of the ships attacking and bombarding players VOIDWORMS_HOME_SYSTEM_FLAG = "voidworms_system" # Voidworms home system flag (can be multiple systems) VOIDWORMS_STARBASE = "voidworms_starbase" # Voidworms starbase flag VOIDWORMS_NEW_FLEET_NAME = "NAME_Voidworms" # Voidworms fleet new when they split VOIDWORMS_MINIMUM_POPS_TO_TARGET = 1000 # Minimum pops on a planet to be targeted for bombardments VOIDWORMS_MAXIMUM_POPS_TO_KILL = 300 # Maximum of pops a voidworm fleet may kill in a single attack VOIDWORMS_MAXIMUM_POPS_TO_KILL_CIVILIAN = 100 # Maximum of pops a voidworm fleet may kill in a single attack (Civilian difficulty) VOIDWORMS_NAVAL_CAP_PER_FLEET = { 240 300 } # Limit of used naval capacity allowed per voidworm fleet VOIDWORM_KILLED_POPULATION_COUNT = "voidworm_killed_population_count" # Variables holding a voidworm fleet kill count in the current attack VOIDWORM_ATTACK_AGAINST_PLAYER_COOLDOWN_DAYS = 9000 # How long a country cannot be targeted by a voidworm attack after having being targeted VOIDWORM_RECENTLY_TARGETED_FLAG = "was_recently_targeted_by_voidworms" # Flag used to prevent voidworms attack VOIDWORM_EXPLORING_FACTOR = 10 # Threshold (%) to go explore the galaxy from the home system VOIDWORM_WANDERING_FACTOR = 5 # Threshold (%) to wander among the different planets of the hom system VOIDWORM_EXPLORATION_MAX_JUMPS = 25 # Maximum jumps from home system to picked system to explore VOIDWORM_CRISIS_ACTIVE = "voidworm_crisis_active" # Flag to communicate to the ai to use the crisis behaviour VOIDWORM_AGGRESSIVE_FLEETS_MAX_SHIPS = 1 # How many ships maximum is there in a single aggressive fleet VOIDWORM_CRISIS_AGGRESSIVE_FLEETS_MAX_SHIPS = 3 # How many ships maximum is there in a single aggressive fleet during the crisis VOIDWORM_BOMBARDMENT_IMMUNITY_FLAG = "voidworms_bombardment_disabled" # Country flag to make countries immune to voidworm attacks VOIDWORM_ACTIVELY_BOMBARDING_FLAG = "is_actively_bombarding" # Country flag to check if Voidworm fleet is actively bombarding a planet CREATURE_DESIGNER_MUTATION_TYPE_PREFERENCES = { 3 2 1 } # How many mutations of each type the AI attempts to apply ( Offensive, Defensive, Auxiliary ) DEEPSPACE_CITADEL_INNER_RADIUS_PERCENTAGE = 0.9 # the AI will build the deep space citadel at this percentage of the inner radius of a system }