diff --git a/gamedir/Data-1.13/Ja2_Options.INI b/gamedir/Data-1.13/Ja2_Options.INI
index 1ecb28934..7dd42aea6 100644
--- a/gamedir/Data-1.13/Ja2_Options.INI
+++ b/gamedir/Data-1.13/Ja2_Options.INI
@@ -4225,7 +4225,7 @@ MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0
;------------------------------------------------------------------------------------------------------------------------------
; The player can acquire and spend the Intel resource. This resource is closely tied to espionage and information brokering.
-; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconaissance roleplay.
+; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconnaissance roleplay.
;
; Intel can be gained in several ways:
; - interactive actions (like reading classified documents in a military base, hacking computers) can give one-time resources.
@@ -4241,6 +4241,7 @@ MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0
; - After you've received your first intel, you will receive an email with further tips on this. One will be the link to the
; R.I.S. website. You can buy information on several things (troop presence & movement, enemy VIPs, location of imprisoned mercs...) here.
; - Rumours say that a special trader deals high-tech weaponry exclusively for intel.
+; - Disguised spies can use it to boost their chances of creating turncoats out of enemies, see the 'Covert Ops' section of Skills_Settings.ini.
;------------------------------------------------------------------------------------------------------------------------------
RESOURCE_INTEL = TRUE
diff --git a/gamedir/Data-UB/AddOns/Data-UB-1.13/Ja2_Options.ini b/gamedir/Data-UB/AddOns/Data-UB-1.13/Ja2_Options.ini
index 1e5e7b602..cac7a3a9a 100644
--- a/gamedir/Data-UB/AddOns/Data-UB-1.13/Ja2_Options.ini
+++ b/gamedir/Data-UB/AddOns/Data-UB-1.13/Ja2_Options.ini
@@ -82,7 +82,7 @@
;------------------------------------------------------------------------------------------------------------------------------
; Player mercs, valid values 16 through 32, default is 24
-MAX_NUMBER_PLAYER_MERCS = 24
+MAX_NUMBER_PLAYER_MERCS = 32
; Player vehicles, valid values 2 through 6, default is 2
MAX_NUMBER_PLAYER_VEHICLES = 2
@@ -108,7 +108,6 @@ MAX_NUMBER_CIVS_IN_TACTICAL = 32
MAX_STRATEGIC_ENEMY_GROUP_SIZE = 20
-
;------------------------------------------------------------------------------------------------------------------------------
; MAX_ITEM_SIZE is the maximum item size you can use in the game. It is possible, with enough attachments that lower a weapon
; size to change the weapon size to a huge number, since 0-1 = 255. If any item with a size between 0 and MAX_WEAPON_SIZE
@@ -124,12 +123,12 @@ MAX_WEAPON_SIZE = 9
OLD_INVENTORY_ITEM_NUMBER = 99
;------------------------------------------------------------------------------------------------------------------------------
-; USE_NEW_CTH_CALCULATION is an experimental switch which causes the game to use a cleaned up version of NCTH calculation.
-; This switch will do nothing if you play with OCTH.
-; The new code is easier to read for programmers and therefore (hopefully) easier to improve. ;-)
-; The switch and the old code will probably be removed in the future.
+; ALLOW_TARGET_HEADANDLEG_IFPRONE is an experimental switch which allows targetting/hitting head/torso/legs for
+; prone targets (until now, hits were always considered on torso).
+; Additionally soldiers are no longer protected from stray bullets in crouched and prone stance.
+; This switch will be removed once this code change has been accepted (or deemed unacceptable).
;------------------------------------------------------------------------------------------------------------------------------
-USE_NEW_CTH_CALCULATION = TRUE
+ALLOW_TARGET_HEADANDLEG_IFPRONE = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -198,6 +197,8 @@ USE_XML_TILESETS = FALSE
NUM_P_ITEMS = 3
+; should mercs use the backgrounds
+BACKGROUNDS = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -209,40 +210,9 @@ NUM_P_ITEMS = 3
;******************************************************************************************************************************
;------------------------------------------------------------------------------------------------------------------------------
-; The following allow you to change how many and which slots from prof.dat are available for
-; male and female IMPs. The "usual" slots are 51,52,53 for males and 54,55,56 for females. Other
-; slots will work only if they have a blank full name in prof.dat. Even slots without full IMP voice
-; sets will work although the IMPs will be silent a lot of the time.
-;
-; There should be one IMP_[FE]MALE_X for each slot. The total number is still limited by
-; MAX_IMP_CHARACTERS above. You can reduce the numbers but there should always be at least one
-; male and one female slot available.
-;
-; If there are any errors in the following then the default values (3 males slots 51-53 and 3 females
-; slots 54-56) will be used instead.
+; Note: There are no longer ini settings for IMP slots. Any slot in MercProfiles.xml with 6 will be used for IMPs.
;------------------------------------------------------------------------------------------------------------------------------
-IMP_MALE_CHARACTER_COUNT = 8
-IMP_FEMALE_CHARACTER_COUNT = 3
-
-IMP_MALE_1 = 51
-IMP_MALE_2 = 52
-IMP_MALE_3 = 53
-IMP_MALE_4 = 169
-;UB-v1.13
-IMP_MALE_5 = 57
-
-; The following 3 IMP Males have copied voice sets from IMP 51, 52, 53 (currently all 3 voice sets are in Russian)
-
-IMP_MALE_6 = 192
-IMP_MALE_7 = 193
-IMP_MALE_8 = 194
-;IMP_MALE_8 = 164
-
-IMP_FEMALE_1 = 54
-IMP_FEMALE_2 = 55
-IMP_FEMALE_3 = 56
-
;------------------------------------------------------------------------------------------------------------------------------
; The following values deal with the I.M.P "personalized" merc generation.
;------------------------------------------------------------------------------------------------------------------------------
@@ -305,12 +275,6 @@ MERCS_CAN_BE_ON_ASSIGNMENT = 0
;Can AIM/MERC mercs die while away on other assignments?
MERCS_CAN_DIE_ON_ASSIGNMENT = TRUE
-;How many mercs can die at each difficulty level?
-MAX_MERC_DEATHS_EASY = 1
-MAX_MERC_DEATHS_EXPERIENCED = 2
-MAX_MERC_DEATHS_EXPERT = 3
-MAX_MERC_DEATHS_INSANE = 4
-
;------------------------------------------------------------------------------------------------------------------------------
; Slay Forever - Determines whether the character Slay can stay with your team indefinitely. If set to FALSE, he can
; only be recruited for a limited amount of time.
@@ -318,6 +282,19 @@ MAX_MERC_DEATHS_INSANE = 4
SLAY_STAYS_FOREVER = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; If SLAY_STAYS_FOREVER is set to FALSE this is the chance that Slay will leave if he is left alone in a sector.
+;------------------------------------------------------------------------------------------------------------------------------
+
+SLAY_HOURLY_CHANCE_TO_LEAVE = 15
+
+;------------------------------------------------------------------------------------------------------------------------------
+; On the A.I.M/M.E.R.C websites, a merc's gear kits are always available during the hiring process, even if they've been bought
+; before.
+;------------------------------------------------------------------------------------------------------------------------------
+
+GEARKITS_ALWAYS_AVAILABLE = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Recruitable Speck - If set to TRUE, Speck can be hired from MERC website. Hired, he'll no longer appear at Speck Com, but will
; comment on current situation from battlefield if able to (alive and well).
@@ -344,6 +321,13 @@ RECRUITABLE_JOHN_KULBA_DELAY = 14
RECRUITABLE_JA1_NATIVES = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; If outstanding debt to MERC exceeds this, Speck will complain on the website.
+; Note: this does NOT affect whether MERC goes bankrupt, as this is independent of the amount of debt
+;------------------------------------------------------------------------------------------------------------------------------
+
+MERC_BANKRUPT_WARNING = 5000
+
;------------------------------------------------------------------------------------------------------------------------------
; Early Recruitment of Rebels - This enables recruiting Rebels earlier without the need to alter their .npc files.
; Valid values are from 1 to 3 where:
@@ -368,7 +352,7 @@ SHOW_SKILLS_IN_HIRING_PAGE = FALSE
; 1 = full random stats for all profiles based on their "TableData\MercProfiles.xml" values
; 2 = partial random stats for any mercs that have random stats defined (Enabled = 1) in "TableData\RandomStats.xml"
; 3 = build random stats from (BaseAttribute) in "TableData\RandomStats.xml", range determined by level
-; Hardcoded formula for 3 is BaseAttribute + 4 * EXP + Random(9) + Random(8)
+; hardcoded formula for 3 is BaseAttribute + 4 * EXP + Random(9) + Random(8)
; 4 = full randomization of mercs, including traits, gear kits and all statistics
;
; MERCS_RANDOM_GEAR_KITS: This option only takes effect, if MERCS_RANDOM_STATS = 4
@@ -404,8 +388,8 @@ MERCS_RANDOM_EXP_RANGE = 1
; If MERCS_RANDOM_START_SALARY set TRUE, MAX_MODIFIER is the allowed +/- random percentage range (0-100, default = 30)
;------------------------------------------------------------------------------------------------------------------------------
-MERCS_RANDOM_START_SALARY = TRUE
-MERCS_RANDOM_START_SALARY_PERCENTAGE_MAX_MODIFIER = 30
+MERCS_RANDOM_START_SALARY = TRUE
+MERCS_RANDOM_START_SALARY_PERCENTAGE_MAX_MODIFIER = 30
;******************************************************************************************************************************
@@ -448,6 +432,23 @@ MINE_INCOME_PERCENTAGE = 100
MERC_LEVEL_UP_SALARY_INCREASE_PERCENTAGE = 25
+;------------------------------------------------------------------------------------------------------------------------------
+; If MINE_REQUIRES_WORKERS is TRUE, mine income also depends on the number or workers employed in a town.
+; The maximum number of workers for each sector can be set in SectorNames.xml.
+; For mine income, the total sum of all workers in a town are used, once a town employs it's maximum of workers, this modifier
+; is at a 100%.
+;------------------------------------------------------------------------------------------------------------------------------
+MINE_REQUIRES_WORKERS = FALSE
+
+; When we liberate a a sector for the first time, this is the rate of workers present. Values from 0.0 to 1.0.
+WORKERRATE_PRESENT_INITIALLY = 0.25
+
+; the cost of training a single worker
+WORKER_TRAINING_COST = 30
+
+; the amount of worker training points needed to train a worker, the amount a trainer generates can be seen on their portrait
+WORKER_TRAINING_POINTS = 100
+
;------------------------------------------------------------------------------------------------------------------------------
; Enable/Disable the ability to sell unneeded equipment to the locals.
;
@@ -480,9 +481,6 @@ MILITIA_COST_MULTIPLIER_REGULAR = 1
; ALLOW_TRAINING_ELITE_MILITIA must be set to TRUE, otherwise this promotion is impossible.
MILITIA_COST_MULTIPLIER_ELITE = 2
-; Multiplier for the price of training Mobile Militia.
-MILITIA_COST_MULTIPLIER_MOBILE = 3
-
;------------------------------------------------------------------------------------------------------------------------------
; Daily prices for maintaining one militiaman of each type.
;
@@ -495,10 +493,6 @@ MILITIA_COST_MULTIPLIER_MOBILE = 3
DAILY_MILITIA_UPKEEP_TOWN_GREEN = 10
DAILY_MILITIA_UPKEEP_TOWN_REGULAR = 20
DAILY_MILITIA_UPKEEP_TOWN_ELITE = 30
-DAILY_MILITIA_UPKEEP_MOBILE_GREEN = 15
-DAILY_MILITIA_UPKEEP_MOBILE_REGULAR = 30
-DAILY_MILITIA_UPKEEP_MOBILE_ELITE = 45
-
;------------------------------------------------------------------------------------------------------------------------------
; Change the cost of helicopter movement PER SECTOR.
@@ -590,6 +584,12 @@ CREATURE_TURN_SPEED_UP_FACTOR = 1.0
MILITIA_TURN_SPEED_UP_FACTOR = 1.0
CIVILIAN_TURN_SPEED_UP_FACTOR = 1.0
+;------------------------------------------------------------------------------------------------------------------------------
+; Allows to modify scroll speed in tactical view
+; Range: 0.5 - 2.0, default is 1.0
+;------------------------------------------------------------------------------------------------------------------------------
+SCROLL_SPEED_FACTOR = 1.0
+
;------------------------------------------------------------------------------------------------------------------------------
; Should the game use the externalized sector loadscreens?
; If set to TRUE, the game will use the loadscreens defined in TableData\Map\SectorLoadscreens.xml.
@@ -634,6 +634,16 @@ RESTRICT_FEMALE_ENEMIES_EXCEPT_ELITE = TRUE
;------------------------------------------------------------------------------------------------------------------------------
SMALL_SIZE_PB = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Hide progress bar when cursor is on the top row of the map
+;------------------------------------------------------------------------------------------------------------------------------
+AUTO_HIDE_PB = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If set to TRUE, roof structures (e.g. sandbags) above explored rooms will be hidden at ground level view
+;------------------------------------------------------------------------------------------------------------------------------
+HIDE_EXPLORED_ROOM_ROOF_STRUCTURES = TRUE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -645,9 +655,9 @@ SMALL_SIZE_PB = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; Change to increase volume for weapon sounds
-; Range: 0-100%
+; Range: 0-1000%
; 0 = no change
-; 100 = max volume
+; 1000 = max volume
;------------------------------------------------------------------------------------------------------------------------------
WEAPON_SOUND_EFFECTS_VOLUME = 0
@@ -659,7 +669,23 @@ WEAPON_SOUND_EFFECTS_VOLUME = 0
;------------------------------------------------------------------------------------------------------------------------------
MAX_PERCENT_NOISE_SILENCED_SOUND = 35
+;------------------------------------------------------------------------------------------------------------------------------
+; These options control fire ambient sound and it's volume
+;------------------------------------------------------------------------------------------------------------------------------
+ENABLE_TA = TRUE
+VOLUME_TA = 100
+;------------------------------------------------------------------------------------------------------------------------------
+; These options control sector steady ambients
+;------------------------------------------------------------------------------------------------------------------------------
+ENABLE_SSA = FALSE
+VOLUME_SSA = 100
+DEBUG_SSA = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; New weapon sound system
+;------------------------------------------------------------------------------------------------------------------------------
+NWSS = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -690,6 +716,11 @@ MAX_PERCENT_NOISE_SILENCED_SOUND = 35
REVEAL_DROPPED_ENEMY_ITEMS_AFTER_COMBAT = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; Show backpack owner's name on the ground and in taking items interface
+;------------------------------------------------------------------------------------------------------------------------------
+SHOW_BACKPACK_OWNER = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; This section controls the behavior of the "SHIFT + F" hotkey.
; This hotkey is normally used to to remove attachments from all items in the sector and unload all weapons.
@@ -727,6 +758,12 @@ GOGGLE_SWAP_AFFECTS_ALL_MERCS_IN_SECTOR = TRUE
AUTOMATICALLY_FLAG_MINES_WHEN_SPOTTED = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; If this is "TRUE", an animation will be played on the ground near any armed time bomb to warn the player of immediate danger.
+;------------------------------------------------------------------------------------------------------------------------------
+
+TIME_BOMB_WARNING = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; If this is "TRUE" your merc won't says anything when spotting a mine. He will just place a blue flag if the setting
; "AUTOMATICALLY_FLAG_MINES_WHEN_SPOTTED = TRUE" otherwise you will be asked if you want to place a blue flag.
@@ -781,6 +818,16 @@ USE_ENHANCED_DESCRIPTION_BOX = 0
USE_NEW_BURST-AUTO_TARGETING_CURSORS = 1
+;------------------------------------------------------------------------------------------------------------------------------
+; Set default number of autofire bullets:
+; 0 = Max bullets allowed with max aiming
+; 1..10 = Set default number of bullets
+;------------------------------------------------------------------------------------------------------------------------------
+
+SET_DEFAULT_AUTOFIRE_BULLETS_SMG = 1
+SET_DEFAULT_AUTOFIRE_BULLETS_AR = 1
+SET_DEFAULT_AUTOFIRE_BULLETS_MG = 1
+
;------------------------------------------------------------------------------------------------------------------------------
; When this is set to TRUE, it will change the way that the CTH Bar and "F" key feedback report our CTH. Based on
; the characters' Experience Level, Wisdom, Marksmanship and Sniper Skill (if any), the program will decide how accurate our
@@ -823,7 +870,7 @@ TACTICAL_FACE_ICON_STYLE = 0
; If no camouflaged portrait is available (Data\Faces\xxxCAMO folders) , you see the standard face portrait.
;------------------------------------------------------------------------------------------------------------------------------
-SHOW_CAMOUFLAGE_FACES = FALSE
+SHOW_CAMOUFLAGE_FACES = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; Show health text when hovering the mouse over an enemy / creature.
@@ -843,27 +890,15 @@ SHOW_ENEMY_HEALTH = 1
; Alt health bar additionally shows suppression shock level and current cover
; 0 - nothing
; 1 - default health bar
-; 2 - smaller alt health bar
-; 3 - larger alt health bar
-; 4 - small health bar + AP counter
-; 5 - large health bar + AP counter
+; 2 - alt health bar
+; 3 - alt health bar + AP counter
;------------------------------------------------------------------------------------------------------------------------------
SHOW_HEALTHBARSOVERHEAD = 1
-;------------------------------------------------------------------------------------------------------------------------------
-; Show current merc's cover using color - GREEN, YELLOW, ORANGE and RED
-; 0 - do not show cover
-; 1 - show as small square to the right of the health bar
-; 2 - show using color of merc's name
-; 3 - same as 1, show only in stealth or when disguised
-; 4 - same as 2, show only in stealth or when disguised
-;------------------------------------------------------------------------------------------------------------------------------
-
-SHOW_COVER_INDICATOR = 0
-
;------------------------------------------------------------------------------------------------------------------------------
; How should the game display the enemy/player hit counter?
+
; 0 = Show damage inflicted as used to
; 1 = Show "?" as indicator if you scored a hit
; 2 = Do not show anything at all (If you scored a hit you need to tell by target's reaction)
@@ -875,6 +910,29 @@ ENEMY_HIT_COUNT = 0
PLAYER_HIT_COUNT = 0
+;------------------------------------------------------------------------------------------------------------------------------
+; Show additional hit info: amount of damage absorbed by armour
+;------------------------------------------------------------------------------------------------------------------------------
+
+SHOW_HIT_INFO = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Show additional info in NCTH cursor (press ALT)
+; 0 - default cursor
+; 1 - show enemy armour
+; 2 - show armour, weapons and head items
+;------------------------------------------------------------------------------------------------------------------------------
+
+ADDITIONAL_NCTH_CURSOR_INFO = 0
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Visual improvements for NCTH cursor:
+; 0 - default cursor
+; 1 - improved cursor: show extended AP info, laser dot, scope mode icon, limit maximum displayed aperture size (100)
+; 2 - compact cursor: aiming level as numbers, limit displayed autofire bullets (10), limit maximum displayed aperture size (50)
+;------------------------------------------------------------------------------------------------------------------------------
+IMPROVED_NCTH_CURSOR = 0
+
;------------------------------------------------------------------------------------------------------------------------------
; Show additional suppression information above soldier:
; light gray counter - suppression points from attack (they are calculated and shown after attack)
@@ -897,14 +955,6 @@ SHOW_SUPPRESSION_USE_ASTERISK = FALSE
SHOW_SUPPRESSION_SCALE_ASTERISK = FALSE
SHOW_SUPPRESSION_COUNT_ALT = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; Default: 10000
-; regulates the bullet hit impact to stamina. The lower is the value, the more stamina is taken out. With the value of 6900 it
-; takes 3-4 hits to take all the breath away.
-;------------------------------------------------------------------------------------------------------------------------------
-
-STAMINA_HIT = 6900
-
;------------------------------------------------------------------------------------------------------------------------------
; Additional mouse keys (and the "scrolling wheel") are enabled. Now we can use the mouse wheel to aim the weapon,
; toggle between merc-s or auto fire length. Middle mouse button is used to look (= "L" key), alt + middle mouse button changes
@@ -922,6 +972,33 @@ ENABLE_EXT_MOUSE_KEYS = TRUE
ALTERNATE_MOUSE_COMMANDS = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Quick items: press ALT+[1..0]
+; Possible Values:
+; [0] - nothing
+; [-1] - HTH (punch)
+; [-2] - Melee (knives)
+; [-3] - Taser (Stun gun)
+; [-4] - Handcuffs
+; [-5] - Sidearm (pistols, machine pistols, small SMGs)
+; [-6] - First Aid kits
+; [-7] - Binoculars
+; [-8] - X-Ray detector
+; [-9] - Metal Detector
+; Positive values: item id from items.xml
+;------------------------------------------------------------------------------------------------------------------------------
+
+QUICK_ITEM_1 = -1
+QUICK_ITEM_2 = -2
+QUICK_ITEM_3 = -3
+QUICK_ITEM_4 = -4
+QUICK_ITEM_5 = -5
+QUICK_ITEM_6 = -6
+QUICK_ITEM_7 = -7
+QUICK_ITEM_8 = -8
+QUICK_ITEM_9 = -9
+QUICK_ITEM_0 = 1636
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: FALSE
; Alternative aiming-levels for targets.
@@ -933,7 +1010,7 @@ ALT_AIMING_ENABLED = TRUE
; Default: FALSE
; The merc can now perform aimed burst fire and aimed auto fire.
; Due to the reworked auto and burst penalties aimed auto-fire is less efficient then aimed burst for all guns. There is simply
-; no use in firing more then 3 rounds due to low CtH od the last bullets. Aiming is performed by the mouse scrolling wheel.
+; no use in firing more then 3 rounds due to low CtH for the last bullets. Aiming is performed by the mouse scrolling wheel.
; ENABLE_EXT_MOUSE_KEYS must be set to TRUE for this option.
;
; If mousewheel does not work for aiming, alternative method via [,] (comma) to increase aim.
@@ -978,12 +1055,28 @@ ALLOW_LAZY_CIVILIANS = TRUE
CIVILIANS_AVOID_PLAYER_MINES = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: FALSE
+; Additional civilians can be placed in maps via Lua scripts, see Scripts/strategicmap.lua: HandleSectorTacticalEntry()
+; It is also possible to place new merchants (that don't require a NPC profile) this way, see the same file
+;------------------------------------------------------------------------------------------------------------------------------
+ALLOW_EXTRA_CIVILIANS = FALSE
+
+; Allow placing of new merchants
+; Note: this requires ALLOW_EXTRA_CIVILIANS to be TRUE
+ALLOW_EXTRA_MERCHANTS = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: FALSE
; Add small smoke after explosion (only outdoor, not underground, only regular type explosion)
;------------------------------------------------------------------------------------------------------------------------------
-ADD_SMOKE_AFTER_EXPLOSION = FALSE
+ADD_SMOKE_AFTER_EXPLOSION = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Fire explosion creates light source
+;------------------------------------------------------------------------------------------------------------------------------
+ADD_LIGHT_AFTER_EXPLOSION = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; Default: FALSE
@@ -1001,6 +1094,14 @@ ALLOW_EXPLOSIVE_ATTACHMENTS = FALSE
ALLOW_SPECIAL_EXPLOSIVE_ATTACHMENTS = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: FALSE
+; All hand/GL grenades of Normal/Stun/Flashbang type without tag
+; will detonate on next turn instead of instant explosion
+;------------------------------------------------------------------------------------------------------------------------------
+
+DELAYED_GRENADE_EXPLOSION = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: 100
; Chance to say annoying phrase.
@@ -1008,6 +1109,7 @@ ALLOW_SPECIAL_EXPLOSIVE_ATTACHMENTS = FALSE
; 2. when battle turns to real time
; 3. when merc see enemy
; 4. approve action
+; 5. out of ammo and gun's magsize < 5
;------------------------------------------------------------------------------------------------------------------------------
CHANCE_SAY_ANNOYING_PHRASE = 40
@@ -1032,7 +1134,7 @@ SHOT_HEAD_PENALTY = 4
; Modifer of damage when hit in head (for enemy and mercs).
;------------------------------------------------------------------------------------------------------------------------------
-SHOT_HEAD_DIVISOR = 2
+SHOT_HEAD_MULTIPLIER = 2
;------------------------------------------------------------------------------------------------------------------------------
; Default: 0
@@ -1041,10 +1143,45 @@ SHOT_HEAD_DIVISOR = 2
SHOOT_UNSEEN_PENALTY = 100
+; This divisor for shooting at enemies that are out of range will cause a penalty to CTH (only applies to OCTH)
+OUT_OF_SIGHT_OR_GUN_RANGE = 2
+
+;------------------------------------------------------------------------------------------------------------------------------
; In turnbased combat, do not automatically change animation from 'running' to 'standing' after arriving at target lcoation (same for walking etc.)
; This saves AP if we decide to immediately continue moving to another location.
+;------------------------------------------------------------------------------------------------------------------------------
NO_STANDING_ANIM_ADJUSTMENT_IN_COMBAT = TRUE
+; if TRUE, changing items in the inventory costs AP
+INVENTORY_MANIPULATION_COSTS_AP = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If inventory manipulation costs are activated this modifier affects the item weight based AP calculations.
+; valid values from 1.0 to 100
+;------------------------------------------------------------------------------------------------------------------------------
+INV_AP_WEIGHT_DIVISOR = 5
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: TRUE
+; Automatically close tactical inventory screen and return to team panel when Player ends his turn.
+;------------------------------------------------------------------------------------------------------------------------------
+
+AUTO_COLLAPSE_INVENTORY_ON_TURN_END = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: TRUE
+; Don't create new squad for every passenger leaving vehicle, instead add him for any squad with empty slot (vanilla: FALSE).
+;------------------------------------------------------------------------------------------------------------------------------
+
+ADD_PASSENGER_TO_ANY_SQUAD = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: FALSE
+; Automatically switch to passenger's squad when leaving vehicle (vanilla: TRUE).
+;------------------------------------------------------------------------------------------------------------------------------
+
+PASSENGER_LEAVING_SWITCH_TO_NEW_SQUAD = FALSE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -1054,17 +1191,6 @@ NO_STANDING_ANIM_ADJUSTMENT_IN_COMBAT = TRUE
; These settings have a direct effect on the difficulty of the game in TACTICAL mode (combat).
;******************************************************************************************************************************
-;------------------------------------------------------------------------------------------------------------------------------
-; Bonus APs for Enemy Soldiers:
-; Number of extra APs for enemy troops at the various difficulty levels.
-; Please note, this number is NOT automatically adjusted based on your selected AP system (25 / 100).
-;------------------------------------------------------------------------------------------------------------------------------
-
-ENEMY_AP_BONUS_NOVICE = 0
-ENEMY_AP_BONUS_EXPERIENCED = 0
-ENEMY_AP_BONUS_EXPERT = 0
-ENEMY_AP_BONUS_INSANE = 5
-
;------------------------------------------------------------------------------------------------------------------------------
; Bonus for the player's mercs
; Gives a flat AP Bonus to all player's mercenaries, it also pushes the AP Cap. Works almost exactly like the enemy AP bonus.
@@ -1136,6 +1262,14 @@ ASSIGN_SKILL_TRAITS_TO_MILITIA = TRUE
ASSIGNED_SKILL_TRAITS_RARITY = 0
+;------------------------------------------------------------------------------------------------------------------------------
+; This controls whether NPCs drop all their items when they are killed or the drop chances etc. come into play.
+; 0 = Drop All is off and drop chances are used
+; 1 = Drop All is on and everything is dropped
+; 2 = Mild Drop All which means that everything is dropped (like 1) but items that are usually not dropped (like 0) are severely damaged.
+;------------------------------------------------------------------------------------------------------------------------------
+DROP_ALL = 0
+
;------------------------------------------------------------------------------------------------------------------------------
; This setting determines whether militia can drop their equipment when they die, like enemies do.
;
@@ -1157,6 +1291,13 @@ MILITIA_DROP_EQUIPMENT = 0
CIVILIANS_DROP_ALL = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Can NPCs in autoresolve (enemies, militia, bandits, creatures...) drop items like they would in tactical combat?
+; The drops still follow set drop mechanics and probabilities.
+;------------------------------------------------------------------------------------------------------------------------------
+
+NPC_AUTORESOLVE_DROP_ALL = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; You can now adjust how quickly you'll advance in the various skills, attributes, and Experience Level. This is the
; number of "sub-points" you need to acquire to gain a new level.
@@ -1279,6 +1420,23 @@ ENABLE_CHANCE_OF_ENEMY_AMBUSHES = FALSE
; (Setting this to -50 means the precalculated chance will be reduced to half. Values from -100 to 100 are allowed.)
ENEMY_AMBUSHES_CHANCE_MODIFIER = 0
+; If set to TRUE and mercs are ambushed, they won't start clustered in one location and looking in one direction.
+; Instead they will be spread around the map central entry point, no more than AMBUSH_MERCS_SPREAD_RADIUS tiles away, and all looking outwards.
+; If one of your team has high enough leadership and Squadleader trait, you will be able to deploy your mercs in that zone prior to entering the sector.
+AMBUSH_MERCS_SPREAD = TRUE
+
+AMBUSH_MERCS_SPREAD_RADIUS = 10
+
+; If set to 1 and mercs are ambushed, enemies nearer than AMBUSH_MERCS_SPREAD_RADIUS to the map central entry point will instead be distributed more outward:
+; They will be placed around that point, not closer than AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS1 and not further away than AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS2 tiles.
+; These radii will be modified by your team's experience, scout trait and backgroun values.
+; They will face the center entry point (and thus the mercs).
+; If set to 2, all enemies will be placed that way, not just those nearer than AMBUSH_MERCS_SPREAD_RADIUS.
+AMBUSH_ENEMY_ENCIRCLEMENT = 1
+
+AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS1 = 25
+AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS2 = 50
+
;------------------------------------------------------------------------------------------------------------------------------
; With this option, you can make the special NPCs in game tougher.
; The NPCs are: Deidranna, Mike, Joe, Carmen, General, terrorrists, Kingpin and his hitmans.
@@ -1371,7 +1529,12 @@ BRIGHTNESS_MOD_15 = 9
ALLOW_TUNNEL_VISION = TRUE
-
+;------------------------------------------------------------------------------------------------------------------------------
+; If set to 0, nothing happens.
+; If set to 1, vision is lowered while running.
+; If set to 2, this only applies to the player team.
+;------------------------------------------------------------------------------------------------------------------------------
+LOWER_VISION_WHILE_RUNNING = 0
;******************************************************************************************************************************
@@ -1404,6 +1567,7 @@ DYNAMIC_SOLDIER_TOOLTIPS = TRUE
; Enable/disable individual lines of information within the tooltip
; Set HELMET and VEST and LEGGINGS to FALSE (all 3) to prevent the display of the armor line
; Set HEAD_SLOT_1 and HEAD_SLOT_2 both to FALSE to prevent the display of the NVG and gas mask lines
+; This requires SOLDIER_TOOLTIP_DETAIL_LEVEL = 4
; Location, Distance
SOLDIER_TOOLTIP_DISPLAY_LOCATION = TRUE
@@ -1452,7 +1616,8 @@ DYNAMIC_TOOLTIP_RANGE_MODIFIER = 75
; Change the amount of details received in the tooltip, based on your range to that enemy?
ALLOW_DYNAMIC_TOOLTIP_DETAIL_LEVEL = TRUE
-
+; Debug tooltip showing additional AI information.
+SOLDIER_TOOLTIP_DEBUG_AI = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -1464,13 +1629,18 @@ ALLOW_DYNAMIC_TOOLTIP_DETAIL_LEVEL = TRUE
; They affect all characters (friend and foe) equally!
;******************************************************************************************************************************
+;------------------------------------------------------------------------------------------------------------------------------
+; Play with New Chance to Hit System (NCTH)?
+;------------------------------------------------------------------------------------------------------------------------------
+
+NCTH = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Allow walking and sidesteps with raised weapons?
;------------------------------------------------------------------------------------------------------------------------------
ALLOW_WALKING_WITH_WEAPON_RAISED = TRUE
-
;------------------------------------------------------------------------------------------------------------------------------
; Alternative Weapon Holding settings
;------------------------------------------------------------------------------------------------------------------------------
@@ -1539,45 +1709,38 @@ AIMING_LEVELS_REDUCTION_ON_ALTWEAPHOLD = 50
; This basically gives you the boni you would get if in prone position, while you're crouched or standing and behind a crate, rock etc.
WEAPON_RESTING = TRUE
-; Should a little 'M' indicate your weapon is currently rested against something (useful in the beginning, when your still
-; unfamiliar with the feature)
-WEAPON_RESTING_DISPLAY = TRUE
-
; Boni are calculated by this formula: WEAPON_RESTING_PRONE_BONI_PERCENTAGE * boni[PRONE] + (100 - WEAPON_RESTING_PRONE_BONI_PERCENTAGE) * boni[state you're in].
; Value Range: 0 - 100.
WEAPON_RESTING_PRONE_BONI_PERCENTAGE = 50
;------------------------------------------------------------------------------------------------------------------------------
-; scope modes
+; Scope modes
;------------------------------------------------------------------------------------------------------------------------------
; Allow manual toggle between a gun's different scopes/sights (toggle via '.' in tactical)
USE_SCOPE_MODES = TRUE
-; Allow display of scope modes on weapon
-DISPLAY_SCOPE_MODES = TRUE
-
;------------------------------------------------------------------------------------------------------------------------------
; Spotter skill
;------------------------------------------------------------------------------------------------------------------------------
; You can assign a merc to spot for fellow snipers via calling the Skill Menu ($) -> various -> Spotter.
; You need an item the usSpotting-tag in your hands.
-; The bonus applies to anyone of your team using a sniper weapon on a location your spotter can see.
+; The bonus applies to anyone of your team using a sniper rifle/rifle on a location your spotter can see.
; Effectiveness depends on:
; - spotters spotter item effectiveness (40%), experience (30%), marksmanship (20%) and leadership (10%)
; - lowered by being wounded or fatigues
; - altered by relation between spotter and sniper (base opinion, sexism, racism etc.) and spotter background
; The bonus will be this many turns after activating the skill. Spending any AP with your spotter forfeits the bonus.
-SPOTTER_PREPARATIONTURNS = 3
+SPOTTER_PREPARATIONTURNS = 2
; This variable intentionally has two meanings.
; - A sniper will benefit from a spotter only if he is at maximum SPOTTER_RANGE tiles away from him.
; - The bonus only works on those locations the spotter can see and that are AT LEAST 2 * SPOTTER_RANGE tiles away.
SPOTTER_RANGE = 10
-; Maximum bonus that can be reached once spoter has waited 2 * SPOTTER_PREPARATIONTURNS turns
+; Maximum bonus that can be reached once spotter has waited 2 * SPOTTER_PREPARATIONTURNS turns
SPOTTER_MAX_CTHBOOST = 50
;------------------------------------------------------------------------------------------------------------------------------
@@ -1590,6 +1753,7 @@ EXTERNAL_FEEDING = 2
;------------------------------------------------------------------------------------------------------------------------------
; Set the grid number for the initial merc arrival location.
; The JA2 default grid number is 4870 (Sector A9 Omerta).
+; THIS HAS BEEN MOVED TO Mod_Settings.ini! Please set it there!
;------------------------------------------------------------------------------------------------------------------------------
INITIAL_MERC_ARRIVAL_LOCATION = 15427
@@ -1804,20 +1968,31 @@ CAN_JUMP_THROUGH_CLOSED_WINDOWS = TRUE
CAN_CLIMB_ON_WALLS = TRUE
;------------------------------------------------------------------------------------------------------------------------------
-; Show enemy weapon name in tactical
+; MAX_BACKPACK_WEIGHT_TO_CLIMB is the maximum weight a backpack can weigh and still allow you to climb with.
+; The sBackpackWeightModifier in items.xml can modify that number by either making it harder (positive number modifier)
+; or easier (negative number modifier). If the sBackpackWeightToClimb is -1 (default) then the option is unused.
+;
+; If USE_GLOBAL_BACKPACK_SETTINGS is TRUE (default), it uses the same rules for all backpacks, while if FALSE checks for
+; the fAllowClimbing tag in Items.xml, and if that is true you can climb with the backpack.
+;
+; Both options can be used at the same time, so you may climb with (for example) a malice backpack that weighs less than 5kg
+; (or 50 hg) but not climb with a radio set.
+;------------------------------------------------------------------------------------------------------------------------------
+
+MAX_BACKPACK_WEIGHT_TO_CLIMB = -1
+USE_GLOBAL_BACKPACK_SETTINGS = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Show enemy weapon name, armour and head items in tactical
;------------------------------------------------------------------------------------------------------------------------------
SHOW_ENEMY_WEAPON = FALSE
+SHOW_ENEMY_EXTENDED_INFO = FALSE
;------------------------------------------------------------------------------------------------------------------------------
-; Show additional enemy info in tactical (awareness, gas mask, nvg, armour)
-; 0 - nothing
-; 1 - show awareness level
-; 2 - show gas mask and NVG
-; 3 - show armour
+; Use color name to show soldier's status
;------------------------------------------------------------------------------------------------------------------------------
-
-SHOW_ENEMY_ADDITIONAL_INFO = 0
+IMPROVED_TACTICAL_UI = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; Turn this on, and you can set hidden names individually in 'TableData\HiddenNames.xml'.
@@ -1825,6 +2000,11 @@ SHOW_ENEMY_ADDITIONAL_INFO = 0
INDIVIDUAL_HIDDEN_PERSON_NAMES = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; should known NPCs use a different colour (deep blue instead of white), so we can find them more easily?
+;------------------------------------------------------------------------------------------------------------------------------
+KNOWN_NPCS_DIFFERENT_MAPCOLOUR = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyNames.xml'.
; If you set SOLDIER_PROFILES_ENEMY = TRUE the name in the profile takes precedence.
@@ -1838,12 +2018,6 @@ INDIVIDUAL_ENEMY_NAMES = FALSE
INDIVIDUAL_ENEMY_RANK = TRUE
-;------------------------------------------------------------------------------------------------------------------------------
-; Show enemy rank (exp. level) as icon
-;------------------------------------------------------------------------------------------------------------------------------
-
-SHOW_ENEMY_RANK_ICON = 0
-
;------------------------------------------------------------------------------------------------------------------------------
; Turn this on, and the game uses individual civilian group names (in tactical) defined in 'TableData\CivGroupNames.xml'.
;------------------------------------------------------------------------------------------------------------------------------
@@ -1857,6 +2031,63 @@ INDIVIDUAL_CIVILIAN_NAMES = TRUE
SOLDIER_PROFILES_ENEMY = TRUE
SOLDIER_PROFILES_MILITIA = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Settings related to enemy armed vehicles (tanks and jeeps).
+; Tanks have superior armor that can only be breached by explosives or special ammo. They are armed with a powerful cannon and an MG.
+; Enemy jeeps are smaller than tanks, easier to damage and only have an MG, otherwsie they perform similar to tanks.
+;
+; Unless there is a separate setting, tank-settings also govern jeeps.
+;------------------------------------------------------------------------------------------------------------------------------
+
+; If set to TRUE, vehicles can be driven around tactical maps.
+ALLOW_DRIVING_VEHICLES_IN_TACTICAL = FALSE
+
+; Deduct APs from passengers when vehicle is moving to prevent exploits (default = 3).
+; 0 - No change.
+; 1 - AP deducted from vehicle are also deducted from all passengers.
+; 2 - AP deducted from vehicle are also deducted from all passengers, but adjusted to initial APs of any given passenger.
+; 3 - AP deducted from vehicle are also deducted from all passengers, but only to the certain threshold (default).
+AP_SHARED_AMONG_PASSENGERS_AND_VEHICLE_MODE = 3
+
+; If AP_SHARED_AMONG_PASSENGERS_AND_VEHICLE_MODE is set, adjust how much APs will be deducted (0 - 200).
+AP_SHARED_AMONG_PASSENGERS_AND_VEHICLE_SCALE = 100
+
+; If set to TRUE, tanks can move around in tactical.
+ENEMY_TANKS_CAN_MOVE_IN_TACTICAL = FALSE
+
+; If set to TRUE, cars can run over people.
+; Note feature won't be very effective without ALLOW_DRIVING_VEHICLES_IN_TACTICAL set to TRUE.
+ALLOW_CARS_DRIVING_OVER_PEOPLE = TRUE
+
+; If set to TRUE, tanks can run over people.
+; Note feature won't be very effective without ENEMY_TANKS_CAN_MOVE_IN_TACTICAL set to TRUE.
+ALLOW_TANKS_DRIVING_OVER_PEOPLE = TRUE
+
+; When shift is pressed cars can ram through structures, but only those with armour lower than specified value (0-255).
+; 0 effectively disables the feature. Default 30.
+; For reference: cactus - 10, wooden furniture - 20, trees - 30, sandbags - 40, stone walls - 55, reinforced concrete - 70, rock - 85, indestructible - 127.
+CARS_RAMMING_MAX_STRUCTURE_ARMOUR = 30
+
+; When shift is pressed tanks can ram through structures, but only those with armour lower than specified value (0-255).
+; 0 effectively disables the feature. Default 70.
+; For reference: cactus - 10, wooden furniture - 20, trees - 30, sandbags - 40, stone walls - 55, reinforced concrete - 70, rock - 85, indestructible - 127.
+TANKS_RAMMING_MAX_STRUCTURE_ARMOUR = 70
+
+ENEMY_JEEP_RAMMING_MAX_STRUCTURE_ARMOUR = 38
+
+; If set to TRUE, tanks can use cannon even against single mercs and in perfect health.
+ENEMY_TANKS_DONT_SPARE_SHELLS = TRUE
+; If set to TRUE, tanks can ignore chance to get through and destroy enemy cover even if it probably won't hit anyone behind it.
+ENEMY_TANKS_BLOW_OBSTACLES_UP = TRUE
+
+; If set to TRUE, tanks can be noticed as soon as any part of them is visible.
+ENEMY_TANKS_ANY_PART_VISIBLE = FALSE
+
+; If set to TRUE, enemies can use launchables even against single mercs and in perfect health.
+ENEMIES_DONT_SPARE_LAUNCHABLES = FALSE
+; If set to TRUE, enemies can ignore chance to get through and destroy enemy cover even if it probably won't hit anyone behind it.
+ENEMIES_BLOW_OBSTACLES_UP = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; If this is set tot TRUE, you can repaint one type of camouflage by using different type camo kit on self. You can also use
; the rag to completely erase the camo.
@@ -1897,6 +2128,15 @@ CAMO_KIT_USABLE_AREA = 5
ENHANCED_CLOSE_COMBAT_SYSTEM = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; If a non-comatose player-controlled merc receives damage that would kill them outright, damage is instead lowered so that they only fall
+; into a coma. This only works if the damage is inflicted via gun or knife, and did not cause a death animation.
+;
+; Activating this makes the game easier.
+;------------------------------------------------------------------------------------------------------------------------------
+
+REDUCED_INSTANT_DEATH = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; When you compleet any quest in game, every (conscious) merc in the sector will be awarded by a certain amount of
; experience points. This amount is counted as times . Setting this to zero
@@ -1920,8 +2160,8 @@ SOLDIERS_ALWAYS_WEAR_ANY_ARMOR = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; Improved Interrupt System (IIS)
-; (Enable IIS on gamestart screen.)
-;
+IMPROVED_INTERRUPT_SYSTEM = TRUE
+
; Basic percent amount of enemy used APs our merc percieves and is counted towards his reaction time (make it higher to get
; interrupts more frequent)
BASIC_PERCENTAGE_APS_REGISTERED = 60
@@ -1994,9 +2234,182 @@ ACCESS_OTHER_MERC_INVENTORIES = TRUE
; TRUE: weightbased penalty, FALSE: no penalty
BACKPACKWEIGHT_LOWERS_AP = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; Enemy gun jams
+;------------------------------------------------------------------------------------------------------------------------------
+ENEMY_JAMS = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Use new code for random number generation
+;------------------------------------------------------------------------------------------------------------------------------
+NEW_RANDOM = TRUE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
+[Tactical Enemy Role Settings]
+
+;******************************************************************************************************************************
+; These settings allow enemy soldiers to gain certain abilities that will allow them to play a number of roles and make combat harder.
+;******************************************************************************************************************************
+
+; allow enemy roles, required for the following settings
+ENEMYROLES = TRUE
+
+; If player mercs observe enemy soldiers, they can uncover their role once they have been seen a least this many turns.
+; The following roles will be indicated by small icon next to the soldiers (can be toggled in the [CTRL] + [c] menu):
+; - officers
+; - medics
+; - radio operators
+; - snipers
+; - mortarmen
+; - generals (a special kind of officer)
+; - whether an enemy has a key
+; Default 4, values between 0 and 20.
+ENEMYROLES_TURNSTOUNCOVER = 4
+
+;******************************************************************************************************************************
+; MEDIC
+;******************************************************************************************************************************
+
+; allow AI medics for the enemy team. A soldier spawning with a first aid or med kit can become a doctor.
+; AI doctors bandage their wounded comrades and perform surgery on them. They do so much faster than the player mercs.
+; Requires ENEMYROLES to be TRUE.
+ENEMY_MEDICS = TRUE
+
+; As the AI will likely have a much higher consumption of medical supplies, you can reduce the med kit drain
+; This allows the AI to heal more wounded before its medkits run out
+; 0.1 means drain is only 10%. Default 0.1, values between 0.01 and 1.0.
+ENEMY_MEDICS_MEDKITDRAINFACTOR = 0.1
+
+; radius in which a medic searches for patients. Targets farther away are ignored. It is required that the medic sees the patient
+; Default 40, values between 5 and 60.
+ENEMY_MEDICS_SEARCHRADIUS = 40
+
+; medics only heal enemies with at least this much health lost, to prevent them from breaking position just to heal a tiny amount.
+; 100 is one hp. Default 500, values between 0 and 50000.
+ENEMY_MEDICS_WOUND_MINAMOUNT = 500
+
+; allow enemy medic to heal himself
+ENEMY_MEDICS_HEAL_SELF = TRUE
+
+;******************************************************************************************************************************
+; OFFICER
+;******************************************************************************************************************************
+
+; allow AI officers for the AI team. An officer is a soldier with the squadleader trait. There are two stages of this:
+; a officer with squadleader trait is considered a lieutenant, an officer with squadleader(expert) is a captain.
+; For now, a officer grants boni to the entire enemy team present:
+; - a bonus to suppression resistance
+; - a percentage bonus to morale
+; - a bonus to team surrender strength
+; Important: Only the bonus of the highest officer present counts.
+; Requires ENEMYROLES to be TRUE.
+ENEMY_OFFICERS = TRUE
+
+; for every officer, the enemy team needs at least this many soldiers total
+ENEMY_OFFICERS_REQUIREDTEAMSIZE = 10
+
+; maximum number of officers the enemy team may ever have
+ENEMY_OFFICERS_MAX = 4
+
+; The boni listed here are for lieutnant, they are doubled for captains.
+; bonus to suppression resistance of the entire enemy team if officer is present. Default 10, values between 0 and 50.
+ENEMY_OFFICERS_SUPPRESSION_RESISTANCE_BONUS = 10
+
+; bonus to morale of the entire enemy team if officer is present. 0.1 means a 10% bonus. Default 0.1, values between 0.0 and 1.0.
+ENEMY_OFFICERS_MORALE_MODIFIER = 0.1
+
+; bonus to surrender strength (used when the player asks the enemy to surrender).
+; 0.1 means a 10% bonus. Default 0.1, values between 0.0 and 1.0.
+ENEMY_OFFICERS_SURRENDERSTRENGTHBONUS = 0.1
+
+;******************************************************************************************************************************
+; GENERALS
+;******************************************************************************************************************************
+
+; allow AI officers in the campaign. There is a finite number of generals in the game. On starting a new game (or loading an old
+; savegame that didn't have this feature), generals are created in some enemy towns. The player does not know where they are -
+; he has to interrogate elites and officer prisoners he captured to learn of their location. He can then infiltrate the sector
+; and try to assassinate the generals.
+; In tactical, generals will try to flee from the sector once they have learned of the player's presence. They also have a small
+; retinue of elite bodyguards that keep close and defend them. If a bodyguard flees, he is relocated to Meduna.This way the player
+; has a second chance to kill them if they botched the first attempt... but it's going to be more tricky.
+; Generals are important targets, as long as they are alive, the enemy will get significant boni to
+; - its decision speed
+; - its travelling speed
+ENEMY_GENERALS = FALSE
+
+; how many generals can there be in the campaign? This setting is only used once, when the game is initialised, so choose wisely.
+; Generals are only created in towns fully under enemy control of at least size 2, but not in Meduna (escaped generals move
+; there later on). Apart from Meduna, there can only be one general per town max. Default 5, values between 1 and 10.
+ENEMY_GENERALS_NUMBER = 5
+
+; Number of bodyguards for a general. These elite troops stick close to their general, thus making it much harder to isolate them.
+; Default 4, values between 0 and 10.
+ENEMY_GENERALS_BODYGUARDS_NUMBER = 4
+
+; Strategic AI decision process is sped up for every general alive. This simply lowers the time period between AI decisions,
+; making the game more difficult.
+; Note that the combined reduction of all generals cannot exceed 50%. 0.05 is for 5%.
+; Default 0.05, values between 0.0 and 0.1.
+ENEMY_GENERALS_STRATEGIC_DECISION_SPEEDBONUS = 0.05
+
+; Strategic AI travel time reduction. Similar to the Ranger trait's 'GROUP_TIME_SPENT_FOR_TRAVELLING_BY_FOOT_REDUCTION', this
+; speeds up enemy AI travel times per general alive GLOBALLY.
+; Note that the combined reduction of all generals cannot exceed 25%. 0.05 is for 5%.
+; Default 0.03, values between 0.0 and 0.1.
+ENEMY_GENERALS_STRATEGIC_MOVEMENT_SPEEDBONUS = 0.03
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Individual Militia Settings]
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Settings for individual militia
+;
+; If this feature is active, every time a militia is created by training/PMC hiring/interrogation, a small profile stores their
+; - name
+; - visuals
+; - record of all battles they participated
+; - kills and assists
+; - health ratio
+; - and a few other things
+;
+; Whenever a sector with militia is loaded, this data is used to recreate a militia. As a result, militia seem to be as persistent
+; as your mercenaries (so it is possible to have a veteran militia which accompanied you in several battles).
+;
+; The data for the different militia origins (arulcan local/PMC mercenary/army defector) are defined in TableData/MilitiaIndividual.xml)
+;------------------------------------------------------------------------------------------------------------------------------
+
+; if TRUE this feature is on
+INDIVIDUAL_MILITIA = FALSE
+
+; For each kill, a militia gets 2 promotion points.
+; For each assist, a militia gets 1 promotion point.
+; Here we define how many promotion points a militia needs to be promoted.
+; Values from 1 to 100.
+INDIVIDUAL_MILITIA_PROMOTIONPOINTS_TO_REGULAR = 4
+INDIVIDUAL_MILITIA_PROMOTIONPOINTS_TO_ELITE = 6
+
+; If TRUE, the game remembers the health percentage of a militia the last time it was in tactical. This percentage is used the
+; next time the militia is used in tactical. As a result militia will have lowered health for a while after being wounded.
+; Militia can be healed via 'Doctor Militia' assignment if this is active.
+; NOTE: THIS WILL MAKE THE GAME HARDER!!!
+INDIVIDUAL_MILITIA_MANAGE_HEALTH = TRUE
+
+; Every hour, militia health percentage rises by this percentage to simulate healing. Values from 0.0 to 100.0.
+INDIVIDUAL_MILITIA_HOURLYHEALTHPERCENTAGEGAIN = 2.0
+
+; Militia can be healed via 'Doctor Militia' assignment. This modifies how effective healing is. If set to 0.01, healing one percent of militia health
+; costs as much as healing one merc HP.
+; Values from 0.01 to 1.0
+INDIVIDUAL_MILITIA_DOCTORHEALMODIFIER = 0.2
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
[Tactical Cover System Settings]
;******************************************************************************************************************************
@@ -2035,6 +2448,23 @@ COVER_SYSTEM_TREE_EFFECTIVENESS = 15
; The cover calculation is relativly hard on the cpu, so default are only two refreshes a second.
COVER_SYSTEM_UPDATE_DELAY = 500
+; Use xml-defined properties for various properties of tiles in your surroundings. These can modify camo, stealth, and sound
+; effectiveness and the trap level of bombs you plant.
+; With Additional Tile Properties it's possible to supply all tiles with additional data, just like with .jsd files, except in XML.
+; Files need to have same name as tile's .sti and .jsd files, and be put in \tilesets\AdditionalProperties\, or in specific \tilesets\xx\.
+COVER_SYSTEM_ADDITIONAL_TILE_PROPERTIES = TRUE
+
+; Static shadows decrease brightness
+COVER_SYSTEM_STATIC_SHADOWS_DECREASE_BRIGHTNESS = TRUE
+
+; Camo affinities will be used as caps not multipliers (suggested by mmm).
+; It will be possible to achieve perfect camo on mixed terrain using mixed camo types.
+; Works only if COVER_SYSTEM_ADDITIONAL_TILE_PROPERTIES = TRUE.
+COVER_SYSTEM_ALTERNATE_MULTI_TERRAIN_CAMO_CALCULATION = TRUE
+
+; Cover tooltip ("f") will display detailed properties and their values.
+; Works only if COVER_SYSTEM_ADDITIONAL_TILE_PROPERTIES = TRUE.
+COVER_TOOLTIP_DISPLAY_DETAILED_TILE_PROPERTIES = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2086,11 +2516,13 @@ COVER_SYSTEM_UPDATE_DELAY = 500
SUPPRESSION_EFFECTIVENESS = 75
;------------------------------------------------------------------------------------------------------------------------------
-; These modifiers control suppression effectiveness for different teams. They work together with SUPPRESSION_EFFECTIVENESS,
+; These modifiers control suppression effectiveness against different teams. They work together with SUPPRESSION_EFFECTIVENESS,
; not instead
;
; 0 = JA2 Default: Suppression is DISABLED.
; 100 = Suppression is fully activated.
+;
+; Example: If SUPPRESSION_EFFECTIVENESS_PLAYER is set to 200, player mercs are suppressed twice as hard.
;
; This value can be raised to 65535... But don't. Values over 200 are already excessive.
;------------------------------------------------------------------------------------------------------------------------------
@@ -2139,14 +2571,14 @@ CTH_PENALTY_PER_TARGET_SHOCK = 2
; Controls the maximum CTH penalty you can get when shooting at a Shocked Target. 0 = No limit!
MAX_CTH_PENALTY_FOR_TARGET_SHOCK = 40
+; Minimum range to target for full CTH penalty
+MIN_RANGE_FOR_FULL_TARGET_SHOCK_PENALTY = 300
+
; Divisor for the CTH penalty, based on the target's stance and the targeted bodypart.
CTH_PENALTY_DIVISOR_FOR_PRONE_SHOCKED_TARGET = 1
CTH_PENALTY_DIVISOR_FOR_CROUCHED_SHOCKED_TARGET_HEAD = 3
CTH_PENALTY_DIVISOR_FOR_CROUCHED_SHOCKED_TARGET_TORSO = 4
-CTH_PENALTY_FOR_COWERING_CROUCHED_TARGET_LEGS_DIVISOR = 5
-
-; Minimum range at which you get the full CTH penalty. If you are closer than this, the penalty begins to drop.
-MIN_RANGE_FOR_FULL_COWERING_TARGET_PENALTY = 100
+CTH_PENALTY_DIVISOR_FOR_CROUCHED_SHOCKED_TARGET_LEGS = 5
;------------------------------------------------------------------------------------------------------------------------------
; Shock Effects
@@ -2216,34 +2648,26 @@ MIN_DISTANCE_FRIENDLY_SUPPRESSION = 30
;------------------------------------------------------------------------------------------------------------------------------
; Rain settings
;
-; (For slow CPUs, you may want to disable rain entirely.
+; (For slow CPUs, you may want to disable this)
;------------------------------------------------------------------------------------------------------------------------------
-; Enable/Disable rain appearing in the game.
+; Enable/Disable weather appearing in the game.
ALLOW_RAIN = TRUE
-; Chance of rain to be triggered once per day.
-RAIN_CHANCE_PER_DAY = 40
+; Possible number of weather events happening per day
+RAIN_EVENTS_PER_DAY = 5
-; Minimum/Maximum length of rain.
+; Chance of weather being triggered, evaluated for each of RAIN_EVENTS_PER_DAY.
+RAIN_CHANCE_PER_DAY = 70
+
+; Minimum/Maximum length of waether.
RAIN_MIN_LENGTH_IN_MINUTES = 60
-RAIN_MAX_LENGTH_IN_MINUTES = 300
+RAIN_MAX_LENGTH_IN_MINUTES = 240
+; Number of raindrops per given time. Note that this multiplied according to the screen resolution and weather type
; For slow CPUs decrease the MAX_RAIN_DROPS.
-MAX_RAIN_DROPS = 80
-
-; Controls how rain affects visual distance
-; Range: 0-100%
-; 0% = Rain doesn't decrease sightrange.
-; 100% = Can't see anything in the rain.
-VISUAL_DISTANCE_DECREASE_PER_RAIN_INTENSITY = 30
-
-; Reduction of weapon reliability, causing weapons to deteriorate faster in rain and possibly jam more often.
-WEAPON_RELIABILITY_REDUCTION_PER_RAIN_INTENSITY = 0
-
-; Reduction of the speed of regaining your breath (stamina) when it is raining.
-BREATH_GAIN_REDUCTION_PER_RAIN_INTENSITY = 25
-
+; This is the base setting for each weather
+MAX_RAIN_DROPS = 100
;------------------------------------------------------------------------------------------------------------------------------
; Lightning settings
@@ -2268,6 +2692,94 @@ DELAY_IN_SECONDS_IF_SEEN_SOMEONE_DURING_LIGHTNING_IN_TURNBASED = 5
; In Turn-Based mode, lightning only occurs between turns. This is the chance of it occuring (out of 100).
CHANCE_TO_DO_LIGHTNING_BETWEEN_TURNS = 35
+;------------------------------------------------------------------------------------------------------------------------------
+; Sandstorm settings
+;
+; (For slow CPUs, you may want to disable this)
+;------------------------------------------------------------------------------------------------------------------------------
+
+; Enable/Disable this weather appearing in the game.
+ALLOW_SANDSTORM = TRUE
+
+; Possible number of weather events happening per day
+SANDSTORM_EVENTS_PER_DAY = 3
+
+; Chance of weather being triggered, evaluated for each of SANDSTORM_EVENTS_PER_DAY.
+SANDSTORM_CHANCE_PER_DAY = 70
+
+; Minimum/Maximum length of weather.
+SANDSTORM_MIN_LENGTH_IN_MINUTES = 120
+SANDSTORM_MAX_LENGTH_IN_MINUTES = 240
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Snow settings
+;
+; (For slow CPUs, you may want to disable this)
+;------------------------------------------------------------------------------------------------------------------------------
+
+; Enable/Disable this weather appearing in the game.
+ALLOW_SNOW = TRUE
+
+; Possible number of weather events happening per day
+SNOW_EVENTS_PER_DAY = 1
+
+; Chance of weather being triggered, evaluated for each of SNOW_EVENTS_PER_DAY.
+SNOW_CHANCE_PER_DAY = 70
+
+; Minimum/Maximum length of weather.
+SNOW_MIN_LENGTH_IN_MINUTES = 120
+SNOW_MAX_LENGTH_IN_MINUTES = 360
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Various environment modifiers during weather
+;------------------------------------------------------------------------------------------------------------------------------
+
+; Reduction of weapon reliability, causing weapons to deteriorate faster and possibly jam more often. Values from 0 to 10.
+WEAPON_RELIABILITY_REDUCTION_RAIN = 0
+WEAPON_RELIABILITY_REDUCTION_THUNDERSTORM = 1
+WEAPON_RELIABILITY_REDUCTION_SANDSTORM = 4
+WEAPON_RELIABILITY_REDUCTION_SNOW = 2
+
+; Reduction of the speed of regaining your breath (stamina). Values from 0.0 to 1.0.
+BREATH_GAIN_REDUCTION_RAIN = 0.05
+BREATH_GAIN_REDUCTION_THUNDERSTORM = 0.4
+BREATH_GAIN_REDUCTION_SANDSTORM = 0.7
+BREATH_GAIN_REDUCTION_SNOW = 0.2
+
+; Sightrange reduction, range 0.0-1.0
+; 0.0 = Weather doesn't decrease sightrange.
+; 1.0 = Can't see anything at all.
+VISUAL_DISTANCE_DECREASE_RAIN = 0.05
+VISUAL_DISTANCE_DECREASE_THUNDERSTORM = 0.15
+VISUAL_DISTANCE_DECREASE_SANDSTORM = 0.4
+VISUAL_DISTANCE_DECREASE_SNOW = 0.3
+
+; Hearing reduction, range 0.0-1.0
+; 0.0 = No reduction
+; 1.0 = Can't hear anything at all.
+HEARING_REDUCTION_RAIN = 0.3
+HEARING_REDUCTION_THUNDERSTORM = 0.8
+HEARING_REDUCTION_SANDSTORM = 0.6
+HEARING_REDUCTION_SNOW = 0.1
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Environment Hazard Settings]
+
+;******************************************************************************************************************************
+; In this section you can enable various hazards to soldiers. These depend on the sector they are in.
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Snake settings
+;
+; In some sectors, water sources harbour venomous snakes. These will occasionally attack anyone in that water.
+; The chance of snakes being active can be set via in SectorNames.xml. This chance is evaluated anew each turn.
+; Soldiers have a small chance of evading an attack, this is raised if they have the survival trait or a knife.
+;------------------------------------------------------------------------------------------------------------------------------
+
+ALLOW_SNAKES = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2282,9 +2794,6 @@ CHANCE_TO_DO_LIGHTNING_BETWEEN_TURNS = 35
; Weapons cool down over time.
OVERHEATING = FALSE
-; Should a 'thermometer' for guns and replacable barrels be displayed?
-OVERHEATING_DISPLAY_THERMOMETER = TRUE
-
; Should we display temperature/jam threshold (TRUE) or temperature/damage threshold (FALSE)?
OVERHEATING_DISPLAY_JAMPERCENTAGE = TRUE
@@ -2328,7 +2837,7 @@ ZOMBIE_CAN_JUMP_WINDOWS = TRUE
; TRUE: So instead, they blow up, dealing damage to everyone (setting TRUE)
; FALSE: Another option is a 'simulated attack' without animation. However, this is pretty simple and rigged up, only a temporary solution.
; This still results in deadlocks!
-ZOMBIE_EXPLODING_CIVS = TRUE
+ZOMBIE_EXPLODING_CIVS = FALSE
; Damage is reduced by this percentage. Valid values from -50 to 95
ZOMBIE_DAMAGE_RESISTANCE = 0
@@ -2347,55 +2856,31 @@ ZOMBIE_ONLY_HEADSHOTS_WORK = FALSE
ZOMBIE_DIFFICULTY_LEVEL = 3
; If set to TRUE, zombies will be equipped with armour if it lay at the corpse they came from
-ZOMBIE_RISE_WITH_ARMOUR = FALSE
+ZOMBIE_RISE_WITH_ARMOUR = TRUE
; if set on, a headshot or melee attack is required to permanently kill a zombie, unless his ZOMBIE_RISE_BEHAVIOUR says otherwise.
; Setting ZOMBIE_RISE_BEHAVIOUR to 1 is recommended with this
-ZOMBIE_ONLY_HEADSHOTS_PERMANENTLY_KILL = TRUE
+ZOMBIE_ONLY_HEADSHOTS_PERMANENTLY_KILL = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
-[Tactical Poison Settings]
+[Corpse Settings]
;******************************************************************************************************************************
-; In this section you can specify the new poison system
+; In this section you can specify settings for corpses
;******************************************************************************************************************************
-; The poison system is a new feature that gives a bit of variation to the life and damage system.
-; Certain sources can deal poison damage (as of now, only zombies). This means that damage can be poisonous. If a merc receives
-; poison damage, he not only looses life, he also gains a poison point.
-; The basic consequences are:
-; - if he bleeds, there is chance, depending on the ratio of total poison points to maximim life points, that he gains additional
-; poison points
-; - poison works as a counter to mercs natural regeneration (which is calculated every hour). If a merc is poisoned enough, he
-; can lose a life point this way! This simulates the character getting sicker and sicker because of the poison in his veins.
-; The lost point will be bandaged, so you do not have to immediately bandage it.
-; - However, if our health drops below 15 points because of poisoning, we suffer a shock, the points won't be damaged anymore.
-; We require immediate medical assistance, or we will die!
-; Yes, it is possible to die this way.
-; - If not treated, poison will invariably spread in an infected merc. To prevent this, you can cure him. Curing poison is a new
-; action automatically performed by your doctors and the hospital, if the merc is their patient.
-; Once a patient is back to full life, The poison is cured (curing 1 pt of poison costs as much as chealing 1 pt of life).
-; If using the new trait system, the doctoring merc needs to have the PARAMEDIC or DOCTOR Skill to cure poison.
+; How many minutes it takes until a corpse begins to rot. Default 1440 (1 day), valid values from 720 (1/2 day) to 10080 (7 days)
+CORPSE_DELAY_UNTIL_ROTTING = 1440
-; Basic medical skill needed to cure poison (in addition to doctoring skill). Range: 1-100
-POISON_BASE_MEDICAL_SKILL_TO_CURE = 50
-
-; A multiplicator that determines how many heal points are needed to cure one point of poison
-POISON_MEDICAL_POINTS_TO_CURE_MULTIPLICATOR = 0.5
-
-; Percentage of damage dealt by zombies that will be poisoned. Range: 0 - 100
-ZOMBIE_POISON_DAMAGE_PERCENTAGE = 50
-
-; This multiplier determines the damage we take every hour for being poisoned (simulating our health deteriorating from the infection).
-; Roughly speaking, the damage we take equals (total poison/max life) * (100 - poison resistance) * this multiplier
-; valid values from 1.0 to 10.0, 4.0 is recommended
-POISON_INFECTION_DAMAGE_MULTIPLIER = 2.0
+; How many minutes it takes until a corpse vanishes. Default 4320 (3 days), valid values from 1440 (1 day) to 20160 (14 days)
+CORPSE_DELAY_UNTIL_DONE_ROTTING = 4320
;******************************************************************************************************************************
;******************************************************************************************************************************
+
[Tactical Food Settings]
;******************************************************************************************************************************
@@ -2413,6 +2898,9 @@ POISON_INFECTION_DAMAGE_MULTIPLIER = 2.0
; - if seriously out of water or food, there is a chance that he'll lose strength an health points. You can die from this!
; You can regain lost stat points via surgery with the new trait system. However, this requires the pateient to be well-fed again (both values above 0)
+; set this to TRUE to play with food.
+FOOD = FALSE
+
; how much food and water is digested every hour? This is the base value, that later gets modified. Range: 0-250
FOOD_DIGESTION_HOURLY_BASE_FOOD = 20
FOOD_DIGESTION_HOURLY_BASE_DRINK = 130
@@ -2430,15 +2918,104 @@ FOOD_DECAY_IN_SECTORS = TRUE
; a global modificator to the speed at which food decays. 1.0 is normal, values between 0.1 and 10.0
FOOD_DECAY_MODIFICATOR = 1.0
-; maximum amount of food poisoning one can get from eating a single piece of food
-FOOD_MAX_POISONING = 5
-
; do mercs make sounds when eating/drinking?
FOOD_EATING_SOUNDS = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
+[Disease Settings]
+
+; If DISEASE is TRUE, your mercs can get diseases. Diseases are specified in Disease.xml. For example, you can get them from
+; -insects in swamp & tropical sectors
+; -contact with other people, animals and the dead
+; -open wounds
+; -spoiled food (requires food system to be on)
+;
+; A Disease will give you certain mali. This can even be a health loss. If untreated, most diseases get worse, in extreme cases, you could die from it.
+; Doctors can cure most diseases. Some medicine items also help, and you can protect yourself with other items.
+
+; set this to TRUE to play with diseases.
+DISEASE = FALSE
+
+; if DISEASE and DISEASE_STRATEGIC are set to TRUE, corpses pose a health risk.
+; Once a corpse vanishes, it creates disease points in that sector. The more disease points, the higher the chance mercs catch any corpse-related illness.
+; This can negatively affect the breath and health points of any NPC (enemy, militia or civilian) in that sector.
+; If INDIVIDUAL_MILITIA and INDIVIDUAL_MILITIA_MANAGE_HEALTH are true, this negatively affects a militia's hourly regeneration.
+; You can remove corpses via the Disease->Burial assignment to stop this from happening.
+; You can remove disease points via the Disease->Treatment assignement, this works similar to the doctor assignment.
+DISEASE_STRATEGIC = TRUE
+
+; The World Health Organization has a website that contains a few helpful tips on diseases.
+; It also allows you to subscribe. This will cost you money every day; in return you have access to a new map mode that shows you where in Arulco the arulcan plague has broken out.
+; requires DISEASE and DISEASE_STRATEGIC to be TRUE
+DISEASE_WHO_SUBSCRIPTIONCOST = 2000
+
+; if a merc with disease #0 consumes food, the food becomes contaminated - anybody eating from it will get the disease
+; if a merc with disease #0 is hit by a blade or throwing knife, that item becomes contaminated - anybody hit with it will get the disease
+DISEASE_CONTAMINATES_ITEMS = TRUE
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+
+[Dynamic Opinion Settings]
+
+;******************************************************************************************************************************
+; In this section you can specify whether mercs form dynamic opinions on each other
+;******************************************************************************************************************************
+
+; mercs can form dynamic opinions of each other, this in turn will affect their morale
+; for more info on what can affect opinions, see Dynamic Opinion Modifiers Settings in Morale_Settings.ini
+DYNAMIC_OPINIONS = TRUE
+
+; notify the player of opinion changes in the message log
+DYNAMIC_OPINIONS_SHOWCHANGE = TRUE
+
+; if a merc A notices that merc B's mean wage times exp level(B)/exp level (A) times this is greater than their mean wage, he can get a
+; negative opinion of merc B
+WAGE_ACCEPTANCE_FACTOR = 1.5
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Dynamic Dialogue Settings]
+
+;******************************************************************************************************************************
+; In this section you can specify whether mercs talk to each other.
+;******************************************************************************************************************************
+
+; If DYNAMIC_DIALOGUE is TRUE, mercs will comment on each other.
+; This can happen whenever something influences their relationship.
+; Mercs will accuse each other of doing something - or compliment them. Other mercs can then react and choose answers
+; depending on their relations and personality.
+; If an IMP interjects, the player has a short time to select the kind of response he wants to give.
+DYNAMIC_DIALOGUE = FALSE
+
+; the dialogue boxes will stay on for x milliseconds
+DYNAMIC_DIALOGUE_TIME_OFFSET = 3000
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[PMC Settings]
+
+;******************************************************************************************************************************
+; In this section you can specify whether you will have access to a private military contractor that allows hiring militia
+;******************************************************************************************************************************
+
+; if PMC is TRUE, you will get an email from a PMC once you've started training militia.
+PMC = FALSE
+
+; on the website you can hire regular and veteran militia (for a high price). These can enter Arulco in sectors with certain facilities,
+; like airport, harbours and border posts
+; The PMC will slowly replenish its ranks, here you can define how many militia it will have at max
+PMC_MAX_REGULARS = 35
+PMC_MAX_VETERANS = 20
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
[Tactical Fortification Settings]
;******************************************************************************************************************************
@@ -2446,7 +3023,14 @@ FOOD_EATING_SOUNDS = TRUE
;******************************************************************************************************************************
; If set to false, we cannot fill sandbags or set up/remove fortifications while enemies are in the sector
-FORTIFICATION_ALLOW_IN_HOSTILE_SECTOR = FALSE
+FORTIFICATION_ALLOW_IN_HOSTILE_SECTOR = TRUE
+
+; can roofs collapse when they or their supporting walls are hit?
+ROOF_COLLAPSE = TRUE
+
+; Option to turn out a structure's tileset and tileset index if we press 'f' while the mouse is over it
+; This is quite useful when adding fortification or interactive action data
+PRINTOUTTILESET = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2540,6 +3124,22 @@ INCLUDE_CONTRACTS_IN_PROJECTED_EXPENSES_WINDOW = 1
; If disabled, the transition from the strategy screen will be skipped before entering tactical screen
DISABLE_STRATEGIC_TRANSITION = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Determine how to notify Player in Extreme Iron Man game, that it's a time to save.
+;
+; 0 = Open save screen.
+; 1 = Pause the game.
+; 2 = Do nothing (in auto-saves we trust).
+;------------------------------------------------------------------------------------------------------------------------------
+
+EXTREME_IRON_MAN_SAVING_TIME_NOTIFICATION = 1
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Determine the hour in Extreme Iron Man when progress can be saved (0-23)
+;------------------------------------------------------------------------------------------------------------------------------
+
+EXTREME_IRON_MAN_SAVING_HOUR = 0
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2593,17 +3193,6 @@ GAME_PROGRESS_MINIMUM = 0
; You can use a negative modifier to reduce progress below its normal level. It cannot make progress lower than 0.
GAME_PROGRESS_MODIFIER = 0
-;------------------------------------------------------------------------------------------------------------------------------
-; Number of kills required to get a single progress point, based on game difficulty.
-; The total number of progress points you can get is limited by GAME_PROGRESS_KILLS (see above)
-;------------------------------------------------------------------------------------------------------------------------------
-
-NUM_KILLS_PER_PROGRESS_POINT_NOVICE = 7
-NUM_KILLS_PER_PROGRESS_POINT_EXPERIENCED = 10
-NUM_KILLS_PER_PROGRESS_POINT_EXPERT = 15
-NUM_KILLS_PER_PROGRESS_POINT_INSANE = 60
-
-
;------------------------------------------------------------------------------------------------------------------------------
; The minimum progress level required to trigger some events.
; Range: 0-100%
@@ -2640,7 +3229,7 @@ GAME_PROGRESS_OFFENSIVE_STAGE_2 = 85
TRIGGER_MASSIVE_ENEMY_COUNTERATTACK_AT_DRASSEN = TRUE
-; This enables massive counterattacks in all cities, just like in Drassen.
+; This enables massive counterattacks in all cities (currently hardcoded), just like in Drassen.
; NOTE: These attacks will be huge. You have been warned.
; 0: no attacks
; 1: counterattacks on all cities possible
@@ -2667,7 +3256,6 @@ CREPITUS_ATTACK_ALL_TOWNS = FALSE
; 5 = Chitzena
; 6 = Grumm
;------------------------------------------------------------------------------------------------------------------------------
-
WHICH_MINE_SHUTS_DOWN = -1
@@ -2683,7 +3271,7 @@ WHICH_MINE_SHUTS_DOWN = -1
;******************************************************************************************************************************
;------------------------------------------------------------------------------------------------------------------------------
-; Reinforcements
+; Reinforcement Settings
;
; This feature allows enemies/militia to immediately reinforce an adjacent sector that comes under attack. They arrive
; at the edge of the map, a few turns after the battle starts. This can have a major impact on the outcome of a battle.
@@ -2691,11 +3279,10 @@ WHICH_MINE_SHUTS_DOWN = -1
; Note that the maximum number of people on each team that can actually appear simultaneously in the same battle is
; defined in the System Limits Settings section. If there are more than this amount, they will only appear when others
; die or run away.
+;
+; Reinforcements are enabled in TableData\DifficultySettings.xml.
;------------------------------------------------------------------------------------------------------------------------------
-; Allows enemy/militia reinforcements from adjacent sectors.
-ALLOW_REINFORCEMENTS = FALSE
-
; Allows reinforcements only between city sectors. Only affects militia, not enemies.
ALLOW_REINFORCEMENTS_ONLY_IN_CITIES = FALSE
@@ -2724,6 +3311,20 @@ RND_ENTER_MILITIA_REINFORCEMENTS = 6
; Don't allow permanent items removal for no merc in that sector
NO_REMOVE_RANDOM_SECTOR_ITEMS = TRUE
+; Depending on game difficulty enemy groups created during offensives can include tanks.
+ARMY_USES_TANKS_IN_ATTACKS = FALSE
+; Depending on game difficulty enemy patrols at game start can be randomly reinforced with.
+ARMY_USES_TANKS_IN_PATROLS = FALSE
+; Minimum progress required for tanks to appear.
+TANK_MINIMUM_PROGRESS = 60
+
+; Depending on game difficulty enemy groups created during offensives can include jeeps.
+ARMY_USES_JEEPS_IN_ATTACKS = FALSE
+; Depending on game difficulty enemy patrols at game start can be randomly reinforced with.
+ARMY_USES_JEEPS_IN_PATROLS = FALSE
+; Minimum progress required for jeep to appear.
+JEEP_MINIMUM_PROGRESS = 30
+
;------------------------------------------------------------------------------------------------------------------------------
; Vehicle Inventory
;------------------------------------------------------------------------------------------------------------------------------
@@ -2762,6 +3363,14 @@ FACILITY_EVENT_RARITY = 1000
; noticeable. Increase this for the opposite. Default = 50.
FACILITY_DANGER_RATE = 50
+;------------------------------------------------------------------------------------------------------------------------------
+; Facilities can produce items.
+; This requires defining production lines for each item in FacilityTypes.xml and some set up in SetFactoryLeftoverProgress(...)
+; and GetFactoryLeftoverProgress(...) in scripts/strategicmap.lua.
+;------------------------------------------------------------------------------------------------------------------------------
+
+FACTORIES = FALSE
+
;******************************************************************************************************************************
; Activates the new additional repair mode.
; While the old JA 1.13 repair system goes from soldier to soldier, this algorithm goes through item types, priorizing
@@ -2781,23 +3390,12 @@ ADDITIONAL_REPAIR_MODE = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; determines wether a gun can suffer permanent damage that cannot be repaired by anyone other than local smiths.
+; This can also be done by mercs with the 'technician' trait, see Skills_Settings.ini
ADVANCED_REPAIR = TRUE
; the only items we can repair are guns and armour
ONLY_REPAIR_GUNS_AND_ARMOUR = FALSE
-; if set to true mercs with technician/engineer trait (New trait system) can repair item treshold much like local weaponsmiths can
-MERCS_CAN_DO_ADVANCED_REPAIRS = FALSE
-
-; allows a gun to get dirty when used, thereby increasing the chance of weapon jamming
-DIRT_SYSTEM = TRUE
-
-; repairing a gun to its currently possible maximum value also cleans the gun (always so on repair shopkeepers)
-FULL_REPAIR_CLEANS_GUN = FALSE
-
-; every turn, a gun suffers a dirt increase equal to a singleshot dirt increase divided by this number
-SECTOR_DIRT_DIVIDER = 700
-
; with this value one can increase or lower the dirt generated by all guns. Values from 0.1 to 10.0
DIRT_GLOBAL_MODIFIER = 1.25
@@ -2861,26 +3459,20 @@ PRISONER_RETURN_TO_ARMY_CHANCE = 50
; chance that interrogated soldiers decide to join your cause (they will be turned into militia of same or lower quality)
PRISONER_DEFECT_CHANCE = 25
-; chance that interrogated soldiers can give info on enemy positions
-PRISONER_INFO_BASECHANCE = 25
+; chance that interrogated soldiers give us intel (see Intel Settings)
+PRISONER_INTEL_CHANCE = 25
-; chance that interrogated soldiers can give info on enemy numbers
-PRISONER_INFO_NUMBER_CHANCE = 30
-
-; chance that interrogated soldiers can give info on enemy movement directions
-PRISONER_INFO_DIRECTION_CHANCE = 40
-
-; chance that interrogated soldiers pays you ransom money
+; chance that interrogated soldiers get you ransom money
PRISONER_RANSOM_CHANCE = 25
; points needed to interrogate prisoners of specific types. You can see your points on the merc's face in strategic: 145/7 means 145 points, 7 prisoners
-; Interrogation first removes admin prisoners, then regulars and then elites
-; If regulars and elites join your militia, there is a chance that they will be demoted, otherwise they will join as regular or veteran militia
-; special prisoners do not exist... yet.
-PRISONER_INTERROGATION_POINTS_ADMIN = 80
-PRISONER_INTERROGATION_POINTS_REGULAR = 100
-PRISONER_INTERROGATION_POINTS_ELITE = 140
-PRISONER_INTERROGATION_POINTS_SPECIAL = 250
+; When ordering mercs to interrogate, you can order them to target a specific class of prisoners, they will first interrogate those and then focus on the other types
+PRISONER_INTERROGATION_POINTS_ADMIN = 30
+PRISONER_INTERROGATION_POINTS_REGULAR = 50
+PRISONER_INTERROGATION_POINTS_ELITE = 80
+PRISONER_INTERROGATION_POINTS_OFFICER = 150
+PRISONER_INTERROGATION_POINTS_GENERAL = 250
+PRISONER_INTERROGATION_POINTS_CIVILIAN = 25
;------------------------------------------------------------------------------------------------------------------------------
; Helicopter Repair
@@ -2958,7 +3550,7 @@ MORALE_MOD_BACKGROUND_XENOPHOBIC = 5
; If set to TRUE, you can browse to the briefing room website on the laptop
BRIEFING_ROOM = FALSE
-; If set to TRUE, you can browse to the encyclopedia website on the laptop
+; If set to TRUE, you can browse to the encyclopedia website on the laptop (Note: Feature is currently deactivated and does not do anything)
ENCYCLOPEDIA = FALSE
; Determines when to show items in Encyclopedia. 4: Spotted item in merc inventory. 3: Spotted in dealers inventory (or 4),
@@ -2980,6 +3572,9 @@ CAMPAIGN_HISTORY = TRUE
; Only read the last ... battle reports, forget older ones. With -1 (default), read all of them. Reports lost this way cannot be recreated!
CAMPAIGN_HISTORY_MAX_REPORTS = -1
+; Show details in background tooltip
+BACKGROUND_TOOLTIP_DETAILS = TRUE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -3046,6 +3641,7 @@ ENABLE_ARMOR_COVERAGE = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; Determines whether ammo weight is calculated based on the number of bullets remaining in a clip.
; If FALSE, all magazines will weigh the same, regardless of how much bullets are left inside.
+; This setting also applies to consumable items (food, drugs, canteens, camo kits).
;------------------------------------------------------------------------------------------------------------------------------
DYNAMIC_AMMO_WEIGHT = TRUE
@@ -3122,128 +3718,6 @@ SOLDIERCLASS_SPECIFIC_ITEM_TABLES = TRUE
NEW_AGGRESSIVE_AI = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; Enemy army composition
-;
-; These settings are used to control the composition of enemy troops, at the start of the game and later on in the campaign.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Percentage of troops that are actually placed on the map at the start of the game.
-; 100 = All "default" troops are placed.
-; 200 = Twice as many troops are placed.
-INITIAL_GARRISON_PERCENTAGES_NOVICE = 70
-INITIAL_GARRISON_PERCENTAGES_EXPERIENCED = 100
-INITIAL_GARRISON_PERCENTAGES_EXPERT = 150
-INITIAL_GARRISON_PERCENTAGES_INSANE = 200
-
-; Minimum enemy group size. Enemy groups will never be smaller than this!
-MIN_ENEMY_GROUP_SIZE_NOVICE = 3
-MIN_ENEMY_GROUP_SIZE_EXPERIENCED = 4
-MIN_ENEMY_GROUP_SIZE_EXPERT = 6
-MIN_ENEMY_GROUP_SIZE_INSANE = 12
-
-; Percent of troops converted to extra elites in enemy groups
-PERCENT_EXTRA_ELITES_EXPERIENCED = 0
-PERCENT_EXTRA_ELITES_EXPERT = 25
-PERCENT_EXTRA_ELITES_INSANE = 50
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Queen's Pool
-;
-; These settings control how many troops the queen has for using against you, how many new troops she gets every day,
-; and so on. If the queen runs out of troops, she cannot dispatch new army units to send against you.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Determines whether or not the queen has unlimited troops. If she does, most of the settings below are completely ignored.
-UNLIMITED_POOL_OF_TROOPS_NOVICE = FALSE
-UNLIMITED_POOL_OF_TROOPS_EXPERIENCED = FALSE
-UNLIMITED_POOL_OF_TROOPS_EXPERT = FALSE
-UNLIMITED_POOL_OF_TROOPS_INSANE = TRUE
-
-; Amount of troops avaliable to the queen at game start
-QUEENS_INITIAL_POOL_OF_TROOPS_NOVICE = 150
-QUEENS_INITIAL_POOL_OF_TROOPS_EXPERIENCED = 200
-QUEENS_INITIAL_POOL_OF_TROOPS_EXPERT = 400
-QUEENS_INITIAL_POOL_OF_TROOPS_INSANE = 8000
-
-; Amount of troops that will be added to queens army when the troops pool is empty
-QUEEN_POOL_INCREMENT_PER_DIFFICULTY_LEVEL = 60
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Alert Levels
-;
-; These settings change the speed at which the enemy becomes "worried" about your presence in Arulco. As the queen becomes
-; more concerned, she will be more determined in sending stronger troops against you. Also, enemies will have a better
-; chance of spotting your mercs in the wilderness and chasing them around.
-;
-; Everytime an enemy or merc group arrives in a new sector, this is the chance the enemy will detect the player in
-; adjacent sectors. This chance is associated with each side checked. Stationary groups do this check periodically.
-;
-; Lower alert levels mean the enemy is less aggressive, and less willing to chase you around the map.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Sets the starting alert chances.
-ENEMY_STARTING_ALERT_LEVEL_NOVICE = 5
-ENEMY_STARTING_ALERT_LEVEL_EXPERIENCED = 20
-ENEMY_STARTING_ALERT_LEVEL_EXPERT = 60
-ENEMY_STARTING_ALERT_LEVEL_INSANE = 80
-
-; When an enemy spots and chases a player group, the alertness value decrements by this value.
-; Ranges from 1-100 (but recommend 20-60).
-ENEMY_ALERT_DECAY_NOVICE = 75
-ENEMY_ALERT_DECAY_EXPERIENCED = 50
-ENEMY_ALERT_DECAY_EXPERT = 25
-ENEMY_ALERT_DECAY_INSANE = 10
-
-; Certain conditions can cause the queen to go into a "full alert" mode. This means that temporarily, the queen's
-; forces will automatically succeed adjacent checks until x number of enemy-initiated battles occur. The same variable
-; is what is used to determine the free checks.
-NUM_AWARE_BATTLES_NOVICE = 1
-NUM_AWARE_BATTLES_EXPERIENCED = 2
-NUM_AWARE_BATTLES_EXPERT = 3
-NUM_AWARE_BATTLES_INSANE = 4
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Queen's Army AI / Behavior
-;
-; These settings control how often the queen makes decisions (to attack or replenish her forces), and how aggressive
-; she is about it.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; The base interval between the queen's decisions. She can only make one decision at a time.
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_NOVICE = 480
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_EXPERIENCED = 360
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_EXPERT = 180
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_INSANE = 90
-
-; A random variation to the interval between queen's decisions.
-EVALUATION_DELAY_VARIANCE_NOVICE = 240
-EVALUATION_DELAY_VARIANCE_EXPERIENCED = 180
-EVALUATION_DELAY_VARIANCE_EXPERT = 120
-EVALUATION_DELAY_VARIANCE_INSANE = 60
-
-; This is a delay between the player taking a sector, and the queen being able to decide to attack it.
-; A longer grace period makes the game easier by giving the player more time to prepare for counter-attacks.
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_NOVICE = 144
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_EXPERIENCED = 96
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_EXPERT = 48
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_INSANE = 6
-
-; This is a delay between the player destroying an enemy patrol, and the queen being able to refill that patrol.
-; A longer grace period causes defeated enemy patrols to reappear less often.
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_NOVICE = 16
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_EXPERIENCED = 12
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_EXPERT = 8
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_INSANE = 2
-
-; Determines whether the queen always prefers attacking your sectors to defending her own.
-; JA2 default is FALSE. To ensure she doesn't run out of troops, make sure you either increase the reinforcement pool or enable
-; unlimited reinforcements
-AGGRESSIVE_QUEEN_AI_NOVICE = FALSE
-AGGRESSIVE_QUEEN_AI_EXPERIENCED = FALSE
-AGGRESSIVE_QUEEN_AI_EXPERT = FALSE
-AGGRESSIVE_QUEEN_AI_INSANE = TRUE
-
;------------------------------------------------------------------------------------------------------------------------------
; Individual Enemy Group Behavior
;
@@ -3261,6 +3735,224 @@ ENEMY_INVESTIGATE_SECTOR = FALSE
REASSIGN_PENDING_REINFORCEMENTS = FALSE
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Strategic Additional Enemy AI Settings]
+
+;******************************************************************************************************************************
+; These settings change the behavior of the queen's additional AI on the Strategy Map.
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Arulco Special Division
+;
+; Control over a number of new features will gradually be given over to a second strategic 'AI' - the 'Arulco Special Division'.
+; This should control if, how and when these new features are used by the AI.
+;
+; It has its own 'budget', which allows it to purchase new actions. This serves to limit the amount of the AIs actions.
+; It also gives the player a way to compete with the AI - lower the AI budget, and the AI can do less harm.
+; For example, part of the AI budget might come from mine income, which the player can take away.
+;
+; If possible, the AI should have to buy and maintain its assets.
+; This way the player could harm the AI by specifically targetting those assets if he chooses so.
+; Ideally this gives the player another immersive way to do sth. in the game.
+; For example, enemy helicopters have to be bought, fuelled and repaired.
+; In order to stop enemy heli raids, the player could
+; - shoot them down
+; - steal enemy fuel deliveries
+; - sabotage enemy helis in their airfield
+;
+; There is a cyclic update of this AI. Each time the AI decides whether it wants (and can afford) new assets.
+; These assets then have to be ordered and can only be used once arrived.
+; The AI also decides how to use these assets.
+;
+; This feature is not recommended for new players.
+;
+; For specific sector settings, see Mod_Settings.ini.
+;------------------------------------------------------------------------------------------------------------------------------
+
+; TRUE: Arulco Special Division is active
+ASD_ACTIVE = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; The AI has to buy its assets, and these need to be 'shipped' to the country before it can use them.
+; These are the base costs in $ for AI resources.
+; It is planned that at some point, the player and the AI will be able to influence these.
+;------------------------------------------------------------------------------------------------------------------------------
+; one unit of fuel, valid from 1 to 100
+ASD_COST_FUEL = 10
+
+; a helicopter, valid from 1 to 1000000
+ASD_COST_HELI = 30000
+
+; a jeep (armed with a MG), valid from 1 to 1000000
+ASD_COST_JEEP = 20000
+
+; a tank, valid from 1 to 1000000
+ASD_COST_TANK = 50000
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Once bought, it takes time for resources to get to the country.
+; These are the base times in minutes for the goods to arrive.
+; It is planned that at some point, the player and the AI will be able to influence these.
+;------------------------------------------------------------------------------------------------------------------------------
+; one unit of fuel, valid from 1 to 60 * 48
+ASD_TIME_FUEL = 480
+
+; a helicopter, valid from 1 to 60 * 48
+ASD_TIME_HELI = 1200
+
+; a jeep (armed with a MG), , valid from 1 to 60 * 48
+ASD_TIME_JEEP = 720
+
+; a tank, , valid from 1 to 60 * 48
+ASD_TIME_TANK = 1440
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Determine whether ASD assigns tanks and jeeps to enemy patrols and jeeps
+;------------------------------------------------------------------------------------------------------------------------------
+ASD_ASSIGNS_TANKS = TRUE
+ASD_ASSIGNS_JEEPS = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Tanks and jeeps are not refueled, instead fuel is required upon 'creating' them
+;------------------------------------------------------------------------------------------------------------------------------
+ASD_FUEL_REQUIRED_TANK = 100
+ASD_FUEL_REQUIRED_JEEP = 20
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Enemy Helicopter Settings]
+
+;******************************************************************************************************************************
+; This feature allows the AI to use helicopters to rapidly deploy troops, similar to Skyrider.
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Once the AI is aware of the player using Skyrider's helicopter (indicated by a cutscene), or after a certain game progress,
+; it can purchase some for itself.
+; Just like the player, it can then fly a small squad around on the map and deploy them.
+; Helicopters have to be fuelled and repaired, which consumes AI resources.
+;
+; The player can shoot down helis via SAM batteries, and infantry-based MANPADS. Due to engine limitations, this cannot be
+; done manually and happens automatically once a heli is known and in range.
+; If a helicopter was downed, there is a chance that the pilot survived and can be killed or captured by the player
+; (downed pilots are counted as officers with regards to Prisoner Interrogation).
+;
+; Provided the sector has the correct tilesets, it is also possible to destroy enemy helicopters on the ground if they
+; are parking in their home base.
+;
+; Enemy helicopter raids target strategically important targets to the player (towns, mines, inactive SAMs, roads, farms if
+; MILITIA_VOLUNTEER_POOL is on) that are lightly defended and reachable without too much hostile SAM exposure.
+;
+; The AI can have up to 2 helicopters, each carrying up to 6 elites. Travel time per sector is 10 minutes.
+;
+; For specific sector settings, see Mod_Settings.ini.
+;------------------------------------------------------------------------------------------------------------------------------
+; TRUE: Arulco Special Division can use helicopters
+ENEMYHELI_ACTIVE = FALSE
+
+; helis are unlocked either by the Skyrider cutscene (skipping it won't help) or if game progress reaches this value.
+ENEMYHELI_DEFINITE_UNLOCK_AT_PROGRESS = 30
+
+; heli hitpoints, valid from 1 to 255
+ENEMYHELI_HP = 100
+
+; time to repair 1 HP at the home base in minutes, valid from 1 to 20
+ENEMYHELI_HP_REPAIRTIME = 6
+
+; cost to repair 1 HP at the home base in $, valid from 10 to 1000
+ENEMYHELI_HP_COST = 200
+
+; heli maximum fuel, valid from 25 to 200
+ENEMYHELI_FUEL = 50
+
+; time to refuel 1 unit of fuel at the home base in minutes, valid from 1 to 9999
+ENEMYHELI_FUEL_REFUELTIME = 3
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Settings related to SAMs
+; These settings only affect enemy helicopters and attacks against them. For Skyrider, see Helicopter_Settings.ini instead.
+;
+; Every time an enemy helicopter moves and is known to the player, his air defense will try to shoot the heli down.
+; There are two kinds of anti-air-defense:
+; - SAM sites cover a large amount of the map and can fire in any of 'their' sectors (see SamSites.xml).
+; They require control of the sector. They can be rendered inactive by damaging their control computer.
+; Damaged SAM sites can be repaired by the player in the strategic map.
+; They uncover any enemy heli in their sectors, but will only fire if staff (militia or mercs) is present.
+; CTH depends on quality of the staff and range to the target.
+; - MAn-Portable-Air-Defense-Systems are infantry based missile launchers. They can only be used by mercs.
+; They can only be used on targets in the same or adjacent sectors.
+; CTH depends on weapon status, range and the user's cth with launchers.
+; The launchers have to be armed in the inventory, it is not required to have them in the hands.
+;
+; For balance reasons (there should to be an incentive to use MANPADS over SAMs), default MANPADS damage is a lot higher than
+; SAM damage.
+;------------------------------------------------------------------------------------------------------------------------------
+; the AI does not consider attacking a sector if the flight path (to and back) contains more than this number of sectors
+; with an active, hostile SAM. Increasing this number will make helicopters more reckless.
+; Valid from 0 to 10.
+ENEMYHELI_TOLERATED_HOSTILE_SAMSECTORS = 4
+
+; fixed damage of a SAM hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_SAM_DAMAGE_BASE = 25
+
+; maximum random extra damage of a SAM hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_SAM_DAMAGE_VAR = 30
+
+; fixed damage of a MANPADS hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_MANPADS_DAMAGE_BASE = 40
+
+; maximum random extra damage of a MANPADS hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_MANPADS_DAMAGE_VAR = 80
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Raid Settings]
+
+;******************************************************************************************************************************
+; These settings control whether randomized raids occur in player-controlled sectors
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If the player doesn't defend his city sectors/SAM sites enough, opportunistic forces can attack them at night.
+; These attacks occur if these sectors have only very few mercenaries or militia present.
+; Raids can be done by
+; - bloodcats
+; - zombies (requires zombie feature to be active)
+; - bandits
+; These forces will attack anyone in a sector and can also fight in autoresolve. If your forces are defeated, this will result
+; in a severe morale loss.
+;
+; Whether a raid can happen in a sector at all is set in TableData\Maps\SectorNames.xml with the
+; //-tags.
+;
+; NOTE: THIS WILL MAKE THE GAME HARDER!!!
+;------------------------------------------------------------------------------------------------------------------------------
+; set to TRUE to enable raids
+RAID_BLOODCATS = FALSE
+RAID_ZOMBIES = FALSE
+RAID_BANDITS = FALSE
+
+; base value determining how fast the forces are replenished daily. Higher means more forces.
+; Values from 1 to 100, default 3.
+RAID_REPLENISH_BASEVALUE = 3
+
+; how many troops are allowed in a raid at maximum?
+; If the size of a bloodcat or bandit raid is lower than the defensive force' size, they will not attack.
+; Zombies have no such inclination and will attack regardless.
+RAID_MAXSIZE_BLOODCATS = 8
+RAID_MAXSIZE_ZOMBIES = 12
+RAID_MAXSIZE_BANDITS = 6
+
+; How many attacks can happen potentially in a single night? Note that if player forces are strong enough, no attack will occur.
+RAID_MAXATTACKSPERNIGHT_BLOODCATS = 3
+RAID_MAXATTACKSPERNIGHT_ZOMBIES = 3
+RAID_MAXATTACKSPERNIGHT_BANDITS = 3
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -3284,6 +3976,9 @@ MIN_LOYALTY_TO_TRAIN_MILITIA = 20
; This controls how fast town militia gets trained.
MILITIA_TRAINING_RATE = 4
+; if set to TRUE, accumulated militia training progress is awarded to the next training session if a training session is finished.
+MILITIA_TRAINING_CARRYOVER_PROGRESS = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; These settings control the training of Elite (Dark-Blue) Town Militia. They are considerably stronger than other militia,
; and are almost as well-trained as enemy Blackshirts.
@@ -3323,191 +4018,42 @@ TEACHER_TRAIT_EFFECT_ON_LEADERSHIP = 100
;******************************************************************************************************************************
;******************************************************************************************************************************
-[Mobile Militia Training Settings]
+[Militia Volunteer Pool Settings]
-;******************************************************************************************************************************
-; These settings control the training of Mobile Militia.
-;******************************************************************************************************************************
+; If MILITIA_VOLUNTEER_POOL is TRUE, we have a limited volunteer pool. If we train militia, the pool is lowered, if we run out
+; of volunteers we cannot train militia any more.
+; Each town sector has an assumed civilian population (see SectorNames.xml) and a loyalty value (the percentage displayed next
+; to a town's name in the strategic map). population times loyalty equals loyal population.
+; We can also gain volunteers by interrogating prisoners or as a result of quests.
-; Allows training militia that move around on the Strategy Map.
-; If FALSE, all other settings in this category are disabled automatically.
-ALLOW_MOBILE_MILITIA = FALSE
+; toggles this feature on and off
+MILITIA_VOLUNTEER_POOL = FALSE
-; Delay ability to train Mobile Militia till this day
-MOBILE_MILITIA_TRAINING_DELAY = 1
+; If we liberate a sector for the first time, we get loyal population times this factor volunteers instantly.
+MILITIA_VOLUNTEER_POOL_GAINFACTOR_LIBERATION = 0.2
-; This is the number of Mobile Militia created when you finish a training session (or, every N hours. see below).
-NUM_MOBILE_MILITIA_TRAINED_PER_SESSION = 10
+; Global loyal population size is increased by this factor for every farm sector we control.
+; The reasoning is that controlling food supplies shows our commitment to the common people, and eases the food situation tremendously.
+MILITIA_VOLUNTEER_POOL_MULTIPLIER_FARM = 0.05
-;------------------------------------------------------------------------------------------------------------------------------
-; These settings determine if training of additional mobile militia is allowed when a certain number is allready active.
-; You can still train mobiles if you are just below maximum.
-; Base modes available:
-; 0 = No maximum.
-; 2 = Maximum calculated by town sectors you have currently under control.
-; 4 = Maximum calculated by town sectors you have liberated at least one time.
-; 8 = Maximum calculated by towns under player control.
-; 16 = Maximum calculated by current progress.
-; 32 = Maximum calculated by best progress.
-; 64 = Maximum calculated by number of rebels in your team.
-; Any combination of base modes is possible by adding the base modes you want to use (e.g. 8 + 64 = 72).
-;
-; Advanced modes:
-; 0 = If more then one base mode is chosen the lowest one is used.
-; 128 = If more then one base mode is chosen the highest one is used.
-; For our example above (mode = 72) this means if your town limit dictates 30 militia are allowed and
-; rebel limit dictates 60 are allowed the final maximum becomes 30.
-; You can also use the highest one by adding 128 to your base mode(s) (e.g. 72 + 128 = 200)
-;
-; Deserting modes:
-; 0 = no deserters
-; 1 = deserters are generated when mobile militia is going to attack an enemy and the maximum is reached.
-; You can also choose to let some of them desert if they attack an enemy. To do so add +1 to the mode(s) you are going to use.
-; The number of deserters is randomly chosen but depends on the ratio active/maximum.
-; For example if you want to use modes 8 and 64 and also want deserters your final mode becomes 73 (8 + 64 + 1).
-;
-; MOBILE_MILITIA_MAX_ACTIVE_MODE 0 .. 255 (default = 0)
-; MOBILE_MILITIA_MAX_ACTIVE_MODIFIER 0.01 .. 10.0 (default = 0.5)
-;------------------------------------------------------------------------------------------------------------------------------
-MOBILE_MILITIA_MAX_ACTIVE_MODE = 195
-MOBILE_MILITIA_MAX_ACTIVE_MODIFIER = 0.5
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Training method options.
-;
-; There are two methods:
-; One is Manual Training - you pay money to train Mobile Militia whenever you desire.
-; The second method is to have them created automatically (for free!) every N hours.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Determines which method of training is used.
-; If set to FALSE, will generate a group of Mobile Militia at each conquered city every N hours. This also disables all
-; "Leadership and Mobile Militia Training settings", below.
-MUST_TRAIN_MOBILE_MILITIA = FALSE
-
-; If MUST_TRAIN_MOBILE_MILITIA is set to FALSE, this determines the interval between the creation of each new Mobile
-; Militia group.
-; Valid values are: 1, 2, 3, 4, 6, 8, 12, 24. All other values are invalid.
-CREATE_MOBILE_MILITIA_SQUAD_EACH_N_HOURS = 24
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Leadership and Mobile Militia training
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Minimum required leadership skill to train Mobile Militia
-MIN_LEADERSHIP_TO_TRAIN_MOBILE_MILITIA = 40
-
-; If set to TRUE, the trainer's leadership score determines how many militia are created in each "session", up to the
-; value dictated by DIV_OF_ORIGINAL_MILITIA.
-; If set to FALSE, all trainers will train the maximum number of Mobile Militia allowed.
-LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUANTITY = TRUE
-
-; Required leadership score to train the maximum number of Mobile Militia allowed.
-; (LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUANTITY must be set to TRUE for this to work)
-REQ_LEADERSHIP_FOR_MAX_MOBILE_MILITIA = 80
-
-; If set to TRUE, the trainer's leadership score determines what type of Mobile Militia are created (ROOKIE/REGULAR/ELITE).
-LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUALITY = TRUE
-
-; If LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUALITY is set to FALSE, this determines the composition of all Mobile Militia groups
-; you create. If these values don't add up to 100%, the remainder will be ROOKIE (green) militia.
-PERCENT_MOBILE_MILITIA_ELITES = 20
-PERCENT_MOBILE_MILITIA_REGULARS = 30
+; Volunteer gain per hour = ln(1 + loyal population * MILITIA_VOLUNTEER_POOL_GAINFACTOR_HOURLY)
+MILITIA_VOLUNTEER_POOL_GAINFACTOR_HOURLY = 0.002
;******************************************************************************************************************************
;******************************************************************************************************************************
-[Mobile Militia Movement Settings]
-
-;******************************************************************************************************************************
-; These settings control how Mobile Militia move around the strategy map.
-;******************************************************************************************************************************
+[Militia Strategic Movement Settings]
;------------------------------------------------------------------------------------------------------------------------------
-; If set to FALSE, Mobile Militia can move anywhere they want.
-; If set to TRUE, Mobile Militia movement is restricted, based on one of the two rules below (EXPLORATION / CONQUEST)
+; If ALLOW_MILITIA_STRATEGIC_COMMAND is TRUE, we can plot paths for militia just like for merc groups or the heli.
+; To command militia, display militia in the strategic map, then leftclick on a sector with militia in it.
;------------------------------------------------------------------------------------------------------------------------------
-RESTRICT_ROAMING = TRUE
+ALLOW_MILITIA_STRATEGIC_COMMAND = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; EXPLORATION-based restrictions
-;
-; Allow Mobile Militia to move through any EXPLORED sectors.
-; RESTRICT_ROAMING must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_MOVEMENT_THROUGH_EXPLORED_SECTORS = FALSE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; CONQUEST-based restrictions
-;
-; Allow Mobile Militia to use an optimized restriction system that's based on which cities you've liberated so far.
-; This utilizes the rules laid down in the file "DynamicRestrictions.XML".
-; RESTRICT_ROAMING must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_DYNAMIC_RESTRICTED_ROAMING = TRUE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; This setting controls whether Mobile Militia can move through "minor cities", I.E. any sector that contains a
-; city square where militia cannot be trained (for instance, San Mona). Militia can only attack enemies in such sectors if they
-; have already been liberated once in the past.
-;
-; In the JA2 campaign, this allows travel through:
-; San Mona, Tixa, Orta, Estoni, and Omerta.
-;
-; For this feature to work, "RESTRICT_ROAMING" and at least one of the other movement-restriction options must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_MOVEMENT_THROUGH_MINOR_CITIES = TRUE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; These settings determine whether Mobile Militia can move into Major Cities / SAM Sites to reinforce the local garrison.
-; This only happens if the city/SAM sector is liberated of enemies, and only if it has room for more militia.
-; Once the mobiles move into the city, they will turn into normal "Town Militia" and will not move anymore.
-;
-; For this feature to work, "RESTRICT_ROAMING" and at least one of the other movement-restriction options must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MOBILE_MILITIA_REINFORCE_TOWN_GARRISONS = TRUE
-ALLOW_MOBILE_MILITIA_REINFORCE_SAM_GARRISONS = TRUE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; This setting controls wether militia will follow the player on map in non combat situation.
-; If set to TRUE they will more likely move to a sector where a player merc is or is about to arrive and also stay there
-; (default behaviour). This overwrites any manual restrictions.
-; Set to FALSE if they dont worry about the player.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_FOLLOW_PLAYER = TRUE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; These settings control the splitting of mobile militia groups.
-; When militia is moving they will check the current and the 4 surrounding sectors and the target sector (and
-; its 4 neighbour sectors) for enemies and calculate a chance to spread based on the numbers of enemies and number militia.
-; Militia will always spread when the target sector can not hold all militia because of MAX_MILITIA_PER_SECTOR.
-; Remainder will eventually move along.
-; If they decide to spread, the groups will end up equal in size.
-;
-; There are various chances to spread when there are NO threats:
-; - 30% chance if origin sector is full and destination is empty, groups will become equal in size.
-; - 50% chance if origin and destination have militia, groups become equal in size.
-; - 0% chance if origin sector is not full and target is empty
-; - 0% chance when setting the target sector as No-Leave-Area (yellow). This has highest priority and overwrites above.
-; For threatened sectors the chances are:
-; - If origin sector is threatened but target is not then militia will stay in sector! this behaviour can not be adjusted.
-; - 0% chance to spread if origin sector is not threatened but target is.
-; - variable chance to spread if both target and source sectors are threatened based on enemy numbers:
-; (NumEnemiesNearOrigin * 100) / TotalNumEnemies
-; - 100% chance to spread if ALLOW_REINFORCEMENTS=TRUE and ALLOW_REINFORCEMENTS_ONLY_IN_CITY=FALSE, groups become equal.
-; And you can overwrite the chances with the settings below:
-; - 0% chance to spread when ALLOW_MILITIA_SPREAD_WHEN_FOLLOWING = FALSE and target sector has a player merc.
-; - 0% chance to spread when ALLOW_MILITIA_SPREAD = FALSE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_SPREAD = TRUE
-ALLOW_MILITIA_SPREAD_WHEN_FOLLOWING = FALSE
+; if TRUE, this feature requires either control and staffing of a military HQ, a merc in the same sector/town, or a radio operator
+; in an adjacent sector.
+MILITIA_STRATEGIC_COMMAND_REQUIRES_MERC = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -3594,6 +4140,9 @@ MILITIA_USE_SECTOR_EQUIPMENT_GUN = TRUE
; If this is set to TRUE, make sure to occasionally restock ammo for your militia.
MILITIA_USE_SECTOR_EQUIPMENT_AMMO = TRUE
+; determines whether militia takes new attachments for its gun from the sector. Existing attachments are not replaced
+MILITIA_USE_SECTOR_EQUIPMENT_GUN_ATTACHMENTS = TRUE
+
; determines wether militia takes grenades from the sector, it will take up to 2 grenades of one type
MILITIA_USE_SECTOR_EQUIPMENT_GRENADE = TRUE
@@ -3615,6 +4164,102 @@ MILITIA_USE_SECTOR_EQUIPMENT_CLASS_SPECIFIC_TABOOS = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
+[Militia Resource Settings]
+
+;******************************************************************************************************************************
+; These settings control whether we require resources to train and upgrade militia
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If this feature is used, the player can convert items to get 3 resources:
+; Guns: obtained from weapons, ammo
+; Armour: obtained from helmets, vests, pants, LBE and face items
+; Miscellaneous: obtained from melee weapons, launchers, grenades and bombs
+;
+; Whenever we train or promote militia, we spend these resources:
+; - A green militia requires 1 Gun.
+; - A promotion from green to regular militia requires 1 Gun + 1 Armour.
+; - A promotion from regular to elite militia requires 1 Gun + 1 Armour + 1 Misc..
+;
+; If we don't have enough resources, the training/promotion won't happen.
+;
+; Resources will be spent when we obtain militia by interrogation, but not if we recruit them from a PMC.
+;
+; Items can be converted into resources in the sector inventory by pressing [Alt] + [RMB], similar to how
+; SELL_ITEMS_WITH_ALT_LMB works.
+; Resources will be shown in the strategic map while the Militia view is active.
+;
+; Every time the maximum game progress increases, the resource pool is multiplied by the fraction of new and old progress.
+;
+; This feature requires MILITIA_USE_SECTOR_EQUIPMENT to be FALSE.
+;------------------------------------------------------------------------------------------------------------------------------
+MILITIA_REQUIRE_RESOURCES = FALSE
+
+; The resource value of an item is determined by its status, coolness, class specific modifiers, and the highest game progress reached so far.
+; progress modifier is MILITIA_RESOURCES_PROGRESSFACTOR / highest progress so far
+; values between 1.0 and 100.0, 10.0 recommended default
+MILITIA_RESOURCES_PROGRESSFACTOR = 10.0
+
+; class specific modifiers, values between 0.0 and 1.0
+
+; ammo modifier PER SINGLE BULLET. Note that coolness is not derived from the item's coolness, but the coolness of the crate item corresponding to this ammotype and caliber
+MILITIA_RESOURCES_ITEMCLASSMOD_AMMO_BULLET = 0.01
+
+; the gun modifier covers all guns and launchers
+MILITIA_RESOURCES_ITEMCLASSMOD_GUN = 0.9
+MILITIA_RESOURCES_ITEMCLASSMOD_ARMOUR = 0.3
+MILITIA_RESOURCES_ITEMCLASSMOD_MELEE = 0.2
+MILITIA_RESOURCES_ITEMCLASSMOD_BOMB = 0.25
+MILITIA_RESOURCES_ITEMCLASSMOD_GRENADE = 0.17
+MILITIA_RESOURCES_ITEMCLASSMOD_FACE = 0.05
+MILITIA_RESOURCES_ITEMCLASSMOD_LBE = 0.03
+
+; Different attachments have multiple modifiers. They also attribute to different resources
+MILITIA_RESOURCES_ITEMCLASSMOD_ATTACHMENT_LOW = 0.05
+MILITIA_RESOURCES_ITEMCLASSMOD_ATTACHMENT_MEDIUM = 0.1
+MILITIA_RESOURCES_ITEMCLASSMOD_ATTACHMENT_HIGH = 0.2
+
+; guns are further modified by a weapon class specific modifier
+MILITIA_RESOURCES_WEAPONMOD_PISTOL = 0.6
+MILITIA_RESOURCES_WEAPONMOD_M_PISTOL = 0.7
+MILITIA_RESOURCES_WEAPONMOD_SMG = 0.8
+MILITIA_RESOURCES_WEAPONMOD_RIFLE = 0.9
+MILITIA_RESOURCES_WEAPONMOD_SN_RIFLE = 1.0
+MILITIA_RESOURCES_WEAPONMOD_AS_RIFLE = 1.0
+MILITIA_RESOURCES_WEAPONMOD_LMG = 1.0
+MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Intel Settings]
+
+;------------------------------------------------------------------------------------------------------------------------------
+; The player can acquire and spend the Intel resource. This resource is closely tied to espionage and information brokering.
+; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconnaissance roleplay.
+;
+; Intel can be gained in several ways:
+; - interactive actions (like reading classified documents in a military base, hacking computers) can give one-time resources.
+; see function HandleInteractiveActionResult(...) in Overhead.lua for examples (warning, spoilers!)
+; - interrogating prisoners can give us intel, the amount depends on prisoner type
+; - mercs can hide in disguise and gather intel in enemy-occupied territory. It is very strongly recommended that any mercs
+; attempting to do so have the covert trait.
+; - You can take a camera and take photograps of important NPCs or locations of special interest. With luck, you can sell them
+; on the R.I.S. website. After a few hours of verification, you will receive a intel reward.
+; - Recruiting some NPCs gives you tiny bits of intel.
+;
+; You can spend intel in several ways:
+; - After you've received your first intel, you will receive an email with further tips on this. One will be the link to the
+; R.I.S. website. You can buy information on several things (troop presence & movement, enemy VIPs, location of imprisoned mercs...) here.
+; - Rumours say that a special trader deals high-tech weaponry exclusively for intel.
+; - Disguised spies can use it to boost their chances of creating turncoats out of enemies, see the 'Covert Ops' section of Skills_Settings.ini.
+;------------------------------------------------------------------------------------------------------------------------------
+
+RESOURCE_INTEL = TRUE
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
[Shopkeeper Inventory Settings]
;******************************************************************************************************************************
@@ -3652,6 +4297,9 @@ FAST_BOBBY_RAY_SHIPMENTS = FALSE
; Theoretically, everything will go faster if this is lower...
MINUTES_FOR_ASSIGNMENT_TO_COUNT = 45
+; if we order a merc to sleep in strategic view, notify us if this isn't possible
+NOTIFY_IF_SLEEP_FAILS = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; Skill Training
;
@@ -3679,6 +4327,10 @@ TEACHER_TRAIT_BONUS_TO_TRAINING_EFFICIENCY = 30
; The minimum skill rating a character must have before he can train fellow teammates in that skill.
MIN_SKILL_REQUIRED_TO_TEACH_OTHER = 25
+; The -tag in MercProfiles.xml controls whether mercs are stopped from increasing their stats. If TRUE, that tag is
+; disabled and increasing stats works normally.
+DISABLE_EVOLUTION = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; Two settings to synchronize the sleep/wake periods of Trainers and Students in the same sector.
;
@@ -3736,6 +4388,9 @@ MULTIPLIER_FOR_DIFFERENCE_IN_LIFE_VALUE_FOR_EMERGENCY = 4
; Number of "doctor" points used up to heal each point below OKLIFE
POINT_COST_PER_HEALTH_BELOW_OKLIFE = 2
+; If retreating mercs are bleeding, their squad can bandage them while on the move
+ALLOW_BANDAGING_DURING_TRAVEL = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Repairing
;------------------------------------------------------------------------------------------------------------------------------
@@ -3743,9 +4398,12 @@ POINT_COST_PER_HEALTH_BELOW_OKLIFE = 2
; Cost to unjam a weapon in repair pts
REPAIR_POINT_COST_TO_FIX_WEAPON_JAM = 2
-; Increase this value to reduce the number of repair pts each character generates (speeding up repair), or vice versa
+; Increase this value to reduce the number of repair pts each character generates (slowing down repair), or vice versa
REPAIR_RATE_DIVISOR = 2500
+; Increase this value to reduce the number of cleaning pts each character generates (slowing down gun cleaning), or vice versa
+CLEANING_RATE_DIVISOR = 500
+
; When calculating how many Repair Points a character can generate while assigned to a task, we take the total Repair Points
; the character can generate daily, and divide them by this number (normally 24, representing 24 hours).A higher value here slows
; down repair. A lower value speeds it up.
@@ -3796,7 +4454,7 @@ USE_XML_SQUADNAMES = FALSE
; Range: 100 - 300 Default: 150
;------------------------------------------------------------------------------------------------------------------------------
-CLOCK_SPEED_PERCENT = 150
+CLOCK_SPEED_PERCENT = 120
;------------------------------------------------------------------------------------------------------------------------------
; Timeslice in microseconds. The frequency that the screen is refreshed.
@@ -3807,22 +4465,12 @@ CLOCK_SPEED_PERCENT = 150
UPDATE_FREQUENCY = 16000
;------------------------------------------------------------------------------------------------------------------------------
-; Improved auto fast forwarding.
-; AUTO_FAST_FORWARD_ENEMIES:
-; 0 - default behaviour
-; 1 - auto fast forward only enemies that are not seen by player's team
-; 2 - auto fast forward only invisible enemies
-; 3 - auto fast forward all enemies
-; AUTO_FAST_FORWARD_MILITIA:
-; 0 - default behaviour
-; 1 - auto fast forward only militia that does not see enemies
-; 2 - auto fast forward militia always
-; Note: only movement is accelerated, most of specific actions like shooting and tossing grenades are performed at normal speed
+; Improved auto fast forwarding. Do not accelerate visible soldiers
+; Note: Even for invisible soldiers, only movement is accelerated
+; most of specific actions like shooting and tossing grenades are performed at normal speed
;------------------------------------------------------------------------------------------------------------------------------
-AUTO_FAST_FORWARD_ENEMIES = 0
-
-AUTO_FAST_FORWARD_MILITIA = 0
+IMPROVED_AUTO_FAST_FORWARD = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; Fast forward timeslice in milliseconds. The frequency that the base clock is updated.
@@ -3861,3 +4509,29 @@ DAYTIME_PRECISION = 4
NIGHTTIME_PRECISION = 5
;Number of remaining Soldiers before their location gets marked
MAX_SOLDIERS_LEFT = 1
+
+[Tactical AI Settings]
+; Allow enemy soldiers to retreat from battle
+AI_TACTICAL_RETREAT = FALSE
+
+; allow AI to shoot more often for suppression (when using OCTH) by faking minimum CTH = 1 for autofire capable weapons
+AI_EXTRA_SUPPRESSION = TRUE
+
+; AI morale with some additional tweaks
+AI_NEW_MORALE = TRUE
+
+; AI will try to avoid enemy sight, fresh corpses and overcrowded locations
+AI_BETTER_COVER = TRUE
+
+; disabled by default as it can be time consuming when playing covert
+; and doesn't make much sense anyway since in YELLOW state AI doesn't know exact enemy locations
+AI_YELLOW_FLANKING = FALSE
+
+; AI movement mode tweaks
+AI_MOVEMENT_MODE = TRUE
+
+; Experimental path tweaks for AI: avoid gas, deep water, light at night
+AI_PATH_TWEAKS = TRUE
+
+; Log AI decision info
+AI_DECISION_INFO = TRUE
\ No newline at end of file
diff --git a/gamedir/Data-UB/AddOns/Data-UB-Vanilla/Ja2_Options.INI b/gamedir/Data-UB/AddOns/Data-UB-Vanilla/Ja2_Options.INI
index 1b463e54c..2d1cd7477 100644
--- a/gamedir/Data-UB/AddOns/Data-UB-Vanilla/Ja2_Options.INI
+++ b/gamedir/Data-UB/AddOns/Data-UB-Vanilla/Ja2_Options.INI
@@ -123,12 +123,12 @@ MAX_WEAPON_SIZE = 9
OLD_INVENTORY_ITEM_NUMBER = 99
;------------------------------------------------------------------------------------------------------------------------------
-; USE_NEW_CTH_CALCULATION is an experimental switch which causes the game to use a cleaned up version of NCTH calculation.
-; This switch will do nothing if you play with OCTH.
-; The new code is easier to read for programmers and therefore (hopefully) easier to improve. ;-)
-; The switch and the old code will probably be removed in the future.
+; ALLOW_TARGET_HEADANDLEG_IFPRONE is an experimental switch which allows targetting/hitting head/torso/legs for
+; prone targets (until now, hits were always considered on torso).
+; Additionally soldiers are no longer protected from stray bullets in crouched and prone stance.
+; This switch will be removed once this code change has been accepted (or deemed unacceptable).
;------------------------------------------------------------------------------------------------------------------------------
-USE_NEW_CTH_CALCULATION = TRUE
+ALLOW_TARGET_HEADANDLEG_IFPRONE = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -197,6 +197,8 @@ USE_XML_TILESETS = FALSE
NUM_P_ITEMS = 3
+; should mercs use the backgrounds
+BACKGROUNDS = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -208,39 +210,9 @@ NUM_P_ITEMS = 3
;******************************************************************************************************************************
;------------------------------------------------------------------------------------------------------------------------------
-; The following allow you to change how many and which slots from prof.dat are available for
-; male and female IMPs. The "usual" slots are 51,52,53 for males and 54,55,56 for females. Other
-; slots will work only if they have a blank full name in prof.dat. Even slots without full IMP voice
-; sets will work although the IMPs will be silent a lot of the time.
-;
-; There should be one IMP_[FE]MALE_X for each slot. The total number is still limited by
-; MAX_IMP_CHARACTERS above. You can reduce the numbers but there should always be at least one
-; male and one female slot available.
-;
-; If there are any errors in the following then the default values (3 males slots 51-53 and 3 females
-; slots 54-56) will be used instead.
+; Note: There are no longer ini settings for IMP slots. Any slot in MercProfiles.xml with 6 will be used for IMPs.
;------------------------------------------------------------------------------------------------------------------------------
-IMP_MALE_CHARACTER_COUNT = 4
-IMP_FEMALE_CHARACTER_COUNT = 3
-
-IMP_MALE_1 = 51
-IMP_MALE_2 = 52
-IMP_MALE_3 = 53
-;UB-v1.13
-IMP_MALE_4 = 57
-
-; The following are empty in standard JA2 1.13 but do not have full voice sets.
-;IMP_MALE_4 = 169
-;IMP_MALE_5 = 65
-;IMP_MALE_6 = 71
-;IMP_MALE_7 = 163
-;IMP_MALE_8 = 164
-
-IMP_FEMALE_1 = 54
-IMP_FEMALE_2 = 55
-IMP_FEMALE_3 = 56
-
;------------------------------------------------------------------------------------------------------------------------------
; The following values deal with the I.M.P "personalized" merc generation.
;------------------------------------------------------------------------------------------------------------------------------
@@ -303,12 +275,6 @@ MERCS_CAN_BE_ON_ASSIGNMENT = 0
;Can AIM/MERC mercs die while away on other assignments?
MERCS_CAN_DIE_ON_ASSIGNMENT = TRUE
-;How many mercs can die at each difficulty level?
-MAX_MERC_DEATHS_EASY = 1
-MAX_MERC_DEATHS_EXPERIENCED = 2
-MAX_MERC_DEATHS_EXPERT = 3
-MAX_MERC_DEATHS_INSANE = 4
-
;------------------------------------------------------------------------------------------------------------------------------
; Slay Forever - Determines whether the character Slay can stay with your team indefinitely. If set to FALSE, he can
; only be recruited for a limited amount of time.
@@ -316,6 +282,19 @@ MAX_MERC_DEATHS_INSANE = 4
SLAY_STAYS_FOREVER = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; If SLAY_STAYS_FOREVER is set to FALSE this is the chance that Slay will leave if he is left alone in a sector.
+;------------------------------------------------------------------------------------------------------------------------------
+
+SLAY_HOURLY_CHANCE_TO_LEAVE = 15
+
+;------------------------------------------------------------------------------------------------------------------------------
+; On the A.I.M/M.E.R.C websites, a merc's gear kits are always available during the hiring process, even if they've been bought
+; before.
+;------------------------------------------------------------------------------------------------------------------------------
+
+GEARKITS_ALWAYS_AVAILABLE = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Recruitable Speck - If set to TRUE, Speck can be hired from MERC website. Hired, he'll no longer appear at Speck Com, but will
; comment on current situation from battlefield if able to (alive and well).
@@ -342,6 +321,13 @@ RECRUITABLE_JOHN_KULBA_DELAY = 14
RECRUITABLE_JA1_NATIVES = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; If outstanding debt to MERC exceeds this, Speck will complain on the website.
+; Note: this does NOT affect whether MERC goes bankrupt, as this is independent of the amount of debt
+;------------------------------------------------------------------------------------------------------------------------------
+
+MERC_BANKRUPT_WARNING = 5000
+
;------------------------------------------------------------------------------------------------------------------------------
; Early Recruitment of Rebels - This enables recruiting Rebels earlier without the need to alter their .npc files.
; Valid values are from 1 to 3 where:
@@ -366,12 +352,12 @@ SHOW_SKILLS_IN_HIRING_PAGE = FALSE
; 1 = full random stats for all profiles based on their "TableData\MercProfiles.xml" values
; 2 = partial random stats for any mercs that have random stats defined (Enabled = 1) in "TableData\RandomStats.xml"
; 3 = build random stats from (BaseAttribute) in "TableData\RandomStats.xml", range determined by level
-; Hardcoded formula for 3 is BaseAttribute + 4 * EXP + Random(9) + Random(8)
+; hardcoded formula for 3 is BaseAttribute + 4 * EXP + Random(9) + Random(8)
; 4 = full randomization of mercs, including traits, gear kits and all statistics
;
; MERCS_RANDOM_GEAR_KITS: This option only takes effect, if MERCS_RANDOM_STATS = 4
; Set this option to TRUE, so mercs (AIM and MERC) get random gear kits, otherwise they have their original kits.
-;
+;
; MERCS_RANDOM_BELL_DISTRIBUTION random values use bell-curve distribution if 'TRUE'; 'FALSE', use uniform distribution
;
; MERCS_RANDOM_STAT_RANGE applicable if MERCS_RANDOM_STATS = 1-2.
@@ -391,19 +377,19 @@ SHOW_SKILLS_IN_HIRING_PAGE = FALSE
; Exp = 1/9 will not random
;------------------------------------------------------------------------------------------------------------------------------
-MERCS_RANDOM_STATS = 0
+MERCS_RANDOM_STATS = 0
MERCS_RANDOM_GEAR_KITS = FALSE
MERCS_RANDOM_BELL_DISTRIBUTION = TRUE
-MERCS_RANDOM_STAT_RANGE = 10
-MERCS_RANDOM_EXP_RANGE = 1
+MERCS_RANDOM_STAT_RANGE = 10
+MERCS_RANDOM_EXP_RANGE = 1
;------------------------------------------------------------------------------------------------------------------------------
; Use random starting salaries for mercenaries based on their "TableData\MercProfiles.xml" values? (JA2 Vanilla setting = FALSE)
; If MERCS_RANDOM_START_SALARY set TRUE, MAX_MODIFIER is the allowed +/- random percentage range (0-100, default = 30)
;------------------------------------------------------------------------------------------------------------------------------
-MERCS_RANDOM_START_SALARY = FALSE
-MERCS_RANDOM_START_SALARY_PERCENTAGE_MAX_MODIFIER = 30
+MERCS_RANDOM_START_SALARY = FALSE
+MERCS_RANDOM_START_SALARY_PERCENTAGE_MAX_MODIFIER = 30
;******************************************************************************************************************************
@@ -415,17 +401,6 @@ MERCS_RANDOM_START_SALARY_PERCENTAGE_MAX_MODIFIER = 30
; Use these settings to change the financial difficulty of the game.
;******************************************************************************************************************************
-;------------------------------------------------------------------------------------------------------------------------------
-; These are the Starting cash values for the various difficulties.
-; The only restriction with these, is the INT32 they are stored in. (range is about 2 billion)
-; You can also set negative values here.
-;------------------------------------------------------------------------------------------------------------------------------
-
-STARTING_CASH_NOVICE = 45000
-STARTING_CASH_EXPERIENCED = 35000
-STARTING_CASH_EXPERT = 30000
-STARTING_CASH_INSANE = 15000
-
;------------------------------------------------------------------------------------------------------------------------------
; Increases or decreases (by percentage) the amount of cash that mines generate every day.
;
@@ -446,6 +421,23 @@ MINE_INCOME_PERCENTAGE = 100
MERC_LEVEL_UP_SALARY_INCREASE_PERCENTAGE = 25
+;------------------------------------------------------------------------------------------------------------------------------
+; If MINE_REQUIRES_WORKERS is TRUE, mine income also depends on the number or workers employed in a town.
+; The maximum number of workers for each sector can be set in SectorNames.xml.
+; For mine income, the total sum of all workers in a town are used, once a town employs it's maximum of workers, this modifier
+; is at a 100%.
+;------------------------------------------------------------------------------------------------------------------------------
+MINE_REQUIRES_WORKERS = FALSE
+
+; When we liberate a a sector for the first time, this is the rate of workers present. Values from 0.0 to 1.0.
+WORKERRATE_PRESENT_INITIALLY = 0.25
+
+; the cost of training a single worker
+WORKER_TRAINING_COST = 30
+
+; the amount of worker training points needed to train a worker, the amount a trainer generates can be seen on their portrait
+WORKER_TRAINING_POINTS = 100
+
;------------------------------------------------------------------------------------------------------------------------------
; Enable/Disable the ability to sell unneeded equipment to the locals.
;
@@ -478,9 +470,6 @@ MILITIA_COST_MULTIPLIER_REGULAR = 1
; ALLOW_TRAINING_ELITE_MILITIA must be set to TRUE, otherwise this promotion is impossible.
MILITIA_COST_MULTIPLIER_ELITE = 2
-; Multiplier for the price of training Mobile Militia.
-MILITIA_COST_MULTIPLIER_MOBILE = 3
-
;------------------------------------------------------------------------------------------------------------------------------
; Daily prices for maintaining one militiaman of each type.
;
@@ -493,10 +482,6 @@ MILITIA_COST_MULTIPLIER_MOBILE = 3
DAILY_MILITIA_UPKEEP_TOWN_GREEN = 0
DAILY_MILITIA_UPKEEP_TOWN_REGULAR = 0
DAILY_MILITIA_UPKEEP_TOWN_ELITE = 0
-DAILY_MILITIA_UPKEEP_MOBILE_GREEN = 0
-DAILY_MILITIA_UPKEEP_MOBILE_REGULAR = 0
-DAILY_MILITIA_UPKEEP_MOBILE_ELITE = 0
-
;------------------------------------------------------------------------------------------------------------------------------
; Change the cost of helicopter movement PER SECTOR.
@@ -558,7 +543,7 @@ AUTO_SAVE_ON_ASSERTION_FAILURE = TRUE
; Automatically save the game every N GAME-hours. 0 = disable.
;------------------------------------------------------------------------------------------------------------------------------
-AUTO_SAVE_EVERY_N_HOURS = 0
+AUTO_SAVE_EVERY_N_HOURS = 12
@@ -588,6 +573,12 @@ CREATURE_TURN_SPEED_UP_FACTOR = 1.0
MILITIA_TURN_SPEED_UP_FACTOR = 1.0
CIVILIAN_TURN_SPEED_UP_FACTOR = 1.0
+;------------------------------------------------------------------------------------------------------------------------------
+; Allows to modify scroll speed in tactical view
+; Range: 0.5 - 2.0, default is 1.0
+;------------------------------------------------------------------------------------------------------------------------------
+SCROLL_SPEED_FACTOR = 1.0
+
;------------------------------------------------------------------------------------------------------------------------------
; Should the game use the externalized sector loadscreens?
; If set to TRUE, the game will use the loadscreens defined in TableData\Map\SectorLoadscreens.xml.
@@ -632,6 +623,16 @@ RESTRICT_FEMALE_ENEMIES_EXCEPT_ELITE = FALSE
;------------------------------------------------------------------------------------------------------------------------------
SMALL_SIZE_PB = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Hide progress bar when cursor is on the top row of the map
+;------------------------------------------------------------------------------------------------------------------------------
+AUTO_HIDE_PB = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If set to TRUE, roof structures (e.g. sandbags) above explored rooms will be hidden at ground level view
+;------------------------------------------------------------------------------------------------------------------------------
+HIDE_EXPLORED_ROOM_ROOF_STRUCTURES = TRUE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -643,9 +644,9 @@ SMALL_SIZE_PB = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; Change to increase volume for weapon sounds
-; Range: 0-100%
+; Range: 0-1000%
; 0 = no change
-; 100 = max volume
+; 1000 = max volume
;------------------------------------------------------------------------------------------------------------------------------
WEAPON_SOUND_EFFECTS_VOLUME = 0
@@ -657,7 +658,23 @@ WEAPON_SOUND_EFFECTS_VOLUME = 0
;------------------------------------------------------------------------------------------------------------------------------
MAX_PERCENT_NOISE_SILENCED_SOUND = 35
+;------------------------------------------------------------------------------------------------------------------------------
+; These options control fire ambient sound and it's volume
+;------------------------------------------------------------------------------------------------------------------------------
+ENABLE_TA = TRUE
+VOLUME_TA = 100
+;------------------------------------------------------------------------------------------------------------------------------
+; These options control sector steady ambients
+;------------------------------------------------------------------------------------------------------------------------------
+ENABLE_SSA = FALSE
+VOLUME_SSA = 100
+DEBUG_SSA = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; New weapon sound system
+;------------------------------------------------------------------------------------------------------------------------------
+NWSS = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -688,6 +705,11 @@ MAX_PERCENT_NOISE_SILENCED_SOUND = 35
REVEAL_DROPPED_ENEMY_ITEMS_AFTER_COMBAT = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Show backpack owner's name on the ground and in taking items interface
+;------------------------------------------------------------------------------------------------------------------------------
+SHOW_BACKPACK_OWNER = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; This section controls the behavior of the "SHIFT + F" hotkey.
; This hotkey is normally used to to remove attachments from all items in the sector and unload all weapons.
@@ -725,6 +747,12 @@ GOGGLE_SWAP_AFFECTS_ALL_MERCS_IN_SECTOR = FALSE
AUTOMATICALLY_FLAG_MINES_WHEN_SPOTTED = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; If this is "TRUE", an animation will be played on the ground near any armed time bomb to warn the player of immediate danger.
+;------------------------------------------------------------------------------------------------------------------------------
+
+TIME_BOMB_WARNING = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; If this is "TRUE" your merc won't says anything when spotting a mine. He will just place a blue flag if the setting
; "AUTOMATICALLY_FLAG_MINES_WHEN_SPOTTED = TRUE" otherwise you will be asked if you want to place a blue flag.
@@ -779,6 +807,16 @@ USE_ENHANCED_DESCRIPTION_BOX = 0
USE_NEW_BURST-AUTO_TARGETING_CURSORS = 0
+;------------------------------------------------------------------------------------------------------------------------------
+; Set default number of autofire bullets:
+; 0 = Max bullets allowed with max aiming
+; 1..10 = Set default number of bullets
+;------------------------------------------------------------------------------------------------------------------------------
+
+SET_DEFAULT_AUTOFIRE_BULLETS_SMG = 1
+SET_DEFAULT_AUTOFIRE_BULLETS_AR = 1
+SET_DEFAULT_AUTOFIRE_BULLETS_MG = 1
+
;------------------------------------------------------------------------------------------------------------------------------
; When this is set to TRUE, it will change the way that the CTH Bar and "F" key feedback report our CTH. Based on
; the characters' Experience Level, Wisdom, Marksmanship and Sniper Skill (if any), the program will decide how accurate our
@@ -841,25 +879,12 @@ SHOW_ENEMY_HEALTH = 1
; Alt health bar additionally shows suppression shock level and current cover
; 0 - nothing
; 1 - default health bar
-; 2 - smaller alt health bar
-; 3 - larger alt health bar
-; 4 - small health bar + AP counter
-; 5 - large health bar + AP counter
+; 2 - alt health bar
+; 3 - alt health bar + AP counter
;------------------------------------------------------------------------------------------------------------------------------
SHOW_HEALTHBARSOVERHEAD = 0
-;------------------------------------------------------------------------------------------------------------------------------
-; Show current merc's cover using color - GREEN, YELLOW, ORANGE and RED
-; 0 - do not show cover
-; 1 - show as small square to the right of the health bar
-; 2 - show using color of merc's name
-; 3 - same as 1, show only in stealth or when disguised
-; 4 - same as 2, show only in stealth or when disguised
-;------------------------------------------------------------------------------------------------------------------------------
-
-SHOW_COVER_INDICATOR = 0
-
;------------------------------------------------------------------------------------------------------------------------------
; How should the game display the enemy/player hit counter?
@@ -874,6 +899,29 @@ ENEMY_HIT_COUNT = 0
PLAYER_HIT_COUNT = 0
+;------------------------------------------------------------------------------------------------------------------------------
+; Show additional hit info: amount of damage absorbed by armour
+;------------------------------------------------------------------------------------------------------------------------------
+
+SHOW_HIT_INFO = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Show additional info in NCTH cursor (press ALT)
+; 0 - default cursor
+; 1 - show enemy armour
+; 2 - show armour, weapons and head items
+;------------------------------------------------------------------------------------------------------------------------------
+
+ADDITIONAL_NCTH_CURSOR_INFO = 0
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Visual improvements for NCTH cursor:
+; 0 - default cursor
+; 1 - improved cursor: show extended AP info, laser dot, scope mode icon, limit maximum displayed aperture size (100)
+; 2 - compact cursor: aiming level as numbers, limit displayed autofire bullets (10), limit maximum displayed aperture size (50)
+;------------------------------------------------------------------------------------------------------------------------------
+IMPROVED_NCTH_CURSOR = 0
+
;------------------------------------------------------------------------------------------------------------------------------
; Show additional suppression information above soldier:
; light gray counter - suppression points from attack (they are calculated and shown after attack)
@@ -896,14 +944,6 @@ SHOW_SUPPRESSION_USE_ASTERISK = FALSE
SHOW_SUPPRESSION_SCALE_ASTERISK = FALSE
SHOW_SUPPRESSION_COUNT_ALT = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; Default: 10000
-; regulates the bullet hit impact to stamina. The lower is the value, the more stamina is taken out. With the value of 6900 it
-; takes 3-4 hits to take all the breath away.
-;------------------------------------------------------------------------------------------------------------------------------
-
-STAMINA_HIT = 10000
-
;------------------------------------------------------------------------------------------------------------------------------
; Additional mouse keys (and the "scrolling wheel") are enabled. Now we can use the mouse wheel to aim the weapon,
; toggle between merc-s or auto fire length. Middle mouse button is used to look (= "L" key), alt + middle mouse button changes
@@ -921,6 +961,33 @@ ENABLE_EXT_MOUSE_KEYS = FALSE
ALTERNATE_MOUSE_COMMANDS = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Quick items: press ALT+[1..0]
+; Possible Values:
+; [0] - nothing
+; [-1] - HTH (punch)
+; [-2] - Melee (knives)
+; [-3] - Taser (Stun gun)
+; [-4] - Handcuffs
+; [-5] - Sidearm (pistols, machine pistols, small SMGs)
+; [-6] - First Aid kits
+; [-7] - Binoculars
+; [-8] - X-Ray detector
+; [-9] - Metal Detector
+; Positive values: item id from items.xml
+;------------------------------------------------------------------------------------------------------------------------------
+
+QUICK_ITEM_1 = -1
+QUICK_ITEM_2 = -2
+QUICK_ITEM_3 = -3
+QUICK_ITEM_4 = -4
+QUICK_ITEM_5 = -5
+QUICK_ITEM_6 = -6
+QUICK_ITEM_7 = -7
+QUICK_ITEM_8 = -8
+QUICK_ITEM_9 = -9
+QUICK_ITEM_0 = 1636
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: FALSE
; Alternative aiming-levels for targets.
@@ -977,6 +1044,17 @@ ALLOW_LAZY_CIVILIANS = FALSE
CIVILIANS_AVOID_PLAYER_MINES = TRUE
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: FALSE
+; Additional civilians can be placed in maps via Lua scripts, see Scripts/strategicmap.lua: HandleSectorTacticalEntry()
+; It is also possible to place new merchants (that don't require a NPC profile) this way, see the same file
+;------------------------------------------------------------------------------------------------------------------------------
+ALLOW_EXTRA_CIVILIANS = FALSE
+
+; Allow placing of new merchants
+; Note: this requires ALLOW_EXTRA_CIVILIANS to be TRUE
+ALLOW_EXTRA_MERCHANTS = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: FALSE
; Add small smoke after explosion (only outdoor, not underground, only regular type explosion)
@@ -984,6 +1062,11 @@ CIVILIANS_AVOID_PLAYER_MINES = TRUE
ADD_SMOKE_AFTER_EXPLOSION = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Fire explosion creates light source
+;------------------------------------------------------------------------------------------------------------------------------
+ADD_LIGHT_AFTER_EXPLOSION = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: FALSE
; Added attachments explode if they have usItemClass 256 or 512 (grenade or explosive), have ubVolatility>0 and
@@ -1000,6 +1083,14 @@ ALLOW_EXPLOSIVE_ATTACHMENTS = FALSE
ALLOW_SPECIAL_EXPLOSIVE_ATTACHMENTS = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: FALSE
+; All hand/GL grenades of Normal/Stun/Flashbang type without tag
+; will detonate on next turn instead of instant explosion
+;------------------------------------------------------------------------------------------------------------------------------
+
+DELAYED_GRENADE_EXPLOSION = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Default: 100
; Chance to say annoying phrase.
@@ -1007,6 +1098,7 @@ ALLOW_SPECIAL_EXPLOSIVE_ATTACHMENTS = FALSE
; 2. when battle turns to real time
; 3. when merc see enemy
; 4. approve action
+; 5. out of ammo and gun's magsize < 5
;------------------------------------------------------------------------------------------------------------------------------
CHANCE_SAY_ANNOYING_PHRASE = 100
@@ -1040,10 +1132,45 @@ SHOT_HEAD_DIVISOR = 2
SHOOT_UNSEEN_PENALTY = 100
+; This divisor for shooting at enemies that are out of range will cause a penalty to CTH (only applies to OCTH)
+OUT_OF_SIGHT_OR_GUN_RANGE = 2
+
+;------------------------------------------------------------------------------------------------------------------------------
; In turnbased combat, do not automatically change animation from 'running' to 'standing' after arriving at target lcoation (same for walking etc.)
; This saves AP if we decide to immediately continue moving to another location.
+;------------------------------------------------------------------------------------------------------------------------------
NO_STANDING_ANIM_ADJUSTMENT_IN_COMBAT = FALSE
+; if TRUE, changing items in the inventory costs AP
+INVENTORY_MANIPULATION_COSTS_AP = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If inventory manipulation costs are activated this modifier affects the item weight based AP calculations.
+; valid values from 1.0 to 100
+;------------------------------------------------------------------------------------------------------------------------------
+INV_AP_WEIGHT_DIVISOR = 5
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: TRUE
+; Automatically close tactical inventory screen and return to team panel when Player ends his turn.
+;------------------------------------------------------------------------------------------------------------------------------
+
+AUTO_COLLAPSE_INVENTORY_ON_TURN_END = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: TRUE
+; Don't create new squad for every passenger leaving vehicle, instead add him for any squad with empty slot (vanilla: FALSE).
+;------------------------------------------------------------------------------------------------------------------------------
+
+ADD_PASSENGER_TO_ANY_SQUAD = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Default: FALSE
+; Automatically switch to passenger's squad when leaving vehicle (vanilla: TRUE).
+;------------------------------------------------------------------------------------------------------------------------------
+
+PASSENGER_LEAVING_SWITCH_TO_NEW_SQUAD = FALSE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -1053,17 +1180,6 @@ NO_STANDING_ANIM_ADJUSTMENT_IN_COMBAT = FALSE
; These settings have a direct effect on the difficulty of the game in TACTICAL mode (combat).
;******************************************************************************************************************************
-;------------------------------------------------------------------------------------------------------------------------------
-; Bonus APs for Enemy Soldiers:
-; Number of extra APs for enemy troops at the various difficulty levels.
-; Please note, this number is NOT automatically adjusted based on your selected AP system (25 / 100).
-;------------------------------------------------------------------------------------------------------------------------------
-
-ENEMY_AP_BONUS_NOVICE = 0
-ENEMY_AP_BONUS_EXPERIENCED = 0
-ENEMY_AP_BONUS_EXPERT = 0
-ENEMY_AP_BONUS_INSANE = 5
-
;------------------------------------------------------------------------------------------------------------------------------
; Bonus for the player's mercs
; Gives a flat AP Bonus to all player's mercenaries, it also pushes the AP Cap. Works almost exactly like the enemy AP bonus.
@@ -1135,6 +1251,14 @@ ASSIGN_SKILL_TRAITS_TO_MILITIA = FALSE
ASSIGNED_SKILL_TRAITS_RARITY = 10
+;------------------------------------------------------------------------------------------------------------------------------
+; This controls whether NPCs drop all their items when they are killed or the drop chances etc. come into play.
+; 0 = Drop All is off and drop chances are used
+; 1 = Drop All is on and everything is dropped
+; 2 = Mild Drop All which means that everything is dropped (like 1) but items that are usually not dropped (like 0) are severely damaged.
+;------------------------------------------------------------------------------------------------------------------------------
+DROP_ALL = 0
+
;------------------------------------------------------------------------------------------------------------------------------
; This setting determines whether militia can drop their equipment when they die, like enemies do.
;
@@ -1156,6 +1280,13 @@ MILITIA_DROP_EQUIPMENT = 0
CIVILIANS_DROP_ALL = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Can NPCs in autoresolve (enemies, militia, bandits, creatures...) drop items like they would in tactical combat?
+; The drops still follow set drop mechanics and probabilities.
+;------------------------------------------------------------------------------------------------------------------------------
+
+NPC_AUTORESOLVE_DROP_ALL = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; You can now adjust how quickly you'll advance in the various skills, attributes, and Experience Level. This is the
; number of "sub-points" you need to acquire to gain a new level.
@@ -1278,6 +1409,23 @@ ENABLE_CHANCE_OF_ENEMY_AMBUSHES = FALSE
; (Setting this to -50 means the precalculated chance will be reduced to half. Values from -100 to 100 are allowed.)
ENEMY_AMBUSHES_CHANCE_MODIFIER = 0
+; If set to TRUE and mercs are ambushed, they won't start clustered in one location and looking in one direction.
+; Instead they will be spread around the map central entry point, no more than AMBUSH_MERCS_SPREAD_RADIUS tiles away, and all looking outwards.
+; If one of your team has high enough leadership and Squadleader trait, you will be able to deploy your mercs in that zone prior to entering the sector.
+AMBUSH_MERCS_SPREAD = TRUE
+
+AMBUSH_MERCS_SPREAD_RADIUS = 10
+
+; If set to 1 and mercs are ambushed, enemies nearer than AMBUSH_MERCS_SPREAD_RADIUS to the map central entry point will instead be distributed more outward:
+; They will be placed around that point, not closer than AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS1 and not further away than AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS2 tiles.
+; These radii will be modified by your team's experience, scout trait and backgroun values.
+; They will face the center entry point (and thus the mercs).
+; If set to 2, all enemies will be placed that way, not just those nearer than AMBUSH_MERCS_SPREAD_RADIUS.
+AMBUSH_ENEMY_ENCIRCLEMENT = 1
+
+AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS1 = 25
+AMBUSH_ENEMY_ENCIRCLEMENT_RADIUS2 = 50
+
;------------------------------------------------------------------------------------------------------------------------------
; With this option, you can make the special NPCs in game tougher.
; The NPCs are: Deidranna, Mike, Joe, Carmen, General, terrorrists, Kingpin and his hitmans.
@@ -1370,7 +1518,12 @@ BRIGHTNESS_MOD_15 = 9
ALLOW_TUNNEL_VISION = FALSE
-
+;------------------------------------------------------------------------------------------------------------------------------
+; If set to 0, nothing happens.
+; If set to 1, vision is lowered while running.
+; If set to 2, this only applies to the player team.
+;------------------------------------------------------------------------------------------------------------------------------
+LOWER_VISION_WHILE_RUNNING = 0
;******************************************************************************************************************************
@@ -1403,6 +1556,7 @@ DYNAMIC_SOLDIER_TOOLTIPS = FALSE
; Enable/disable individual lines of information within the tooltip
; Set HELMET and VEST and LEGGINGS to FALSE (all 3) to prevent the display of the armor line
; Set HEAD_SLOT_1 and HEAD_SLOT_2 both to FALSE to prevent the display of the NVG and gas mask lines
+; This requires SOLDIER_TOOLTIP_DETAIL_LEVEL = 4
; Location, Distance
SOLDIER_TOOLTIP_DISPLAY_LOCATION = FALSE
@@ -1451,7 +1605,8 @@ DYNAMIC_TOOLTIP_RANGE_MODIFIER = 75
; Change the amount of details received in the tooltip, based on your range to that enemy?
ALLOW_DYNAMIC_TOOLTIP_DETAIL_LEVEL = FALSE
-
+; Debug tooltip showing additional AI information.
+SOLDIER_TOOLTIP_DEBUG_AI = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -1463,13 +1618,18 @@ ALLOW_DYNAMIC_TOOLTIP_DETAIL_LEVEL = FALSE
; They affect all characters (friend and foe) equally!
;******************************************************************************************************************************
+;------------------------------------------------------------------------------------------------------------------------------
+; Play with New Chance to Hit System (NCTH)?
+;------------------------------------------------------------------------------------------------------------------------------
+
+NCTH = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Allow walking and sidesteps with raised weapons?
;------------------------------------------------------------------------------------------------------------------------------
ALLOW_WALKING_WITH_WEAPON_RAISED = FALSE
-
;------------------------------------------------------------------------------------------------------------------------------
; Alternative Weapon Holding settings
;------------------------------------------------------------------------------------------------------------------------------
@@ -1538,10 +1698,6 @@ AIMING_LEVELS_REDUCTION_ON_ALTWEAPHOLD = 50
; This basically gives you the boni you would get if in prone position, while you're crouched or standing and behind a crate, rock etc.
WEAPON_RESTING = FALSE
-; Should a little 'M' indicate your weapon is currently rested against something (useful in the beginning, when your still
-; unfamiliar with the feature)
-WEAPON_RESTING_DISPLAY = FALSE
-
; Boni are calculated by this formula: WEAPON_RESTING_PRONE_BONI_PERCENTAGE * boni[PRONE] + (100 - WEAPON_RESTING_PRONE_BONI_PERCENTAGE) * boni[state you're in].
; Value Range: 0 - 100.
WEAPON_RESTING_PRONE_BONI_PERCENTAGE = 50
@@ -1553,8 +1709,28 @@ WEAPON_RESTING_PRONE_BONI_PERCENTAGE = 50
; Allow manual toggle between a gun's different scopes/sights (toggle via '.' in tactical)
USE_SCOPE_MODES = FALSE
-; Allow display of scope modes on weapon
-DISPLAY_SCOPE_MODES = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Spotter skill
+;------------------------------------------------------------------------------------------------------------------------------
+
+; You can assign a merc to spot for fellow snipers via calling the Skill Menu ($) -> various -> Spotter.
+; You need an item the usSpotting-tag in your hands.
+; The bonus applies to anyone of your team using a sniper rifle/rifle on a location your spotter can see.
+; Effectiveness depends on:
+; - spotters spotter item effectiveness (40%), experience (30%), marksmanship (20%) and leadership (10%)
+; - lowered by being wounded or fatigues
+; - altered by relation between spotter and sniper (base opinion, sexism, racism etc.) and spotter background
+
+; The bonus will be this many turns after activating the skill. Spending any AP with your spotter forfeits the bonus.
+SPOTTER_PREPARATIONTURNS = 2
+
+; This variable intentionally has two meanings.
+; - A sniper will benefit from a spotter only if he is at maximum SPOTTER_RANGE tiles away from him.
+; - The bonus only works on those locations the spotter can see and that are AT LEAST 2 * SPOTTER_RANGE tiles away.
+SPOTTER_RANGE = 10
+
+; Maximum bonus that can be reached once spotter has waited 2 * SPOTTER_PREPARATIONTURNS turns
+SPOTTER_MAX_CTHBOOST = 50
;------------------------------------------------------------------------------------------------------------------------------
; external feeding
@@ -1566,6 +1742,7 @@ EXTERNAL_FEEDING = 2
;------------------------------------------------------------------------------------------------------------------------------
; Set the grid number for the initial merc arrival location.
; The JA2 default grid number is 4870 (Sector A9 Omerta).
+; THIS HAS BEEN MOVED TO Mod_Settings.ini! Please set it there!
;------------------------------------------------------------------------------------------------------------------------------
INITIAL_MERC_ARRIVAL_LOCATION = 15427
@@ -1780,20 +1957,31 @@ CAN_JUMP_THROUGH_CLOSED_WINDOWS = FALSE
CAN_CLIMB_ON_WALLS = FALSE
;------------------------------------------------------------------------------------------------------------------------------
-; Show enemy weapon name in tactical
+; MAX_BACKPACK_WEIGHT_TO_CLIMB is the maximum weight a backpack can weigh and still allow you to climb with.
+; The sBackpackWeightModifier in items.xml can modify that number by either making it harder (positive number modifier)
+; or easier (negative number modifier). If the sBackpackWeightToClimb is -1 (default) then the option is unused.
+;
+; If USE_GLOBAL_BACKPACK_SETTINGS is TRUE (default), it uses the same rules for all backpacks, while if FALSE checks for
+; the fAllowClimbing tag in Items.xml, and if that is true you can climb with the backpack.
+;
+; Both options can be used at the same time, so you may climb with (for example) a malice backpack that weighs less than 5kg
+; (or 50 hg) but not climb with a radio set.
+;------------------------------------------------------------------------------------------------------------------------------
+
+MAX_BACKPACK_WEIGHT_TO_CLIMB = -1
+USE_GLOBAL_BACKPACK_SETTINGS = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Show enemy weapon name, armour and head items in tactical
;------------------------------------------------------------------------------------------------------------------------------
SHOW_ENEMY_WEAPON = FALSE
+SHOW_ENEMY_EXTENDED_INFO = FALSE
;------------------------------------------------------------------------------------------------------------------------------
-; Show additional enemy info in tactical (awareness, gas mask, nvg, armour)
-; 0 - nothing
-; 1 - show awareness level
-; 2 - show gas mask and NVG
-; 3 - show armour
+; Use color name to show soldier's status
;------------------------------------------------------------------------------------------------------------------------------
-
-SHOW_ENEMY_ADDITIONAL_INFO = 0
+IMPROVED_TACTICAL_UI = TRUE
;------------------------------------------------------------------------------------------------------------------------------
; Turn this on, and you can set hidden names individually in 'TableData\HiddenNames.xml'.
@@ -1801,6 +1989,11 @@ SHOW_ENEMY_ADDITIONAL_INFO = 0
INDIVIDUAL_HIDDEN_PERSON_NAMES = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; should known NPCs use a different colour (deep blue instead of white), so we can find them more easily?
+;------------------------------------------------------------------------------------------------------------------------------
+KNOWN_NPCS_DIFFERENT_MAPCOLOUR = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyNames.xml'.
; If you set SOLDIER_PROFILES_ENEMY = TRUE the name in the profile takes precedence.
@@ -1814,12 +2007,6 @@ INDIVIDUAL_ENEMY_NAMES = FALSE
INDIVIDUAL_ENEMY_RANK = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; Show enemy rank (exp. level) as icon
-;------------------------------------------------------------------------------------------------------------------------------
-
-SHOW_ENEMY_RANK_ICON = 0
-
;------------------------------------------------------------------------------------------------------------------------------
; Turn this on, and the game uses individual civilian group names (in tactical) defined in 'TableData\CivGroupNames.xml'.
;------------------------------------------------------------------------------------------------------------------------------
@@ -1833,6 +2020,63 @@ INDIVIDUAL_CIVILIAN_NAMES = FALSE
SOLDIER_PROFILES_ENEMY = FALSE
SOLDIER_PROFILES_MILITIA = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Settings related to enemy armed vehicles (tanks and jeeps).
+; Tanks have superior armor that can only be breached by explosives or special ammo. They are armed with a powerful cannon and an MG.
+; Enemy jeeps are smaller than tanks, easier to damage and only have an MG, otherwsie they perform similar to tanks.
+;
+; Unless there is a separate setting, tank-settings also govern jeeps.
+;------------------------------------------------------------------------------------------------------------------------------
+
+; If set to TRUE, vehicles can be driven around tactical maps.
+ALLOW_DRIVING_VEHICLES_IN_TACTICAL = FALSE
+
+; Deduct APs from passengers when vehicle is moving to prevent exploits (default = 3).
+; 0 - No change.
+; 1 - AP deducted from vehicle are also deducted from all passengers.
+; 2 - AP deducted from vehicle are also deducted from all passengers, but adjusted to initial APs of any given passenger.
+; 3 - AP deducted from vehicle are also deducted from all passengers, but only to the certain threshold (default).
+AP_SHARED_AMONG_PASSENGERS_AND_VEHICLE_MODE = 3
+
+; If AP_SHARED_AMONG_PASSENGERS_AND_VEHICLE_MODE is set, adjust how much APs will be deducted (0 - 200).
+AP_SHARED_AMONG_PASSENGERS_AND_VEHICLE_SCALE = 100
+
+; If set to TRUE, tanks can move around in tactical.
+ENEMY_TANKS_CAN_MOVE_IN_TACTICAL = FALSE
+
+; If set to TRUE, cars can run over people.
+; Note feature won't be very effective without ALLOW_DRIVING_VEHICLES_IN_TACTICAL set to TRUE.
+ALLOW_CARS_DRIVING_OVER_PEOPLE = TRUE
+
+; If set to TRUE, tanks can run over people.
+; Note feature won't be very effective without ENEMY_TANKS_CAN_MOVE_IN_TACTICAL set to TRUE.
+ALLOW_TANKS_DRIVING_OVER_PEOPLE = TRUE
+
+; When shift is pressed cars can ram through structures, but only those with armour lower than specified value (0-255).
+; 0 effectively disables the feature. Default 30.
+; For reference: cactus - 10, wooden furniture - 20, trees - 30, sandbags - 40, stone walls - 55, reinforced concrete - 70, rock - 85, indestructible - 127.
+CARS_RAMMING_MAX_STRUCTURE_ARMOUR = 30
+
+; When shift is pressed tanks can ram through structures, but only those with armour lower than specified value (0-255).
+; 0 effectively disables the feature. Default 70.
+; For reference: cactus - 10, wooden furniture - 20, trees - 30, sandbags - 40, stone walls - 55, reinforced concrete - 70, rock - 85, indestructible - 127.
+TANKS_RAMMING_MAX_STRUCTURE_ARMOUR = 70
+
+ENEMY_JEEP_RAMMING_MAX_STRUCTURE_ARMOUR = 38
+
+; If set to TRUE, tanks can use cannon even against single mercs and in perfect health.
+ENEMY_TANKS_DONT_SPARE_SHELLS = TRUE
+; If set to TRUE, tanks can ignore chance to get through and destroy enemy cover even if it probably won't hit anyone behind it.
+ENEMY_TANKS_BLOW_OBSTACLES_UP = TRUE
+
+; If set to TRUE, tanks can be noticed as soon as any part of them is visible.
+ENEMY_TANKS_ANY_PART_VISIBLE = FALSE
+
+; If set to TRUE, enemies can use launchables even against single mercs and in perfect health.
+ENEMIES_DONT_SPARE_LAUNCHABLES = FALSE
+; If set to TRUE, enemies can ignore chance to get through and destroy enemy cover even if it probably won't hit anyone behind it.
+ENEMIES_BLOW_OBSTACLES_UP = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; If this is set tot TRUE, you can repaint one type of camouflage by using different type camo kit on self. You can also use
; the rag to completely erase the camo.
@@ -1840,6 +2084,7 @@ SOLDIER_PROFILES_MILITIA = FALSE
;------------------------------------------------------------------------------------------------------------------------------
CAMO_REMOVING = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; This setting defines the percentage area of a characters body that can be painted with camo kits. Usually only the face and hands
; can be painted with camo. The rest of the body has to be camouflaged by clothing and armor which are already colored.
@@ -1872,6 +2117,15 @@ CAMO_KIT_USABLE_AREA = 5
ENHANCED_CLOSE_COMBAT_SYSTEM = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; If a non-comatose player-controlled merc receives damage that would kill them outright, damage is instead lowered so that they only fall
+; into a coma. This only works if the damage is inflicted via gun or knife, and did not cause a death animation.
+;
+; Activating this makes the game easier.
+;------------------------------------------------------------------------------------------------------------------------------
+
+REDUCED_INSTANT_DEATH = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; When you compleet any quest in game, every (conscious) merc in the sector will be awarded by a certain amount of
; experience points. This amount is counted as times . Setting this to zero
@@ -1895,8 +2149,8 @@ SOLDIERS_ALWAYS_WEAR_ANY_ARMOR = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; Improved Interrupt System (IIS)
-; (Enable IIS on gamestart screen.)
-;
+IMPROVED_INTERRUPT_SYSTEM = TRUE
+
; Basic percent amount of enemy used APs our merc percieves and is counted towards his reaction time (make it higher to get
; interrupts more frequent)
BASIC_PERCENTAGE_APS_REGISTERED = 60
@@ -1969,9 +2223,182 @@ ACCESS_OTHER_MERC_INVENTORIES = FALSE
; TRUE: weightbased penalty, FALSE: no penalty
BACKPACKWEIGHT_LOWERS_AP = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Enemy gun jams
+;------------------------------------------------------------------------------------------------------------------------------
+ENEMY_JAMS = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Use new code for random number generation
+;------------------------------------------------------------------------------------------------------------------------------
+NEW_RANDOM = FALSE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
+[Tactical Enemy Role Settings]
+
+;******************************************************************************************************************************
+; These settings allow enemy soldiers to gain certain abilities that will allow them to play a number of roles and make combat harder.
+;******************************************************************************************************************************
+
+; allow enemy roles, required for the following settings
+ENEMYROLES = FALSE
+
+; If player mercs observe enemy soldiers, they can uncover their role once they have been seen a least this many turns.
+; The following roles will be indicated by small icon next to the soldiers (can be toggled in the [CTRL] + [c] menu):
+; - officers
+; - medics
+; - radio operators
+; - snipers
+; - mortarmen
+; - generals (a special kind of officer)
+; - whether an enemy has a key
+; Default 4, values between 0 and 20.
+ENEMYROLES_TURNSTOUNCOVER = 4
+
+;******************************************************************************************************************************
+; MEDIC
+;******************************************************************************************************************************
+
+; allow AI medics for the enemy team. A soldier spawning with a first aid or med kit can become a doctor.
+; AI doctors bandage their wounded comrades and perform surgery on them. They do so much faster than the player mercs.
+; Requires ENEMYROLES to be TRUE.
+ENEMY_MEDICS = TRUE
+
+; As the AI will likely have a much higher consumption of medical supplies, you can reduce the med kit drain
+; This allows the AI to heal more wounded before its medkits run out
+; 0.1 means drain is only 10%. Default 0.1, values between 0.01 and 1.0.
+ENEMY_MEDICS_MEDKITDRAINFACTOR = 0.1
+
+; radius in which a medic searches for patients. Targets farther away are ignored. It is required that the medic sees the patient
+; Default 40, values between 5 and 60.
+ENEMY_MEDICS_SEARCHRADIUS = 40
+
+; medics only heal enemies with at least this much health lost, to prevent them from breaking position just to heal a tiny amount.
+; 100 is one hp. Default 500, values between 0 and 50000.
+ENEMY_MEDICS_WOUND_MINAMOUNT = 500
+
+; allow enemy medic to heal himself
+ENEMY_MEDICS_HEAL_SELF = TRUE
+
+;******************************************************************************************************************************
+; OFFICER
+;******************************************************************************************************************************
+
+; allow AI officers for the AI team. An officer is a soldier with the squadleader trait. There are two stages of this:
+; a officer with squadleader trait is considered a lieutenant, an officer with squadleader(expert) is a captain.
+; For now, a officer grants boni to the entire enemy team present:
+; - a bonus to suppression resistance
+; - a percentage bonus to morale
+; - a bonus to team surrender strength
+; Important: Only the bonus of the highest officer present counts.
+; Requires ENEMYROLES to be TRUE.
+ENEMY_OFFICERS = TRUE
+
+; for every officer, the enemy team needs at least this many soldiers total
+ENEMY_OFFICERS_REQUIREDTEAMSIZE = 10
+
+; maximum number of officers the enemy team may ever have
+ENEMY_OFFICERS_MAX = 4
+
+; The boni listed here are for lieutnant, they are doubled for captains.
+; bonus to suppression resistance of the entire enemy team if officer is present. Default 10, values between 0 and 50.
+ENEMY_OFFICERS_SUPPRESSION_RESISTANCE_BONUS = 10
+
+; bonus to morale of the entire enemy team if officer is present. 0.1 means a 10% bonus. Default 0.1, values between 0.0 and 1.0.
+ENEMY_OFFICERS_MORALE_MODIFIER = 0.1
+
+; bonus to surrender strength (used when the player asks the enemy to surrender).
+; 0.1 means a 10% bonus. Default 0.1, values between 0.0 and 1.0.
+ENEMY_OFFICERS_SURRENDERSTRENGTHBONUS = 0.1
+
+;******************************************************************************************************************************
+; GENERALS
+;******************************************************************************************************************************
+
+; allow AI officers in the campaign. There is a finite number of generals in the game. On starting a new game (or loading an old
+; savegame that didn't have this feature), generals are created in some enemy towns. The player does not know where they are -
+; he has to interrogate elites and officer prisoners he captured to learn of their location. He can then infiltrate the sector
+; and try to assassinate the generals.
+; In tactical, generals will try to flee from the sector once they have learned of the player's presence. They also have a small
+; retinue of elite bodyguards that keep close and defend them. If a bodyguard flees, he is relocated to Meduna.This way the player
+; has a second chance to kill them if they botched the first attempt... but it's going to be more tricky.
+; Generals are important targets, as long as they are alive, the enemy will get significant boni to
+; - its decision speed
+; - its travelling speed
+ENEMY_GENERALS = FALSE
+
+; how many generals can there be in the campaign? This setting is only used once, when the game is initialised, so choose wisely.
+; Generals are only created in towns fully under enemy control of at least size 2, but not in Meduna (escaped generals move
+; there later on). Apart from Meduna, there can only be one general per town max. Default 5, values between 1 and 10.
+ENEMY_GENERALS_NUMBER = 5
+
+; Number of bodyguards for a general. These elite troops stick close to their general, thus making it much harder to isolate them.
+; Default 4, values between 0 and 10.
+ENEMY_GENERALS_BODYGUARDS_NUMBER = 4
+
+; Strategic AI decision process is sped up for every general alive. This simply lowers the time period between AI decisions,
+; making the game more difficult.
+; Note that the combined reduction of all generals cannot exceed 50%. 0.05 is for 5%.
+; Default 0.05, values between 0.0 and 0.1.
+ENEMY_GENERALS_STRATEGIC_DECISION_SPEEDBONUS = 0.05
+
+; Strategic AI travel time reduction. Similar to the Ranger trait's 'GROUP_TIME_SPENT_FOR_TRAVELLING_BY_FOOT_REDUCTION', this
+; speeds up enemy AI travel times per general alive GLOBALLY.
+; Note that the combined reduction of all generals cannot exceed 25%. 0.05 is for 5%.
+; Default 0.03, values between 0.0 and 0.1.
+ENEMY_GENERALS_STRATEGIC_MOVEMENT_SPEEDBONUS = 0.03
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Individual Militia Settings]
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Settings for individual militia
+;
+; If this feature is active, every time a militia is created by training/PMC hiring/interrogation, a small profile stores their
+; - name
+; - visuals
+; - record of all battles they participated
+; - kills and assists
+; - health ratio
+; - and a few other things
+;
+; Whenever a sector with militia is loaded, this data is used to recreate a militia. As a result, militia seem to be as persistent
+; as your mercenaries (so it is possible to have a veteran militia which accompanied you in several battles).
+;
+; The data for the different militia origins (arulcan local/PMC mercenary/army defector) are defined in TableData/MilitiaIndividual.xml)
+;------------------------------------------------------------------------------------------------------------------------------
+
+; if TRUE this feature is on
+INDIVIDUAL_MILITIA = FALSE
+
+; For each kill, a militia gets 2 promotion points.
+; For each assist, a militia gets 1 promotion point.
+; Here we define how many promotion points a militia needs to be promoted.
+; Values from 1 to 100.
+INDIVIDUAL_MILITIA_PROMOTIONPOINTS_TO_REGULAR = 4
+INDIVIDUAL_MILITIA_PROMOTIONPOINTS_TO_ELITE = 6
+
+; If TRUE, the game remembers the health percentage of a militia the last time it was in tactical. This percentage is used the
+; next time the militia is used in tactical. As a result militia will have lowered health for a while after being wounded.
+; Militia can be healed via 'Doctor Militia' assignment if this is active.
+; NOTE: THIS WILL MAKE THE GAME HARDER!!!
+INDIVIDUAL_MILITIA_MANAGE_HEALTH = TRUE
+
+; Every hour, militia health percentage rises by this percentage to simulate healing. Values from 0.0 to 100.0.
+INDIVIDUAL_MILITIA_HOURLYHEALTHPERCENTAGEGAIN = 2.0
+
+; Militia can be healed via 'Doctor Militia' assignment. This modifies how effective healing is. If set to 0.01, healing one percent of militia health
+; costs as much as healing one merc HP.
+; Values from 0.01 to 1.0
+INDIVIDUAL_MILITIA_DOCTORHEALMODIFIER = 0.2
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
[Tactical Cover System Settings]
;******************************************************************************************************************************
@@ -2010,6 +2437,23 @@ COVER_SYSTEM_TREE_EFFECTIVENESS = 15
; The cover calculation is relativly hard on the cpu, so default are only two refreshes a second.
COVER_SYSTEM_UPDATE_DELAY = 500
+; Use xml-defined properties for various properties of tiles in your surroundings. These can modify camo, stealth, and sound
+; effectiveness and the trap level of bombs you plant.
+; With Additional Tile Properties it's possible to supply all tiles with additional data, just like with .jsd files, except in XML.
+; Files need to have same name as tile's .sti and .jsd files, and be put in \tilesets\AdditionalProperties\, or in specific \tilesets\xx\.
+COVER_SYSTEM_ADDITIONAL_TILE_PROPERTIES = FALSE
+
+; Static shadows decrease brightness
+COVER_SYSTEM_STATIC_SHADOWS_DECREASE_BRIGHTNESS = TRUE
+
+; Camo affinities will be used as caps not multipliers (suggested by mmm).
+; It will be possible to achieve perfect camo on mixed terrain using mixed camo types.
+; Works only if COVER_SYSTEM_ADDITIONAL_TILE_PROPERTIES = TRUE.
+COVER_SYSTEM_ALTERNATE_MULTI_TERRAIN_CAMO_CALCULATION = TRUE
+
+; Cover tooltip ("f") will display detailed properties and their values.
+; Works only if COVER_SYSTEM_ADDITIONAL_TILE_PROPERTIES = TRUE.
+COVER_TOOLTIP_DISPLAY_DETAILED_TILE_PROPERTIES = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2061,11 +2505,13 @@ COVER_SYSTEM_UPDATE_DELAY = 500
SUPPRESSION_EFFECTIVENESS = 0
;------------------------------------------------------------------------------------------------------------------------------
-; These modifiers control suppression effectiveness for different teams. They work together with SUPPRESSION_EFFECTIVENESS,
+; These modifiers control suppression effectiveness against different teams. They work together with SUPPRESSION_EFFECTIVENESS,
; not instead
;
; 0 = JA2 Default: Suppression is DISABLED.
; 100 = Suppression is fully activated.
+;
+; Example: If SUPPRESSION_EFFECTIVENESS_PLAYER is set to 200, player mercs are suppressed twice as hard.
;
; This value can be raised to 65535... But don't. Values over 200 are already excessive.
;------------------------------------------------------------------------------------------------------------------------------
@@ -2114,14 +2560,14 @@ CTH_PENALTY_PER_TARGET_SHOCK = 0
; Controls the maximum CTH penalty you can get when shooting at a Shocked Target. 0 = No limit!
MAX_CTH_PENALTY_FOR_TARGET_SHOCK = 0
+; Minimum range to target for full CTH penalty
+MIN_RANGE_FOR_FULL_TARGET_SHOCK_PENALTY = 300
+
; Divisor for the CTH penalty, based on the target's stance and the targeted bodypart.
CTH_PENALTY_DIVISOR_FOR_PRONE_SHOCKED_TARGET = 1
CTH_PENALTY_DIVISOR_FOR_CROUCHED_SHOCKED_TARGET_HEAD = 3
CTH_PENALTY_DIVISOR_FOR_CROUCHED_SHOCKED_TARGET_TORSO = 4
-CTH_PENALTY_FOR_COWERING_CROUCHED_TARGET_LEGS_DIVISOR = 5
-
-; Minimum range at which you get the full CTH penalty. If you are closer than this, the penalty begins to drop.
-MIN_RANGE_FOR_FULL_COWERING_TARGET_PENALTY = 100
+CTH_PENALTY_DIVISOR_FOR_CROUCHED_SHOCKED_TARGET_LEGS = 5
;------------------------------------------------------------------------------------------------------------------------------
; Shock Effects
@@ -2191,35 +2637,27 @@ MIN_DISTANCE_FRIENDLY_SUPPRESSION = 30
;------------------------------------------------------------------------------------------------------------------------------
; Rain settings
;
-; (For slow CPUs, you may want to disable rain entirely.
+; (For slow CPUs, you may want to disable this)
;------------------------------------------------------------------------------------------------------------------------------
-; Enable/Disable rain appearing in the game.
+; Enable/Disable weather appearing in the game.
ALLOW_RAIN = FALSE
-; Chance of rain to be triggered once per day.
+; Possible number of weather events happening per day
+RAIN_EVENTS_PER_DAY = 5
+
+; Chance of weather being triggered, evaluated for each of RAIN_EVENTS_PER_DAY.
RAIN_CHANCE_PER_DAY = 0
-; Minimum/Maximum length of rain.
+; Minimum/Maximum length of waether.
RAIN_MIN_LENGTH_IN_MINUTES = 60
RAIN_MAX_LENGTH_IN_MINUTES = 300
+; Number of raindrops per given time. Note that this multiplied according to the screen resolution and weather type
; For slow CPUs decrease the MAX_RAIN_DROPS.
+; This is the base setting for each weather
MAX_RAIN_DROPS = 80
-; Controls how rain affects visual distance
-; Range: 0-100%
-; 0% = Rain doesn't decrease sightrange.
-; 100% = Can't see anything in the rain.
-VISUAL_DISTANCE_DECREASE_PER_RAIN_INTENSITY = 30
-
-; Reduction of weapon reliability, causing weapons to deteriorate faster in rain and possibly jam more often.
-WEAPON_RELIABILITY_REDUCTION_PER_RAIN_INTENSITY = 0
-
-; Reduction of the speed of regaining your breath (stamina) when it is raining.
-BREATH_GAIN_REDUCTION_PER_RAIN_INTENSITY = 1
-
-
;------------------------------------------------------------------------------------------------------------------------------
; Lightning settings
;
@@ -2243,6 +2681,94 @@ DELAY_IN_SECONDS_IF_SEEN_SOMEONE_DURING_LIGHTNING_IN_TURNBASED = 5
; In Turn-Based mode, lightning only occurs between turns. This is the chance of it occuring (out of 100).
CHANCE_TO_DO_LIGHTNING_BETWEEN_TURNS = 35
+;------------------------------------------------------------------------------------------------------------------------------
+; Sandstorm settings
+;
+; (For slow CPUs, you may want to disable this)
+;------------------------------------------------------------------------------------------------------------------------------
+
+; Enable/Disable this weather appearing in the game.
+ALLOW_SANDSTORM = FALSE
+
+; Possible number of weather events happening per day
+SANDSTORM_EVENTS_PER_DAY = 3
+
+; Chance of weather being triggered, evaluated for each of SANDSTORM_EVENTS_PER_DAY.
+SANDSTORM_CHANCE_PER_DAY = 70
+
+; Minimum/Maximum length of weather.
+SANDSTORM_MIN_LENGTH_IN_MINUTES = 120
+SANDSTORM_MAX_LENGTH_IN_MINUTES = 240
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Snow settings
+;
+; (For slow CPUs, you may want to disable this)
+;------------------------------------------------------------------------------------------------------------------------------
+
+; Enable/Disable this weather appearing in the game.
+ALLOW_SNOW = FALSE
+
+; Possible number of weather events happening per day
+SNOW_EVENTS_PER_DAY = 1
+
+; Chance of weather being triggered, evaluated for each of SNOW_EVENTS_PER_DAY.
+SNOW_CHANCE_PER_DAY = 70
+
+; Minimum/Maximum length of weather.
+SNOW_MIN_LENGTH_IN_MINUTES = 120
+SNOW_MAX_LENGTH_IN_MINUTES = 360
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Various environment modifiers during weather
+;------------------------------------------------------------------------------------------------------------------------------
+
+; Reduction of weapon reliability, causing weapons to deteriorate faster and possibly jam more often. Values from 0 to 10.
+WEAPON_RELIABILITY_REDUCTION_RAIN = 0
+WEAPON_RELIABILITY_REDUCTION_THUNDERSTORM = 1
+WEAPON_RELIABILITY_REDUCTION_SANDSTORM = 4
+WEAPON_RELIABILITY_REDUCTION_SNOW = 2
+
+; Reduction of the speed of regaining your breath (stamina). Values from 0.0 to 1.0.
+BREATH_GAIN_REDUCTION_RAIN = 0.05
+BREATH_GAIN_REDUCTION_THUNDERSTORM = 0.4
+BREATH_GAIN_REDUCTION_SANDSTORM = 0.7
+BREATH_GAIN_REDUCTION_SNOW = 0.2
+
+; Sightrange reduction, range 0.0-1.0
+; 0.0 = Weather doesn't decrease sightrange.
+; 1.0 = Can't see anything at all.
+VISUAL_DISTANCE_DECREASE_RAIN = 0.05
+VISUAL_DISTANCE_DECREASE_THUNDERSTORM = 0.15
+VISUAL_DISTANCE_DECREASE_SANDSTORM = 0.4
+VISUAL_DISTANCE_DECREASE_SNOW = 0.3
+
+; Hearing reduction, range 0.0-1.0
+; 0.0 = No reduction
+; 1.0 = Can't hear anything at all.
+HEARING_REDUCTION_RAIN = 0.3
+HEARING_REDUCTION_THUNDERSTORM = 0.8
+HEARING_REDUCTION_SANDSTORM = 0.6
+HEARING_REDUCTION_SNOW = 0.1
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Environment Hazard Settings]
+
+;******************************************************************************************************************************
+; In this section you can enable various hazards to soldiers. These depend on the sector they are in.
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Snake settings
+;
+; In some sectors, water sources harbour venomous snakes. These will occasionally attack anyone in that water.
+; The chance of snakes being active can be set via in SectorNames.xml. This chance is evaluated anew each turn.
+; Soldiers have a small chance of evading an attack, this is raised if they have the survival trait or a knife.
+;------------------------------------------------------------------------------------------------------------------------------
+
+ALLOW_SNAKES = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2257,9 +2783,6 @@ CHANCE_TO_DO_LIGHTNING_BETWEEN_TURNS = 35
; Weapons cool down over time.
OVERHEATING = FALSE
-; Should a 'thermometer' for guns and replacable barrels be displayed?
-OVERHEATING_DISPLAY_THERMOMETER = FALSE
-
; Should we display temperature/jam threshold (TRUE) or temperature/damage threshold (FALSE)?
OVERHEATING_DISPLAY_JAMPERCENTAGE = TRUE
@@ -2331,46 +2854,22 @@ ZOMBIE_ONLY_HEADSHOTS_PERMANENTLY_KILL = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
-[Tactical Poison Settings]
+[Corpse Settings]
;******************************************************************************************************************************
-; In this section you can specify the new poison system
+; In this section you can specify settings for corpses
;******************************************************************************************************************************
-; The poison system is a new feature that gives a bit of variation to the life and damage system.
-; Certain sources can deal poison damage (as of now, only zombies). This means that damage can be poisonous. If a merc receives
-; poison damage, he not only looses life, he also gains a poison point.
-; The basic consequences are:
-; - if he bleeds, there is chance, depending on the ratio of total poison points to maximim life points, that he gains additional
-; poison points
-; - poison works as a counter to mercs natural regeneration (which is calculated every hour). If a merc is poisoned enough, he
-; can lose a life point this way! This simulates the character getting sicker and sicker because of the poison in his veins.
-; The lost point will be bandaged, so you do not have to immediately bandage it.
-; - However, if our health drops below 15 points because of poisoning, we suffer a shock, the points won't be damaged anymore.
-; We require immediate medical assistance, or we will die!
-; Yes, it is possible to die this way.
-; - If not treated, poison will invariably spread in an infected merc. To prevent this, you can cure him. Curing poison is a new
-; action automatically performed by your doctors and the hospital, if the merc is their patient.
-; Once a patient is back to full life, The poison is cured (curing 1 pt of poison costs as much as chealing 1 pt of life).
-; If using the new trait system, the doctoring merc needs to have the PARAMEDIC or DOCTOR Skill to cure poison.
+; How many minutes it takes until a corpse begins to rot. Default 1440 (1 day), valid values from 720 (1/2 day) to 10080 (7 days)
+CORPSE_DELAY_UNTIL_ROTTING = 1440
-; Basic medical skill needed to cure poison (in addition to doctoring skill). Range: 1-100
-POISON_BASE_MEDICAL_SKILL_TO_CURE = 50
-
-; A multiplicator that determines how many heal points are needed to cure one point of poison
-POISON_MEDICAL_POINTS_TO_CURE_MULTIPLICATOR = 0.5
-
-; Percentage of damage dealt by zombies that will be poisoned. Range: 0 - 100
-ZOMBIE_POISON_DAMAGE_PERCENTAGE = 50
-
-; This multiplier determines the damage we take every hour for being poisoned (simulating our health deteriorating from the infection).
-; Roughly speaking, the damage we take equals (total poison/max life) * (100 - poison resistance) * this multiplier
-; valid values from 1.0 to 10.0, 4.0 is recommended
-POISON_INFECTION_DAMAGE_MULTIPLIER = 4.0
+; How many minutes it takes until a corpse vanishes. Default 4320 (3 days), valid values from 1440 (1 day) to 20160 (14 days)
+CORPSE_DELAY_UNTIL_DONE_ROTTING = 4320
;******************************************************************************************************************************
;******************************************************************************************************************************
+
[Tactical Food Settings]
;******************************************************************************************************************************
@@ -2388,6 +2887,9 @@ POISON_INFECTION_DAMAGE_MULTIPLIER = 4.0
; - if seriously out of water or food, there is a chance that he'll lose strength an health points. You can die from this!
; You can regain lost stat points via surgery with the new trait system. However, this requires the pateient to be well-fed again (both values above 0)
+; set this to TRUE to play with food.
+FOOD = FALSE
+
; how much food and water is digested every hour? This is the base value, that later gets modified. Range: 0-250
FOOD_DIGESTION_HOURLY_BASE_FOOD = 20
FOOD_DIGESTION_HOURLY_BASE_DRINK = 130
@@ -2405,15 +2907,104 @@ FOOD_DECAY_IN_SECTORS = TRUE
; a global modificator to the speed at which food decays. 1.0 is normal, values between 0.1 and 10.0
FOOD_DECAY_MODIFICATOR = 1.0
-; maximum amount of food poisoning one can get from eating a single piece of food
-FOOD_MAX_POISONING = 5
-
; do mercs make sounds when eating/drinking?
FOOD_EATING_SOUNDS = TRUE
;******************************************************************************************************************************
;******************************************************************************************************************************
+[Disease Settings]
+
+; If DISEASE is TRUE, your mercs can get diseases. Diseases are specified in Disease.xml. For example, you can get them from
+; -insects in swamp & tropical sectors
+; -contact with other people, animals and the dead
+; -open wounds
+; -spoiled food (requires food system to be on)
+;
+; A Disease will give you certain mali. This can even be a health loss. If untreated, most diseases get worse, in extreme cases, you could die from it.
+; Doctors can cure most diseases. Some medicine items also help, and you can protect yourself with other items.
+
+; set this to TRUE to play with diseases.
+DISEASE = FALSE
+
+; if DISEASE and DISEASE_STRATEGIC are set to TRUE, corpses pose a health risk.
+; Once a corpse vanishes, it creates disease points in that sector. The more disease points, the higher the chance mercs catch any corpse-related illness.
+; This can negatively affect the breath and health points of any NPC (enemy, militia or civilian) in that sector.
+; If INDIVIDUAL_MILITIA and INDIVIDUAL_MILITIA_MANAGE_HEALTH are true, this negatively affects a militia's hourly regeneration.
+; You can remove corpses via the Disease->Burial assignment to stop this from happening.
+; You can remove disease points via the Disease->Treatment assignement, this works similar to the doctor assignment.
+DISEASE_STRATEGIC = TRUE
+
+; The World Health Organization has a website that contains a few helpful tips on diseases.
+; It also allows you to subscribe. This will cost you money every day; in return you have access to a new map mode that shows you where in Arulco the arulcan plague has broken out.
+; requires DISEASE and DISEASE_STRATEGIC to be TRUE
+DISEASE_WHO_SUBSCRIPTIONCOST = 2000
+
+; if a merc with disease #0 consumes food, the food becomes contaminated - anybody eating from it will get the disease
+; if a merc with disease #0 is hit by a blade or throwing knife, that item becomes contaminated - anybody hit with it will get the disease
+DISEASE_CONTAMINATES_ITEMS = TRUE
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+
+[Dynamic Opinion Settings]
+
+;******************************************************************************************************************************
+; In this section you can specify whether mercs form dynamic opinions on each other
+;******************************************************************************************************************************
+
+; mercs can form dynamic opinions of each other, this in turn will affect their morale
+; for more info on what can affect opinions, see Dynamic Opinion Modifiers Settings in Morale_Settings.ini
+DYNAMIC_OPINIONS = FALSE
+
+; notify the player of opinion changes in the message log
+DYNAMIC_OPINIONS_SHOWCHANGE = TRUE
+
+; if a merc A notices that merc B's mean wage times exp level(B)/exp level (A) times this is greater than their mean wage, he can get a
+; negative opinion of merc B
+WAGE_ACCEPTANCE_FACTOR = 1.5
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Dynamic Dialogue Settings]
+
+;******************************************************************************************************************************
+; In this section you can specify whether mercs talk to each other.
+;******************************************************************************************************************************
+
+; If DYNAMIC_DIALOGUE is TRUE, mercs will comment on each other.
+; This can happen whenever something influences their relationship.
+; Mercs will accuse each other of doing something - or compliment them. Other mercs can then react and choose answers
+; depending on their relations and personality.
+; If an IMP interjects, the player has a short time to select the kind of response he wants to give.
+DYNAMIC_DIALOGUE = FALSE
+
+; the dialogue boxes will stay on for x milliseconds
+DYNAMIC_DIALOGUE_TIME_OFFSET = 3000
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[PMC Settings]
+
+;******************************************************************************************************************************
+; In this section you can specify whether you will have access to a private military contractor that allows hiring militia
+;******************************************************************************************************************************
+
+; if PMC is TRUE, you will get an email from a PMC once you've started training militia.
+PMC = FALSE
+
+; on the website you can hire regular and veteran militia (for a high price). These can enter Arulco in sectors with certain facilities,
+; like airport, harbours and border posts
+; The PMC will slowly replenish its ranks, here you can define how many militia it will have at max
+PMC_MAX_REGULARS = 35
+PMC_MAX_VETERANS = 20
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
[Tactical Fortification Settings]
;******************************************************************************************************************************
@@ -2423,6 +3014,13 @@ FOOD_EATING_SOUNDS = TRUE
; If set to false, we cannot fill sandbags or set up/remove fortifications while enemies are in the sector
FORTIFICATION_ALLOW_IN_HOSTILE_SECTOR = FALSE
+; can roofs collapse when they or their supporting walls are hit?
+ROOF_COLLAPSE = FALSE
+
+; Option to turn out a structure's tileset and tileset index if we press 'f' while the mouse is over it
+; This is quite useful when adding fortification or interactive action data
+PRINTOUTTILESET = FALSE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2515,6 +3113,22 @@ INCLUDE_CONTRACTS_IN_PROJECTED_EXPENSES_WINDOW = 0
; If disabled, the transition from the strategy screen will be skipped before entering tactical screen
DISABLE_STRATEGIC_TRANSITION = FALSE
+;------------------------------------------------------------------------------------------------------------------------------
+; Determine how to notify Player in Extreme Iron Man game, that it's a time to save.
+;
+; 0 = Open save screen.
+; 1 = Pause the game.
+; 2 = Do nothing (in auto-saves we trust).
+;------------------------------------------------------------------------------------------------------------------------------
+
+EXTREME_IRON_MAN_SAVING_TIME_NOTIFICATION = 1
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Determine the hour in Extreme Iron Man when progress can be saved (0-23)
+;------------------------------------------------------------------------------------------------------------------------------
+
+EXTREME_IRON_MAN_SAVING_HOUR = 0
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -2568,17 +3182,6 @@ GAME_PROGRESS_MINIMUM = 0
; You can use a negative modifier to reduce progress below its normal level. It cannot make progress lower than 0.
GAME_PROGRESS_MODIFIER = 0
-;------------------------------------------------------------------------------------------------------------------------------
-; Number of kills required to get a single progress point, based on game difficulty.
-; The total number of progress points you can get is limited by GAME_PROGRESS_KILLS (see above)
-;------------------------------------------------------------------------------------------------------------------------------
-
-NUM_KILLS_PER_PROGRESS_POINT_NOVICE = 7
-NUM_KILLS_PER_PROGRESS_POINT_EXPERIENCED = 10
-NUM_KILLS_PER_PROGRESS_POINT_EXPERT = 15
-NUM_KILLS_PER_PROGRESS_POINT_INSANE = 60
-
-
;------------------------------------------------------------------------------------------------------------------------------
; The minimum progress level required to trigger some events.
; Range: 0-100%
@@ -2615,7 +3218,7 @@ GAME_PROGRESS_OFFENSIVE_STAGE_2 = 85
TRIGGER_MASSIVE_ENEMY_COUNTERATTACK_AT_DRASSEN = FALSE
-; This enables massive counterattacks in all cities, just like in Drassen.
+; This enables massive counterattacks in all cities (currently hardcoded), just like in Drassen.
; NOTE: These attacks will be huge. You have been warned.
; 0: no attacks
; 1: counterattacks on all cities possible
@@ -2642,7 +3245,6 @@ CREPITUS_ATTACK_ALL_TOWNS = FALSE
; 5 = Chitzena
; 6 = Grumm
;------------------------------------------------------------------------------------------------------------------------------
-
WHICH_MINE_SHUTS_DOWN = -1
@@ -2658,7 +3260,7 @@ WHICH_MINE_SHUTS_DOWN = -1
;******************************************************************************************************************************
;------------------------------------------------------------------------------------------------------------------------------
-; Reinforcements
+; Reinforcement Settings
;
; This feature allows enemies/militia to immediately reinforce an adjacent sector that comes under attack. They arrive
; at the edge of the map, a few turns after the battle starts. This can have a major impact on the outcome of a battle.
@@ -2666,11 +3268,10 @@ WHICH_MINE_SHUTS_DOWN = -1
; Note that the maximum number of people on each team that can actually appear simultaneously in the same battle is
; defined in the System Limits Settings section. If there are more than this amount, they will only appear when others
; die or run away.
+;
+; Reinforcements are enabled in TableData\DifficultySettings.xml.
;------------------------------------------------------------------------------------------------------------------------------
-; Allows enemy/militia reinforcements from adjacent sectors.
-ALLOW_REINFORCEMENTS = FALSE
-
; Allows reinforcements only between city sectors. Only affects militia, not enemies.
ALLOW_REINFORCEMENTS_ONLY_IN_CITIES = FALSE
@@ -2699,6 +3300,20 @@ RND_ENTER_MILITIA_REINFORCEMENTS = 6
; Don't allow permanent items removal for no merc in that sector
NO_REMOVE_RANDOM_SECTOR_ITEMS = FALSE
+; Depending on game difficulty enemy groups created during offensives can include tanks.
+ARMY_USES_TANKS_IN_ATTACKS = FALSE
+; Depending on game difficulty enemy patrols at game start can be randomly reinforced with.
+ARMY_USES_TANKS_IN_PATROLS = FALSE
+; Minimum progress required for tanks to appear.
+TANK_MINIMUM_PROGRESS = 60
+
+; Depending on game difficulty enemy groups created during offensives can include jeeps.
+ARMY_USES_JEEPS_IN_ATTACKS = FALSE
+; Depending on game difficulty enemy patrols at game start can be randomly reinforced with.
+ARMY_USES_JEEPS_IN_PATROLS = FALSE
+; Minimum progress required for jeep to appear.
+JEEP_MINIMUM_PROGRESS = 30
+
;------------------------------------------------------------------------------------------------------------------------------
; Vehicle Inventory
;------------------------------------------------------------------------------------------------------------------------------
@@ -2737,6 +3352,14 @@ FACILITY_EVENT_RARITY = 1000
; noticeable. Increase this for the opposite. Default = 50.
FACILITY_DANGER_RATE = 50
+;------------------------------------------------------------------------------------------------------------------------------
+; Facilities can produce items.
+; This requires defining production lines for each item in FacilityTypes.xml and some set up in SetFactoryLeftoverProgress(...)
+; and GetFactoryLeftoverProgress(...) in scripts/strategicmap.lua.
+;------------------------------------------------------------------------------------------------------------------------------
+
+FACTORIES = FALSE
+
;******************************************************************************************************************************
; Activates the new additional repair mode.
; While the old JA 1.13 repair system goes from soldier to soldier, this algorithm goes through item types, priorizing
@@ -2756,23 +3379,12 @@ ADDITIONAL_REPAIR_MODE = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; determines wether a gun can suffer permanent damage that cannot be repaired by anyone other than local smiths.
+; This can also be done by mercs with the 'technician' trait, see Skills_Settings.ini
ADVANCED_REPAIR = FALSE
; the only items we can repair are guns and armour
ONLY_REPAIR_GUNS_AND_ARMOUR = FALSE
-; if set to true mercs with technician/engineer trait (New trait system) can repair item treshold much like local weaponsmiths can
-MERCS_CAN_DO_ADVANCED_REPAIRS = FALSE
-
-; allows a gun to get dirty when used, thereby increasing the chance of weapon jamming
-DIRT_SYSTEM = FALSE
-
-; repairing a gun to its currently possible maximum value also cleans the gun (always so on repair shopkeepers)
-FULL_REPAIR_CLEANS_GUN = FALSE
-
-; every turn, a gun suffers a dirt increase equal to a singleshot dirt increase divided by this number
-SECTOR_DIRT_DIVIDER = 1000
-
; with this value one can increase or lower the dirt generated by all guns. Values from 0.1 to 10.0
DIRT_GLOBAL_MODIFIER = 1.25
@@ -2820,7 +3432,7 @@ ALLOW_TAKE_PRISONERS = FALSE
; can you offer enemies a surrender option?
ENEMY_CAN_SURRENDER = FALSE
-; display surrender values on asking for surrender. Helpful if you wonder why the enemy does no surrender at overhelming odds.
+; display surrender values on asking for surrender. Helpful if you wonder why the enemy does not surrender at overwhelming odds.
DISPLAY_SURRENDER_VALUES = FALSE
; the higher this value, the more superiority you need over the enemy for them to surrender. Range: 2.0 - 10.0
@@ -2836,26 +3448,21 @@ PRISONER_RETURN_TO_ARMY_CHANCE = 50
; chance that interrogated soldiers decide to join your cause (they will be turned into militia of same or lower quality)
PRISONER_DEFECT_CHANCE = 25
-; chance that interrogated soldiers can give info on enemy positions
-PRISONER_INFO_BASECHANCE = 25
-
-; chance that interrogated soldiers can give info on enemy numbers
-PRISONER_INFO_NUMBER_CHANCE = 30
-
-; chance that interrogated soldiers can give info on enemy movement directions
-PRISONER_INFO_DIRECTION_CHANCE = 40
+; chance that interrogated soldiers give us intel (see Intel Settings)
+PRISONER_INTEL_CHANCE = 25
; chance that interrogated soldiers get you ransom money
PRISONER_RANSOM_CHANCE = 25
; points needed to interrogate prisoners of specific types. You can see your points on the merc's face in strategic: 145/7 means 145 points, 7 prisoners
-; Interrogation first removes admin prisoners, then regulars and then elites
-; If regulars and elites join your militia, there is a chance that they will be demoted, otherwise they will join as regular or veteran militia
-; special prisoners do not exist... yet.
-PRISONER_INTERROGATION_POINTS_ADMIN = 80
-PRISONER_INTERROGATION_POINTS_REGULAR = 100
-PRISONER_INTERROGATION_POINTS_ELITE = 140
-PRISONER_INTERROGATION_POINTS_SPECIAL = 250
+; When ordering mercs to interrogate, you can order them to target a specific class of prisoners, they will first interrogate those and then focus on the other types
+PRISONER_INTERROGATION_POINTS_ADMIN = 30
+PRISONER_INTERROGATION_POINTS_REGULAR = 50
+PRISONER_INTERROGATION_POINTS_ELITE = 80
+PRISONER_INTERROGATION_POINTS_OFFICER = 150
+PRISONER_INTERROGATION_POINTS_GENERAL = 250
+PRISONER_INTERROGATION_POINTS_CIVILIAN = 25
+
;------------------------------------------------------------------------------------------------------------------------------
; Helicopter Repair
;------------------------------------------------------------------------------------------------------------------------------
@@ -2932,7 +3539,7 @@ MORALE_MOD_BACKGROUND_XENOPHOBIC = 5
; If set to TRUE, you can browse to the briefing room website on the laptop
BRIEFING_ROOM = FALSE
-; If set to TRUE, you can browse to the encyclopedia website on the laptop
+; If set to TRUE, you can browse to the encyclopedia website on the laptop (Note: Feature is currently deactivated and does not do anything)
ENCYCLOPEDIA = FALSE
; Determines when to show items in Encyclopedia. 4: Spotted item in merc inventory. 3: Spotted in dealers inventory (or 4),
@@ -2954,6 +3561,9 @@ CAMPAIGN_HISTORY = FALSE
; Only read the last ... battle reports, forget older ones. With -1 (default), read all of them. Reports lost this way cannot be recreated!
CAMPAIGN_HISTORY_MAX_REPORTS = -1
+; Show details in background tooltip
+BACKGROUND_TOOLTIP_DETAILS = TRUE
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -3020,6 +3630,7 @@ ENABLE_ARMOR_COVERAGE = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; Determines whether ammo weight is calculated based on the number of bullets remaining in a clip.
; If FALSE, all magazines will weigh the same, regardless of how much bullets are left inside.
+; This setting also applies to consumable items (food, drugs, canteens, camo kits).
;------------------------------------------------------------------------------------------------------------------------------
DYNAMIC_AMMO_WEIGHT = FALSE
@@ -3096,128 +3707,6 @@ SOLDIERCLASS_SPECIFIC_ITEM_TABLES = TRUE
NEW_AGGRESSIVE_AI = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; Enemy army composition
-;
-; These settings are used to control the composition of enemy troops, at the start of the game and later on in the campaign.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Percentage of troops that are actually placed on the map at the start of the game.
-; 100 = All "default" troops are placed.
-; 200 = Twice as many troops are placed.
-INITIAL_GARRISON_PERCENTAGES_NOVICE = 70
-INITIAL_GARRISON_PERCENTAGES_EXPERIENCED = 100
-INITIAL_GARRISON_PERCENTAGES_EXPERT = 150
-INITIAL_GARRISON_PERCENTAGES_INSANE = 200
-
-; Minimum enemy group size. Enemy groups will never be smaller than this!
-MIN_ENEMY_GROUP_SIZE_NOVICE = 3
-MIN_ENEMY_GROUP_SIZE_EXPERIENCED = 4
-MIN_ENEMY_GROUP_SIZE_EXPERT = 6
-MIN_ENEMY_GROUP_SIZE_INSANE = 12
-
-; Percent of troops converted to extra elites in enemy groups
-PERCENT_EXTRA_ELITES_EXPERIENCED = 0
-PERCENT_EXTRA_ELITES_EXPERT = 25
-PERCENT_EXTRA_ELITES_INSANE = 50
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Queen's Pool
-;
-; These settings control how many troops the queen has for using against you, how many new troops she gets every day,
-; and so on. If the queen runs out of troops, she cannot dispatch new army units to send against you.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Determines whether or not the queen has unlimited troops. If she does, most of the settings below are completely ignored.
-UNLIMITED_POOL_OF_TROOPS_NOVICE = FALSE
-UNLIMITED_POOL_OF_TROOPS_EXPERIENCED = FALSE
-UNLIMITED_POOL_OF_TROOPS_EXPERT = FALSE
-UNLIMITED_POOL_OF_TROOPS_INSANE = TRUE
-
-; Amount of troops avaliable to the queen at game start
-QUEENS_INITIAL_POOL_OF_TROOPS_NOVICE = 150
-QUEENS_INITIAL_POOL_OF_TROOPS_EXPERIENCED = 200
-QUEENS_INITIAL_POOL_OF_TROOPS_EXPERT = 400
-QUEENS_INITIAL_POOL_OF_TROOPS_INSANE = 8000
-
-; Amount of troops that will be added to queens army when the troops pool is empty
-QUEEN_POOL_INCREMENT_PER_DIFFICULTY_LEVEL = 60
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Alert Levels
-;
-; These settings change the speed at which the enemy becomes "worried" about your presence in Arulco. As the queen becomes
-; more concerned, she will be more determined in sending stronger troops against you. Also, enemies will have a better
-; chance of spotting your mercs in the wilderness and chasing them around.
-;
-; Everytime an enemy or merc group arrives in a new sector, this is the chance the enemy will detect the player in
-; adjacent sectors. This chance is associated with each side checked. Stationary groups do this check periodically.
-;
-; Lower alert levels mean the enemy is less aggressive, and less willing to chase you around the map.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Sets the starting alert chances.
-ENEMY_STARTING_ALERT_LEVEL_NOVICE = 5
-ENEMY_STARTING_ALERT_LEVEL_EXPERIENCED = 20
-ENEMY_STARTING_ALERT_LEVEL_EXPERT = 60
-ENEMY_STARTING_ALERT_LEVEL_INSANE = 80
-
-; When an enemy spots and chases a player group, the alertness value decrements by this value.
-; Ranges from 1-100 (but recommend 20-60).
-ENEMY_ALERT_DECAY_NOVICE = 75
-ENEMY_ALERT_DECAY_EXPERIENCED = 50
-ENEMY_ALERT_DECAY_EXPERT = 25
-ENEMY_ALERT_DECAY_INSANE = 10
-
-; Certain conditions can cause the queen to go into a "full alert" mode. This means that temporarily, the queen's
-; forces will automatically succeed adjacent checks until x number of enemy-initiated battles occur. The same variable
-; is what is used to determine the free checks.
-NUM_AWARE_BATTLES_NOVICE = 1
-NUM_AWARE_BATTLES_EXPERIENCED = 2
-NUM_AWARE_BATTLES_EXPERT = 3
-NUM_AWARE_BATTLES_INSANE = 4
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Queen's Army AI / Behavior
-;
-; These settings control how often the queen makes decisions (to attack or replenish her forces), and how aggressive
-; she is about it.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; The base interval between the queen's decisions. She can only make one decision at a time.
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_NOVICE = 480
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_EXPERIENCED = 360
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_EXPERT = 180
-BASE_DELAY_IN_MINUTES_BETWEEN_EVALUATIONS_INSANE = 90
-
-; A random variation to the interval between queen's decisions.
-EVALUATION_DELAY_VARIANCE_NOVICE = 240
-EVALUATION_DELAY_VARIANCE_EXPERIENCED = 180
-EVALUATION_DELAY_VARIANCE_EXPERT = 120
-EVALUATION_DELAY_VARIANCE_INSANE = 60
-
-; This is a delay between the player taking a sector, and the queen being able to decide to attack it.
-; A longer grace period makes the game easier by giving the player more time to prepare for counter-attacks.
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_NOVICE = 144
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_EXPERIENCED = 96
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_EXPERT = 48
-GRACE_PERIOD_IN_HOURS_AFTER_SECTOR_LIBERATION_INSANE = 6
-
-; This is a delay between the player destroying an enemy patrol, and the queen being able to refill that patrol.
-; A longer grace period causes defeated enemy patrols to reappear less often.
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_NOVICE = 16
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_EXPERIENCED = 12
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_EXPERT = 8
-GRACE_PERIOD_IN_DAYS_AFTER_PATROL_DESTROYED_INSANE = 2
-
-; Determines whether the queen always prefers attacking your sectors to defending her own.
-; JA2 default is FALSE. To ensure she doesn't run out of troops, make sure you either increase the reinforcement pool or enable
-; unlimited reinforcements
-AGGRESSIVE_QUEEN_AI_NOVICE = FALSE
-AGGRESSIVE_QUEEN_AI_EXPERIENCED = FALSE
-AGGRESSIVE_QUEEN_AI_EXPERT = FALSE
-AGGRESSIVE_QUEEN_AI_INSANE = TRUE
-
;------------------------------------------------------------------------------------------------------------------------------
; Individual Enemy Group Behavior
;
@@ -3235,6 +3724,224 @@ ENEMY_INVESTIGATE_SECTOR = FALSE
REASSIGN_PENDING_REINFORCEMENTS = FALSE
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Strategic Additional Enemy AI Settings]
+
+;******************************************************************************************************************************
+; These settings change the behavior of the queen's additional AI on the Strategy Map.
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Arulco Special Division
+;
+; Control over a number of new features will gradually be given over to a second strategic 'AI' - the 'Arulco Special Division'.
+; This should control if, how and when these new features are used by the AI.
+;
+; It has its own 'budget', which allows it to purchase new actions. This serves to limit the amount of the AIs actions.
+; It also gives the player a way to compete with the AI - lower the AI budget, and the AI can do less harm.
+; For example, part of the AI budget might come from mine income, which the player can take away.
+;
+; If possible, the AI should have to buy and maintain its assets.
+; This way the player could harm the AI by specifically targetting those assets if he chooses so.
+; Ideally this gives the player another immersive way to do sth. in the game.
+; For example, enemy helicopters have to be bought, fuelled and repaired.
+; In order to stop enemy heli raids, the player could
+; - shoot them down
+; - steal enemy fuel deliveries
+; - sabotage enemy helis in their airfield
+;
+; There is a cyclic update of this AI. Each time the AI decides whether it wants (and can afford) new assets.
+; These assets then have to be ordered and can only be used once arrived.
+; The AI also decides how to use these assets.
+;
+; This feature is not recommended for new players.
+;
+; For specific sector settings, see Mod_Settings.ini.
+;------------------------------------------------------------------------------------------------------------------------------
+
+; TRUE: Arulco Special Division is active
+ASD_ACTIVE = FALSE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; The AI has to buy its assets, and these need to be 'shipped' to the country before it can use them.
+; These are the base costs in $ for AI resources.
+; It is planned that at some point, the player and the AI will be able to influence these.
+;------------------------------------------------------------------------------------------------------------------------------
+; one unit of fuel, valid from 1 to 100
+ASD_COST_FUEL = 10
+
+; a helicopter, valid from 1 to 1000000
+ASD_COST_HELI = 30000
+
+; a jeep (armed with a MG), valid from 1 to 1000000
+ASD_COST_JEEP = 20000
+
+; a tank, valid from 1 to 1000000
+ASD_COST_TANK = 50000
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Once bought, it takes time for resources to get to the country.
+; These are the base times in minutes for the goods to arrive.
+; It is planned that at some point, the player and the AI will be able to influence these.
+;------------------------------------------------------------------------------------------------------------------------------
+; one unit of fuel, valid from 1 to 60 * 48
+ASD_TIME_FUEL = 480
+
+; a helicopter, valid from 1 to 60 * 48
+ASD_TIME_HELI = 1200
+
+; a jeep (armed with a MG), , valid from 1 to 60 * 48
+ASD_TIME_JEEP = 720
+
+; a tank, , valid from 1 to 60 * 48
+ASD_TIME_TANK = 1440
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Determine whether ASD assigns tanks and jeeps to enemy patrols and jeeps
+;------------------------------------------------------------------------------------------------------------------------------
+ASD_ASSIGNS_TANKS = TRUE
+ASD_ASSIGNS_JEEPS = TRUE
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Tanks and jeeps are not refueled, instead fuel is required upon 'creating' them
+;------------------------------------------------------------------------------------------------------------------------------
+ASD_FUEL_REQUIRED_TANK = 100
+ASD_FUEL_REQUIRED_JEEP = 20
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Enemy Helicopter Settings]
+
+;******************************************************************************************************************************
+; This feature allows the AI to use helicopters to rapidly deploy troops, similar to Skyrider.
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Once the AI is aware of the player using Skyrider's helicopter (indicated by a cutscene), or after a certain game progress,
+; it can purchase some for itself.
+; Just like the player, it can then fly a small squad around on the map and deploy them.
+; Helicopters have to be fuelled and repaired, which consumes AI resources.
+;
+; The player can shoot down helis via SAM batteries, and infantry-based MANPADS. Due to engine limitations, this cannot be
+; done manually and happens automatically once a heli is known and in range.
+; If a helicopter was downed, there is a chance that the pilot survived and can be killed or captured by the player
+; (downed pilots are counted as officers with regards to Prisoner Interrogation).
+;
+; Provided the sector has the correct tilesets, it is also possible to destroy enemy helicopters on the ground if they
+; are parking in their home base.
+;
+; Enemy helicopter raids target strategically important targets to the player (towns, mines, inactive SAMs, roads, farms if
+; MILITIA_VOLUNTEER_POOL is on) that are lightly defended and reachable without too much hostile SAM exposure.
+;
+; The AI can have up to 2 helicopters, each carrying up to 6 elites. Travel time per sector is 10 minutes.
+;
+; For specific sector settings, see Mod_Settings.ini.
+;------------------------------------------------------------------------------------------------------------------------------
+; TRUE: Arulco Special Division can use helicopters
+ENEMYHELI_ACTIVE = FALSE
+
+; helis are unlocked either by the Skyrider cutscene (skipping it won't help) or if game progress reaches this value.
+ENEMYHELI_DEFINITE_UNLOCK_AT_PROGRESS = 30
+
+; heli hitpoints, valid from 1 to 255
+ENEMYHELI_HP = 100
+
+; time to repair 1 HP at the home base in minutes, valid from 1 to 20
+ENEMYHELI_HP_REPAIRTIME = 6
+
+; cost to repair 1 HP at the home base in $, valid from 10 to 1000
+ENEMYHELI_HP_COST = 200
+
+; heli maximum fuel, valid from 25 to 200
+ENEMYHELI_FUEL = 50
+
+; time to refuel 1 unit of fuel at the home base in minutes, valid from 1 to 9999
+ENEMYHELI_FUEL_REFUELTIME = 3
+
+;------------------------------------------------------------------------------------------------------------------------------
+; Settings related to SAMs
+; These settings only affect enemy helicopters and attacks against them. For Skyrider, see Helicopter_Settings.ini instead.
+;
+; Every time an enemy helicopter moves and is known to the player, his air defense will try to shoot the heli down.
+; There are two kinds of anti-air-defense:
+; - SAM sites cover a large amount of the map and can fire in any of 'their' sectors (see SamSites.xml).
+; They require control of the sector. They can be rendered inactive by damaging their control computer.
+; Damaged SAM sites can be repaired by the player in the strategic map.
+; They uncover any enemy heli in their sectors, but will only fire if staff (militia or mercs) is present.
+; CTH depends on quality of the staff and range to the target.
+; - MAn-Portable-Air-Defense-Systems are infantry based missile launchers. They can only be used by mercs.
+; They can only be used on targets in the same or adjacent sectors.
+; CTH depends on weapon status, range and the user's cth with launchers.
+; The launchers have to be armed in the inventory, it is not required to have them in the hands.
+;
+; For balance reasons (there should to be an incentive to use MANPADS over SAMs), default MANPADS damage is a lot higher than
+; SAM damage.
+;------------------------------------------------------------------------------------------------------------------------------
+; the AI does not consider attacking a sector if the flight path (to and back) contains more than this number of sectors
+; with an active, hostile SAM. Increasing this number will make helicopters more reckless.
+; Valid from 0 to 10.
+ENEMYHELI_TOLERATED_HOSTILE_SAMSECTORS = 4
+
+; fixed damage of a SAM hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_SAM_DAMAGE_BASE = 25
+
+; maximum random extra damage of a SAM hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_SAM_DAMAGE_VAR = 30
+
+; fixed damage of a MANPADS hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_MANPADS_DAMAGE_BASE = 40
+
+; maximum random extra damage of a MANPADS hitting an enemy helicopter, valid from 10 to 100.
+ENEMYHELI_MANPADS_DAMAGE_VAR = 80
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Raid Settings]
+
+;******************************************************************************************************************************
+; These settings control whether randomized raids occur in player-controlled sectors
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If the player doesn't defend his city sectors/SAM sites enough, opportunistic forces can attack them at night.
+; These attacks occur if these sectors have only very few mercenaries or militia present.
+; Raids can be done by
+; - bloodcats
+; - zombies (requires zombie feature to be active)
+; - bandits
+; These forces will attack anyone in a sector and can also fight in autoresolve. If your forces are defeated, this will result
+; in a severe morale loss.
+;
+; Whether a raid can happen in a sector at all is set in TableData\Maps\SectorNames.xml with the
+; //-tags.
+;
+; NOTE: THIS WILL MAKE THE GAME HARDER!!!
+;------------------------------------------------------------------------------------------------------------------------------
+; set to TRUE to enable raids
+RAID_BLOODCATS = FALSE
+RAID_ZOMBIES = FALSE
+RAID_BANDITS = FALSE
+
+; base value determining how fast the forces are replenished daily. Higher means more forces.
+; Values from 1 to 100, default 3.
+RAID_REPLENISH_BASEVALUE = 3
+
+; how many troops are allowed in a raid at maximum?
+; If the size of a bloodcat or bandit raid is lower than the defensive force' size, they will not attack.
+; Zombies have no such inclination and will attack regardless.
+RAID_MAXSIZE_BLOODCATS = 8
+RAID_MAXSIZE_ZOMBIES = 12
+RAID_MAXSIZE_BANDITS = 6
+
+; How many attacks can happen potentially in a single night? Note that if player forces are strong enough, no attack will occur.
+RAID_MAXATTACKSPERNIGHT_BLOODCATS = 3
+RAID_MAXATTACKSPERNIGHT_ZOMBIES = 3
+RAID_MAXATTACKSPERNIGHT_BANDITS = 3
+
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -3258,6 +3965,9 @@ MIN_LOYALTY_TO_TRAIN_MILITIA = 20
; This controls how fast town militia gets trained.
MILITIA_TRAINING_RATE = 4
+; if set to TRUE, accumulated militia training progress is awarded to the next training session if a training session is finished.
+MILITIA_TRAINING_CARRYOVER_PROGRESS = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; These settings control the training of Elite (Dark-Blue) Town Militia. They are considerably stronger than other militia,
; and are almost as well-trained as enemy Blackshirts.
@@ -3297,191 +4007,42 @@ TEACHER_TRAIT_EFFECT_ON_LEADERSHIP = 100
;******************************************************************************************************************************
;******************************************************************************************************************************
-[Mobile Militia Training Settings]
+[Militia Volunteer Pool Settings]
-;******************************************************************************************************************************
-; These settings control the training of Mobile Militia.
-;******************************************************************************************************************************
+; If MILITIA_VOLUNTEER_POOL is TRUE, we have a limited volunteer pool. If we train militia, the pool is lowered, if we run out
+; of volunteers we cannot train militia any more.
+; Each town sector has an assumed civilian population (see SectorNames.xml) and a loyalty value (the percentage displayed next
+; to a town's name in the strategic map). population times loyalty equals loyal population.
+; We can also gain volunteers by interrogating prisoners or as a result of quests.
-; Allows training militia that move around on the Strategy Map.
-; If FALSE, all other settings in this category are disabled automatically.
-ALLOW_MOBILE_MILITIA = FALSE
+; toggles this feature on and off
+MILITIA_VOLUNTEER_POOL = FALSE
-; Delay ability to train Mobile Militia till this day
-MOBILE_MILITIA_TRAINING_DELAY = 1
+; If we liberate a sector for the first time, we get loyal population times this factor volunteers instantly.
+MILITIA_VOLUNTEER_POOL_GAINFACTOR_LIBERATION = 0.2
-; This is the number of Mobile Militia created when you finish a training session (or, every N hours. see below).
-NUM_MOBILE_MILITIA_TRAINED_PER_SESSION = 4
+; Global loyal population size is increased by this factor for every farm sector we control.
+; The reasoning is that controlling food supplies shows our commitment to the common people, and eases the food situation tremendously.
+MILITIA_VOLUNTEER_POOL_MULTIPLIER_FARM = 0.05
-;------------------------------------------------------------------------------------------------------------------------------
-; These settings determine if training of additional mobile militia is allowed when a certain number is allready active.
-; You can still train mobiles if you are just below maximum.
-; Base modes available:
-; 0 = No maximum.
-; 2 = Maximum calculated by town sectors you have currently under control.
-; 4 = Maximum calculated by town sectors you have liberated at least one time.
-; 8 = Maximum calculated by towns under player control.
-; 16 = Maximum calculated by current progress.
-; 32 = Maximum calculated by best progress.
-; 64 = Maximum calculated by number of rebels in your team.
-; Any combination of base modes is possible by adding the base modes you want to use (e.g. 8 + 64 = 72).
-;
-; Advanced modes:
-; 0 = If more then one base mode is chosen the lowest one is used.
-; 128 = If more then one base mode is chosen the highest one is used.
-; For our example above (mode = 72) this means if your town limit dictates 30 militia are allowed and
-; rebel limit dictates 60 are allowed the final maximum becomes 30.
-; You can also use the highest one by adding 128 to your base mode(s) (e.g. 72 + 128 = 200)
-;
-; Deserting modes:
-; 0 = no deserters
-; 1 = deserters are generated when mobile militia is going to attack an enemy and the maximum is reached.
-; You can also choose to let some of them desert if they attack an enemy. To do so add +1 to the mode(s) you are going to use.
-; The number of deserters is randomly chosen but depends on the ratio active/maximum.
-; For example if you want to use modes 8 and 64 and also want deserters your final mode becomes 73 (8 + 64 + 1).
-;
-; MOBILE_MILITIA_MAX_ACTIVE_MODE 0 .. 255 (default = 0)
-; MOBILE_MILITIA_MAX_ACTIVE_MODIFIER 0.01 .. 10.0 (default = 0.5)
-;------------------------------------------------------------------------------------------------------------------------------
-MOBILE_MILITIA_MAX_ACTIVE_MODE = 0
-MOBILE_MILITIA_MAX_ACTIVE_MODIFIER = 0.5
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Training method options.
-;
-; There are two methods:
-; One is Manual Training - you pay money to train Mobile Militia whenever you desire.
-; The second method is to have them created automatically (for free!) every N hours.
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Determines which method of training is used.
-; If set to FALSE, will generate a group of Mobile Militia at each conquered city every N hours. This also disables all
-; "Leadership and Mobile Militia Training settings", below.
-MUST_TRAIN_MOBILE_MILITIA = TRUE
-
-; If MUST_TRAIN_MOBILE_MILITIA is set to FALSE, this determines the interval between the creation of each new Mobile
-; Militia group.
-; Valid values are: 1, 2, 3, 4, 6, 8, 12, 24. All other values are invalid.
-CREATE_MOBILE_MILITIA_SQUAD_EACH_N_HOURS = 24
-
-;------------------------------------------------------------------------------------------------------------------------------
-; Leadership and Mobile Militia training
-;------------------------------------------------------------------------------------------------------------------------------
-
-; Minimum required leadership skill to train Mobile Militia
-MIN_LEADERSHIP_TO_TRAIN_MOBILE_MILITIA = 40
-
-; If set to TRUE, the trainer's leadership score determines how many militia are created in each "session", up to the
-; value dictated by DIV_OF_ORIGINAL_MILITIA.
-; If set to FALSE, all trainers will train the maximum number of Mobile Militia allowed.
-LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUANTITY = FALSE
-
-; Required leadership score to train the maximum number of Mobile Militia allowed.
-; (LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUANTITY must be set to TRUE for this to work)
-REQ_LEADERSHIP_FOR_MAX_MOBILE_MILITIA = 90
-
-; If set to TRUE, the trainer's leadership score determines what type of Mobile Militia are created (ROOKIE/REGULAR/ELITE).
-LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUALITY = TRUE
-
-; If LEADERSHIP_AFFECTS_MOBILE_MILITIA_QUALITY is set to FALSE, this determines the composition of all Mobile Militia groups
-; you create. If these values don't add up to 100%, the remainder will be ROOKIE (green) militia.
-PERCENT_MOBILE_MILITIA_ELITES = 20
-PERCENT_MOBILE_MILITIA_REGULARS = 30
+; Volunteer gain per hour = ln(1 + loyal population * MILITIA_VOLUNTEER_POOL_GAINFACTOR_HOURLY)
+MILITIA_VOLUNTEER_POOL_GAINFACTOR_HOURLY = 0.002
;******************************************************************************************************************************
;******************************************************************************************************************************
-[Mobile Militia Movement Settings]
-
-;******************************************************************************************************************************
-; These settings control how Mobile Militia move around the strategy map.
-;******************************************************************************************************************************
+[Militia Strategic Movement Settings]
;------------------------------------------------------------------------------------------------------------------------------
-; If set to FALSE, Mobile Militia can move anywhere they want.
-; If set to TRUE, Mobile Militia movement is restricted, based on one of the two rules below (EXPLORATION / CONQUEST)
+; If ALLOW_MILITIA_STRATEGIC_COMMAND is TRUE, we can plot paths for militia just like for merc groups or the heli.
+; To command militia, display militia in the strategic map, then leftclick on a sector with militia in it.
;------------------------------------------------------------------------------------------------------------------------------
-RESTRICT_ROAMING = FALSE
+ALLOW_MILITIA_STRATEGIC_COMMAND = FALSE
-;------------------------------------------------------------------------------------------------------------------------------
-; EXPLORATION-based restrictions
-;
-; Allow Mobile Militia to move through any EXPLORED sectors.
-; RESTRICT_ROAMING must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_MOVEMENT_THROUGH_EXPLORED_SECTORS = FALSE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; CONQUEST-based restrictions
-;
-; Allow Mobile Militia to use an optimized restriction system that's based on which cities you've liberated so far.
-; This utilizes the rules laid down in the file "DynamicRestrictions.XML".
-; RESTRICT_ROAMING must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_DYNAMIC_RESTRICTED_ROAMING = FALSE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; This setting controls whether Mobile Militia can move through "minor cities", I.E. any sector that contains a
-; city square where militia cannot be trained (for instance, San Mona). Militia can only attack enemies in such sectors if they
-; have already been liberated once in the past.
-;
-; In the JA2 campaign, this allows travel through:
-; San Mona, Tixa, Orta, Estoni, and Omerta.
-;
-; For this feature to work, "RESTRICT_ROAMING" and at least one of the other movement-restriction options must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_MOVEMENT_THROUGH_MINOR_CITIES = FALSE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; These settings determine whether Mobile Militia can move into Major Cities / SAM Sites to reinforce the local garrison.
-; This only happens if the city/SAM sector is liberated of enemies, and only if it has room for more militia.
-; Once the mobiles move into the city, they will turn into normal "Town Militia" and will not move anymore.
-;
-; For this feature to work, "RESTRICT_ROAMING" and at least one of the other movement-restriction options must be set to TRUE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MOBILE_MILITIA_REINFORCE_TOWN_GARRISONS = FALSE
-ALLOW_MOBILE_MILITIA_REINFORCE_SAM_GARRISONS = FALSE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; This setting controls wether militia will follow the player on map in non combat situation.
-; If set to TRUE they will more likely move to a sector where a player merc is or is about to arrive and also stay there
-; (default behaviour). This overwrites any manual restrictions.
-; Set to FALSE if they dont worry about the player.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_FOLLOW_PLAYER = TRUE
-
-;------------------------------------------------------------------------------------------------------------------------------
-; These settings control the splitting of mobile militia groups.
-; When militia is moving they will check the current and the 4 surrounding sectors and the target sector (and
-; its 4 neighbour sectors) for enemies and calculate a chance to spread based on the numbers of enemies and number militia.
-; Militia will always spread when the target sector can not hold all militia because of MAX_MILITIA_PER_SECTOR.
-; Remainder will eventually move along.
-; If they decide to spread, the groups will end up equal in size.
-;
-; There are various chances to spread when there are NO threats:
-; - 30% chance if origin sector is full and destination is empty, groups will become equal in size.
-; - 50% chance if origin and destination have militia, groups become equal in size.
-; - 0% chance if origin sector is not full and target is empty
-; - 0% chance when setting the target sector as No-Leave-Area (yellow). This has highest priority and overwrites above.
-; For threatened sectors the chances are:
-; - If origin sector is threatened but target is not then militia will stay in sector! this behaviour can not be adjusted.
-; - 0% chance to spread if origin sector is not threatened but target is.
-; - variable chance to spread if both target and source sectors are threatened based on enemy numbers:
-; (NumEnemiesNearOrigin * 100) / TotalNumEnemies
-; - 100% chance to spread if ALLOW_REINFORCEMENTS=TRUE and ALLOW_REINFORCEMENTS_ONLY_IN_CITY=FALSE, groups become equal.
-; And you can overwrite the chances with the settings below:
-; - 0% chance to spread when ALLOW_MILITIA_SPREAD_WHEN_FOLLOWING = FALSE and target sector has a player merc.
-; - 0% chance to spread when ALLOW_MILITIA_SPREAD = FALSE.
-;------------------------------------------------------------------------------------------------------------------------------
-
-ALLOW_MILITIA_SPREAD = FALSE
-ALLOW_MILITIA_SPREAD_WHEN_FOLLOWING = FALSE
+; if TRUE, this feature requires either control and staffing of a military HQ, a merc in the same sector/town, or a radio operator
+; in an adjacent sector.
+MILITIA_STRATEGIC_COMMAND_REQUIRES_MERC = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
@@ -3568,6 +4129,9 @@ MILITIA_USE_SECTOR_EQUIPMENT_GUN = TRUE
; If this is set to TRUE, make sure to occasionally restock ammo for your militia.
MILITIA_USE_SECTOR_EQUIPMENT_AMMO = TRUE
+; determines whether militia takes new attachments for its gun from the sector. Existing attachments are not replaced
+MILITIA_USE_SECTOR_EQUIPMENT_GUN_ATTACHMENTS = TRUE
+
; determines wether militia takes grenades from the sector, it will take up to 2 grenades of one type
MILITIA_USE_SECTOR_EQUIPMENT_GRENADE = TRUE
@@ -3589,6 +4153,102 @@ MILITIA_USE_SECTOR_EQUIPMENT_CLASS_SPECIFIC_TABOOS = FALSE
;******************************************************************************************************************************
;******************************************************************************************************************************
+[Militia Resource Settings]
+
+;******************************************************************************************************************************
+; These settings control whether we require resources to train and upgrade militia
+;******************************************************************************************************************************
+
+;------------------------------------------------------------------------------------------------------------------------------
+; If this feature is used, the player can convert items to get 3 resources:
+; Guns: obtained from weapons, ammo
+; Armour: obtained from helmets, vests, pants, LBE and face items
+; Miscellaneous: obtained from melee weapons, launchers, grenades and bombs
+;
+; Whenever we train or promote militia, we spend these resources:
+; - A green militia requires 1 Gun.
+; - A promotion from green to regular militia requires 1 Gun + 1 Armour.
+; - A promotion from regular to elite militia requires 1 Gun + 1 Armour + 1 Misc..
+;
+; If we don't have enough resources, the training/promotion won't happen.
+;
+; Resources will be spent when we obtain militia by interrogation, but not if we recruit them from a PMC.
+;
+; Items can be converted into resources in the sector inventory by pressing [Alt] + [RMB], similar to how
+; SELL_ITEMS_WITH_ALT_LMB works.
+; Resources will be shown in the strategic map while the Militia view is active.
+;
+; Every time the maximum game progress increases, the resource pool is multiplied by the fraction of new and old progress.
+;
+; This feature requires MILITIA_USE_SECTOR_EQUIPMENT to be FALSE.
+;------------------------------------------------------------------------------------------------------------------------------
+MILITIA_REQUIRE_RESOURCES = FALSE
+
+; The resource value of an item is determined by its status, coolness, class specific modifiers, and the highest game progress reached so far.
+; progress modifier is MILITIA_RESOURCES_PROGRESSFACTOR / highest progress so far
+; values between 1.0 and 100.0, 10.0 recommended default
+MILITIA_RESOURCES_PROGRESSFACTOR = 10.0
+
+; class specific modifiers, values between 0.0 and 1.0
+
+; ammo modifier PER SINGLE BULLET. Note that coolness is not derived from the item's coolness, but the coolness of the crate item corresponding to this ammotype and caliber
+MILITIA_RESOURCES_ITEMCLASSMOD_AMMO_BULLET = 0.01
+
+; the gun modifier covers all guns and launchers
+MILITIA_RESOURCES_ITEMCLASSMOD_GUN = 0.9
+MILITIA_RESOURCES_ITEMCLASSMOD_ARMOUR = 0.3
+MILITIA_RESOURCES_ITEMCLASSMOD_MELEE = 0.2
+MILITIA_RESOURCES_ITEMCLASSMOD_BOMB = 0.25
+MILITIA_RESOURCES_ITEMCLASSMOD_GRENADE = 0.17
+MILITIA_RESOURCES_ITEMCLASSMOD_FACE = 0.05
+MILITIA_RESOURCES_ITEMCLASSMOD_LBE = 0.03
+
+; Different attachments have multiple modifiers. They also attribute to different resources
+MILITIA_RESOURCES_ITEMCLASSMOD_ATTACHMENT_LOW = 0.05
+MILITIA_RESOURCES_ITEMCLASSMOD_ATTACHMENT_MEDIUM = 0.1
+MILITIA_RESOURCES_ITEMCLASSMOD_ATTACHMENT_HIGH = 0.2
+
+; guns are further modified by a weapon class specific modifier
+MILITIA_RESOURCES_WEAPONMOD_PISTOL = 0.6
+MILITIA_RESOURCES_WEAPONMOD_M_PISTOL = 0.7
+MILITIA_RESOURCES_WEAPONMOD_SMG = 0.8
+MILITIA_RESOURCES_WEAPONMOD_RIFLE = 0.9
+MILITIA_RESOURCES_WEAPONMOD_SN_RIFLE = 1.0
+MILITIA_RESOURCES_WEAPONMOD_AS_RIFLE = 1.0
+MILITIA_RESOURCES_WEAPONMOD_LMG = 1.0
+MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
+[Intel Settings]
+
+;------------------------------------------------------------------------------------------------------------------------------
+; The player can acquire and spend the Intel resource. This resource is closely tied to espionage and information brokering.
+; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconnaissance roleplay.
+;
+; Intel can be gained in several ways:
+; - interactive actions (like reading classified documents in a military base, hacking computers) can give one-time resources.
+; see function HandleInteractiveActionResult(...) in Overhead.lua for examples (warning, spoilers!)
+; - interrogating prisoners can give us intel, the amount depends on prisoner type
+; - mercs can hide in disguise and gather intel in enemy-occupied territory. It is very strongly recommended that any mercs
+; attempting to do so have the covert trait.
+; - You can take a camera and take photograps of important NPCs or locations of special interest. With luck, you can sell them
+; on the R.I.S. website. After a few hours of verification, you will receive a intel reward.
+; - Recruiting some NPCs gives you tiny bits of intel.
+;
+; You can spend intel in several ways:
+; - After you've received your first intel, you will receive an email with further tips on this. One will be the link to the
+; R.I.S. website. You can buy information on several things (troop presence & movement, enemy VIPs, location of imprisoned mercs...) here.
+; - Rumours say that a special trader deals high-tech weaponry exclusively for intel.
+; - Disguised spies can use it to boost their chances of creating turncoats out of enemies, see the 'Covert Ops' section of Skills_Settings.ini.
+;------------------------------------------------------------------------------------------------------------------------------
+
+RESOURCE_INTEL = FALSE
+
+;******************************************************************************************************************************
+;******************************************************************************************************************************
+
[Shopkeeper Inventory Settings]
;******************************************************************************************************************************
@@ -3626,6 +4286,9 @@ FAST_BOBBY_RAY_SHIPMENTS = FALSE
; Theoretically, everything will go faster if this is lower...
MINUTES_FOR_ASSIGNMENT_TO_COUNT = 45
+; if we order a merc to sleep in strategic view, notify us if this isn't possible
+NOTIFY_IF_SLEEP_FAILS = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; Skill Training
;
@@ -3653,6 +4316,10 @@ TEACHER_TRAIT_BONUS_TO_TRAINING_EFFICIENCY = 30
; The minimum skill rating a character must have before he can train fellow teammates in that skill.
MIN_SKILL_REQUIRED_TO_TEACH_OTHER = 25
+; The -tag in MercProfiles.xml controls whether mercs are stopped from increasing their stats. If TRUE, that tag is
+; disabled and increasing stats works normally.
+DISABLE_EVOLUTION = TRUE
+
;------------------------------------------------------------------------------------------------------------------------------
; Two settings to synchronize the sleep/wake periods of Trainers and Students in the same sector.
;
@@ -3710,6 +4377,9 @@ MULTIPLIER_FOR_DIFFERENCE_IN_LIFE_VALUE_FOR_EMERGENCY = 4
; Number of "doctor" points used up to heal each point below OKLIFE
POINT_COST_PER_HEALTH_BELOW_OKLIFE = 2
+; If retreating mercs are bleeding, their squad can bandage them while on the move
+ALLOW_BANDAGING_DURING_TRAVEL = FALSE
+
;------------------------------------------------------------------------------------------------------------------------------
; Repairing
;------------------------------------------------------------------------------------------------------------------------------
@@ -3717,9 +4387,12 @@ POINT_COST_PER_HEALTH_BELOW_OKLIFE = 2
; Cost to unjam a weapon in repair pts
REPAIR_POINT_COST_TO_FIX_WEAPON_JAM = 2
-; Increase this value to reduce the number of repair pts each character generates (speeding up repair), or vice versa
+; Increase this value to reduce the number of repair pts each character generates (slowing down repair), or vice versa
REPAIR_RATE_DIVISOR = 2500
+; Increase this value to reduce the number of cleaning pts each character generates (slowing down gun cleaning), or vice versa
+CLEANING_RATE_DIVISOR = 500
+
; When calculating how many Repair Points a character can generate while assigned to a task, we take the total Repair Points
; the character can generate daily, and divide them by this number (normally 24, representing 24 hours).A higher value here slows
; down repair. A lower value speeds it up.
@@ -3781,22 +4454,12 @@ CLOCK_SPEED_PERCENT = 150
UPDATE_FREQUENCY = 16000
;------------------------------------------------------------------------------------------------------------------------------
-; Improved auto fast forwarding.
-; AUTO_FAST_FORWARD_ENEMIES:
-; 0 - default behaviour
-; 1 - auto fast forward only enemies that are not seen by player's team
-; 2 - auto fast forward only invisible enemies
-; 3 - auto fast forward all enemies
-; AUTO_FAST_FORWARD_MILITIA:
-; 0 - default behaviour
-; 1 - auto fast forward only militia that does not see enemies
-; 2 - auto fast forward militia always
-; Note: only movement is accelerated, most of specific actions like shooting and tossing grenades are performed at normal speed
+; Improved auto fast forwarding. Do not accelerate visible soldiers
+; Note: Even for invisible soldiers, only movement is accelerated
+; most of specific actions like shooting and tossing grenades are performed at normal speed
;------------------------------------------------------------------------------------------------------------------------------
-AUTO_FAST_FORWARD_ENEMIES = 0
-
-AUTO_FAST_FORWARD_MILITIA = 0
+IMPROVED_AUTO_FAST_FORWARD = FALSE
;------------------------------------------------------------------------------------------------------------------------------
; Fast forward timeslice in milliseconds. The frequency that the base clock is updated.
@@ -3835,3 +4498,29 @@ DAYTIME_PRECISION = 4
NIGHTTIME_PRECISION = 5
;Number of remaining Soldiers before their location gets marked
MAX_SOLDIERS_LEFT = 1
+
+[Tactical AI Settings]
+; Allow enemy soldiers to retreat from battle
+AI_TACTICAL_RETREAT = FALSE
+
+; allow AI to shoot more often for suppression (when using OCTH) by faking minimum CTH = 1 for autofire capable weapons
+AI_EXTRA_SUPPRESSION = TRUE
+
+; AI morale with some additional tweaks
+AI_NEW_MORALE = TRUE
+
+; AI will try to avoid enemy sight, fresh corpses and overcrowded locations
+AI_BETTER_COVER = TRUE
+
+; disabled by default as it can be time consuming when playing covert
+; and doesn't make much sense anyway since in YELLOW state AI doesn't know exact enemy locations
+AI_YELLOW_FLANKING = FALSE
+
+; AI movement mode tweaks
+AI_MOVEMENT_MODE = TRUE
+
+; Experimental path tweaks for AI: avoid gas, deep water, light at night
+AI_PATH_TWEAKS = TRUE
+
+; Log AI decision info
+AI_DECISION_INFO = TRUE
\ No newline at end of file
diff --git a/gamedir/Data/Ja2_Options.INI b/gamedir/Data/Ja2_Options.INI
index 7665280aa..8ed0ce223 100644
--- a/gamedir/Data/Ja2_Options.INI
+++ b/gamedir/Data/Ja2_Options.INI
@@ -4215,7 +4215,7 @@ MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0
;------------------------------------------------------------------------------------------------------------------------------
; The player can acquire and spend the Intel resource. This resource is closely tied to espionage and information brokering.
-; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconaissance roleplay.
+; The goal is to deepen the game experience by allowing for more espionage/intelligence/reconnaissance roleplay.
;
; Intel can be gained in several ways:
; - interactive actions (like reading classified documents in a military base, hacking computers) can give one-time resources.
@@ -4231,6 +4231,7 @@ MILITIA_RESOURCES_WEAPONMOD_SHOTGUN = 1.0
; - After you've received your first intel, you will receive an email with further tips on this. One will be the link to the
; R.I.S. website. You can buy information on several things (troop presence & movement, enemy VIPs, location of imprisoned mercs...) here.
; - Rumours say that a special trader deals high-tech weaponry exclusively for intel.
+; - Disguised spies can use it to boost their chances of creating turncoats out of enemies, see the 'Covert Ops' section of Skills_Settings.ini.
;------------------------------------------------------------------------------------------------------------------------------
RESOURCE_INTEL = FALSE
diff --git a/gamedir/Data/Scripts/Overhead.lua b/gamedir/Data/Scripts/Overhead.lua
index ed6ce141d..74fcde44e 100644
--- a/gamedir/Data/Scripts/Overhead.lua
+++ b/gamedir/Data/Scripts/Overhead.lua
@@ -708,6 +708,24 @@ PhotoFlag =
-- sOptimalNumber: how many items the trader should have at maximum
function AddArmsDealerAdditionalIntelData()
+ -- price is affected by player progress - on higher progress items get cheaper (as they are less useful at that point)
+ progress = CurrentPlayerProgressPercentage()
+ ratio = (200.0 - progress) / 100.0
+
+ -- black market:
+ -- guns
+ AddArmsDealerAdditionalIntelDataItem(68, 65, 40 * ratio, 1) -- Auto Rocket Rifle
+ AddArmsDealerAdditionalIntelDataItem(68, 335, 40 * ratio, 1) -- Barret M82A2
+
+ -- Ammo
+ AddArmsDealerAdditionalIntelDataItem(68, 113, 5 * ratio, 5) -- Minirocket 5 HEAP
+ AddArmsDealerAdditionalIntelDataItem(68, 116, 5 * ratio, 4) -- .50 BMG 10 AP
+
+ -- Misc
+ AddArmsDealerAdditionalIntelDataItem(68, 216, 6 * ratio, 3) -- Compound 18
+ AddArmsDealerAdditionalIntelDataItem(68, 235, 2 * ratio, 4) -- Regeneration Booster
+ AddArmsDealerAdditionalIntelDataItem(68, 324, 50 * ratio, 1) -- X-Ray Detector
+ AddArmsDealerAdditionalIntelDataItem(68, 327, 11 * ratio, 2) -- Tank of gas
end