From cdaa4d0f9c6d752822e87a7ca013f58024245852 Mon Sep 17 00:00:00 2001 From: Wanne Date: Sun, 21 Jul 2013 17:43:30 +0000 Subject: [PATCH] Added possibility to show rank and name on enemies (by silversurfer) - If a name is available for the enemy, the name will be shown and if INDIVIDUAL_ENEMY_RANK = TRUE also the rank will be shown - The name will be shown if INDIVIDUAL_ENEMY_NAMES = TRUE or SOLDIER_PROFILES_ENEMY = TRUE. If both are true, then the name will be taken from the enemies profiles - Added missing entries to Data/Ja2_Options.INI git-svn-id: https://ja2svn.mooo.com/source/ja2_v1.13_data@1711 4f8fa57e-7814-0410-bad4-adc449f26b7c --- Data-1.13/Ja2_Options.INI | 5 +- Data-UB/Ja2_Options.ini | 9 +- Data/Ja2_Options.INI | 243 ++++++++++++++++++++++++++++++++++++-- INIEditorJA2Options.xml | Bin 843214 -> 848028 bytes 4 files changed, 238 insertions(+), 19 deletions(-) diff --git a/Data-1.13/Ja2_Options.INI b/Data-1.13/Ja2_Options.INI index b69e81417..d2fc5310f 100644 --- a/Data-1.13/Ja2_Options.INI +++ b/Data-1.13/Ja2_Options.INI @@ -1601,13 +1601,12 @@ INDIVIDUAL_HIDDEN_PERSON_NAMES = TRUE ;------------------------------------------------------------------------------------------------------------------------------ ; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyNames.xml'. -; If you set this to TRUE, then you have to set INDIVIDUAL_ENEMY_RANK = FALSE. +; If you set SOLDIER_PROFILES_ENEMY = TRUE the name in the profile takes precedence. ;------------------------------------------------------------------------------------------------------------------------------ INDIVIDUAL_ENEMY_NAMES = FALSE ;------------------------------------------------------------------------------------------------------------------------------ -; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyRank.xml'. -; If you set this to TRUE, then you have to set INDIVIDUAL_ENEMY_NAMES = FALSE. +; Turn this on, and the game uses individual enemy ranks (in tactical) defined in 'TableData\EnemyRank.xml'. ;------------------------------------------------------------------------------------------------------------------------------ INDIVIDUAL_ENEMY_RANK = TRUE diff --git a/Data-UB/Ja2_Options.ini b/Data-UB/Ja2_Options.ini index c052583d4..e6c920b6e 100644 --- a/Data-UB/Ja2_Options.ini +++ b/Data-UB/Ja2_Options.ini @@ -1603,19 +1603,21 @@ INDIVIDUAL_HIDDEN_PERSON_NAMES = TRUE ;------------------------------------------------------------------------------------------------------------------------------ ; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyNames.xml'. -; If you set this to TRUE, then you have to set INDIVIDUAL_ENEMY_RANK = FALSE. +; If you set SOLDIER_PROFILES_ENEMY = TRUE the name in the profile takes precedence. ;------------------------------------------------------------------------------------------------------------------------------ + INDIVIDUAL_ENEMY_NAMES = FALSE ;------------------------------------------------------------------------------------------------------------------------------ -; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyRank.xml'. -; If you set this to TRUE, then you have to set INDIVIDUAL_ENEMY_NAMES = FALSE. +; Turn this on, and the game uses individual enemy ranks (in tactical) defined in 'TableData\EnemyRank.xml'. ;------------------------------------------------------------------------------------------------------------------------------ + INDIVIDUAL_ENEMY_RANK = TRUE ;------------------------------------------------------------------------------------------------------------------------------ ; Turn this on, and the game uses individual civilian group names (in tactical) defined in 'TableData\CivGroupNames.xml'. ;------------------------------------------------------------------------------------------------------------------------------ + INDIVIDUAL_CIVILIAN_NAMES = TRUE ;------------------------------------------------------------------------------------------------------------------------------ @@ -1623,6 +1625,7 @@ INDIVIDUAL_CIVILIAN_NAMES = TRUE ; In the xml, one can specify name/bodytype/hair/skin/traits ; If selected, the game will select a newly created soldier's data from these profiles randomly ;------------------------------------------------------------------------------------------------------------------------------ + SOLDIER_PROFILES_ENEMY = TRUE SOLDIER_PROFILES_MILITIA = FALSE diff --git a/Data/Ja2_Options.INI b/Data/Ja2_Options.INI index cf9513685..8f2ba1449 100644 --- a/Data/Ja2_Options.INI +++ b/Data/Ja2_Options.INI @@ -775,6 +775,11 @@ SHOW_CAMOUFLAGE_FACES = FALSE ;------------------------------------------------------------------------------------------------------------------------------ HIDE_ENEMY_HEALTH_TEXT = FALSE +;------------------------------------------------------------------------------------------------------------------------------ +; If enabled, you see the health and fatigue bar when hovering over your mercs, and on the currently selected merc. +;------------------------------------------------------------------------------------------------------------------------------ + +SHOW_HEALTHBARSOVERHEAD = FALSE ;------------------------------------------------------------------------------------------------------------------------------ ; How should the game display the enemy hit counter? @@ -889,6 +894,9 @@ SHOT_HEAD_DIVISOR = 2 SHOOT_UNSEEN_PENALTY = 100 +; 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 ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -1132,6 +1140,28 @@ ENEMY_AMBUSHES_CHANCE_MODIFIER = 0 SPECIAL_NPCS_STRONGER = 0 +; Should Kingpin's hitmen (and woman) be disguised? They will wear random clothes and it'll be harder to find them +ASSASSINS_DISGUISED = TRUE + +;------------------------------------------------------------------------------------------------------------------------------ +; Enemy Assassins +; Should the queen send out assassins that mix among your militia? These non-NPCs work like kingpin's hitmen and use the covert ops trait +; new trait system is required for this, and new inventory is system is heavily advised +;------------------------------------------------------------------------------------------------------------------------------ + +; TRUE: assassins can appear +ENEMY_ASSASSINS = FALSE + +; minimum progress required for assassins to appear +ASSASSIN_MINIMUM_PROGRESS = 20 + +; assassins can only spawn if at least x militia are in sector +ASSASSIN_MINIMUM_MILITIA = 10 + +; this modifies propability of assassins showing up. 100 means that if there are MAX_NUMBER_MILITIA_IN_TACTICAL militia in the +; sector, there is a 10% chance of assassins showing up +; 200 means that the chance is 20%, 50 means 5%, and so on +ASSASSIN_PROPABILITY_MODIFIER = 100 ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -1306,7 +1336,6 @@ FASTER_SHOT_FROM_ALTWEAPHOLD_PERC = 10 CTH_PENALTY_FROM_ALTWEAPHOLD = 30 ; The base penalty when aiming from alternative weapon holding, if aiming from it is allowed. (This modifier is DOUBLED under NCTH, -since its calculation is different, and it balances the reduction of aiming levels.) AIMING_PENALY_FROM_ALTWEAPHOLD = 30 ; Aiming levels of the gun are reduced percentually by this number on alternative weapon holding. So 50 here means only half aiming @@ -1340,6 +1369,13 @@ USE_SCOPE_MODES = FALSE ; Allow display of scope modes on weapons in tactical DISPLAY_SCOPE_MODES = FALSE +;------------------------------------------------------------------------------------------------------------------------------ +; external feeding +;------------------------------------------------------------------------------------------------------------------------------ + +; determines wether we can allow to feed guns externally. 0 = no external feeding 1= only for other mercs 2 = from other mercs and dedicated slots from ourself +EXTERNAL_FEEDING = 2 + ;------------------------------------------------------------------------------------------------------------------------------ ; Set the grid number for the initial merc arrival location. ; The JA2 default grid number is 4870 (Sector A9 Omerta). @@ -1484,7 +1520,7 @@ VERY_HIGH_POWER_SCOPE_AIM_THRESHOLD = 18 ; From what aiming bonus a scope is considered high power (Battle Scope 7x) HIGH_POWER_SCOPE_AIM_THRESHOLD = 13 -; From what aiming bonus a scope is considered medium power (ACOG 10x) +; From what aiming bonus a scope is considered medium power (ACOG 4x) MEDIUM_POWER_SCOPE_AIM_THRESHOLD = 8 ;------------------------------------------------------------------------------------------------------------------------------ @@ -1547,6 +1583,9 @@ CRITICAL_LEGSHOT_CAUSES_AP_LOSS = FALSE CAN_JUMP_THROUGH_WINDOWS = FALSE +; allows jumping through closed windows, smashing them while jumping +CAN_JUMP_THROUGH_CLOSED_WINDOWS = FALSE + ;------------------------------------------------------------------------------------------------------------------------------ ; Turn this on and your merc can climb on walls (that have 2 floors like buildings) by pressing 'j'. ;------------------------------------------------------------------------------------------------------------------------------ @@ -1561,14 +1600,13 @@ INDIVIDUAL_HIDDEN_PERSON_NAMES = FALSE ;------------------------------------------------------------------------------------------------------------------------------ ; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyNames.xml'. -; If you set this to TRUE, then you have to set INDIVIDUAL_ENEMY_RANK = FALSE. +; If you set SOLDIER_PROFILES_ENEMY = TRUE the name in the profile takes precedence. ;------------------------------------------------------------------------------------------------------------------------------ INDIVIDUAL_ENEMY_NAMES = FALSE ;------------------------------------------------------------------------------------------------------------------------------ -; Turn this on, and the game uses individual enemy names (in tactical) defined in 'TableData\EnemyRank.xml'. -; If you set this to TRUE, then you have to set INDIVIDUAL_ENEMY_NAMES = FALSE. +; Turn this on, and the game uses individual enemy ranks (in tactical) defined in 'TableData\EnemyRank.xml'. ;------------------------------------------------------------------------------------------------------------------------------ INDIVIDUAL_ENEMY_RANK = FALSE @@ -1576,9 +1614,15 @@ INDIVIDUAL_ENEMY_RANK = FALSE ;------------------------------------------------------------------------------------------------------------------------------ ; Turn this on, and the game uses individual civilian group names (in tactical) defined in 'TableData\CivGroupNames.xml'. ;------------------------------------------------------------------------------------------------------------------------------ - INDIVIDUAL_CIVILIAN_NAMES = FALSE +;------------------------------------------------------------------------------------------------------------------------------ +; Controls wether enemy soldiers/militiamen can use predefined profiles from TableData/Profiles. +; In the xml, one can specify name/bodytype/hair/skin/traits +; If selected, the game will select a newly created soldier's data from these profiles randomly +;------------------------------------------------------------------------------------------------------------------------------ +SOLDIER_PROFILES_ENEMY = FALSE +SOLDIER_PROFILES_MILITIA = 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 @@ -1699,6 +1743,8 @@ ENERGY_COST_FOR_WEAPON_RECOIL_KICK = 0 ; NPCs are not required to be in CIV_TEAM anymore. ALL_NAMED_NPCS_DECIDE_ACTION = FALSE +; allow accessing other mercs inventories. This works just like stealing, but on your teammembers, even when they are dying or unconscious +ACCESS_OTHER_MERC_INVENTORIES = FALSE ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -1791,6 +1837,19 @@ COVER_SYSTEM_UPDATE_DELAY = 500 SUPPRESSION_EFFECTIVENESS = 0 +;------------------------------------------------------------------------------------------------------------------------------ +; These modifiers control suppression effectiveness for different teams. They work together with SUPPRESSION_EFFECTIVENESS, +; not instead +; +; 0 = JA2 Default: Suppression is DISABLED. +; 100 = Suppression is fully activated. +; +; This value can be raised to 65535... But don't. Values over 200 are already excessive. +;------------------------------------------------------------------------------------------------------------------------------ + +SUPPRESSION_EFFECTIVENESS_PLAYER = 0 +SUPPRESSION_EFFECTIVENESS_AI = 0 + ;------------------------------------------------------------------------------------------------------------------------------ ; Minimum and Maximum amount of Suppression Tolerance a character can have. ; @@ -1980,12 +2039,11 @@ OVERHEATING_DISPLAY_THERMOMETER_RED_OFFSET = 100 ; If a barrel is not in someone's inventory, it cools down a little bit better. OVERHEATING_COOLDOWN_MODIFICATOR_LONELYBARREL = 1.15 -; Should the temperature of all items lying on the ground in a sector be set to zero upon loading a different sector? -; Due to engine limitations, the temperature will otherwise stay what I was when another sector was loaded. -; This can be exploited, but why would you do that? -; Note: This only applies to items lying on the ground. The inventory of your mercs will cool down wherever they are. -OVERHEATING_SET_ZERO_UPON_NEW_SECTOR = FALSE +; with this value one can increase or lower the temperature generated by all guns. Values from 0.1 to 10.0 +OVERHEATING_TEMPERATURE_GLOBAL_MODIFIER = 1.0 +;****************************************************************************************************************************** +;****************************************************************************************************************************** [Tactical Zombie Settings] @@ -2011,6 +2069,9 @@ ZOMBIE_RISE_WAVE_FREQUENCY = 60 ; Can zombies climb roofs? ZOMBIE_CAN_CLIMB = TRUE +; Can zombies jump through windows? +ZOMBIE_CAN_JUMP_WINDOWS = FALSE + ; zombies made from corpses of civilians do not have a punch animation, which results in a deadlock if they try to punch ; 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. @@ -2036,6 +2097,9 @@ 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 +; 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 ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -2066,6 +2130,9 @@ ZOMBIE_RISE_WITH_ARMOUR = FALSE ; 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 @@ -2111,6 +2178,12 @@ 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 + ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -2293,7 +2366,10 @@ GAME_PROGRESS_MIKE_AVAILABLE = 50 ; Default 70 GAME_PROGRESS_IGGY_AVAILABLE = 70 - +; The queen decides to go on the offensive. WARNING: This will be hard! +; AGGRESSIVE_STRATEGIC_AI must be true for this to have any effect +GAME_PROGRESS_OFFENSIVE_STAGE_1 = 65 +GAME_PROGRESS_OFFENSIVE_STAGE_2 = 85 @@ -2312,6 +2388,13 @@ GAME_PROGRESS_IGGY_AVAILABLE = 70 TRIGGER_MASSIVE_ENEMY_COUNTERATTACK_AT_DRASSEN = FALSE +; This enables massive counterattacks in all cities, just like in Drassen. +; NOTE: These attacks will be huge. You have been warned. +; 0: no attacks +; 1: counterattacks on all cities possible +; 2: 1 + major offensives depending on game progress +AGGRESSIVE_STRATEGIC_AI = 0 + ;------------------------------------------------------------------------------------------------------------------------------ ; Determines whether crepitus / creatures show up in SCI-FI MODE (only - they can never show up in realistic mode) @@ -2360,7 +2443,7 @@ WHICH_MINE_SHUTS_DOWN = -1 ; Allows enemy/militia reinforcements from adjacent sectors. ALLOW_REINFORCEMENTS = FALSE -; Allows reinforcements only between city sectors. +; Allows reinforcements only between city sectors. Only affects militia, not enemies. ALLOW_REINFORCEMENTS_ONLY_IN_CITIES = FALSE ;------------------------------------------------------------------------------------------------------------------------------ @@ -2422,12 +2505,24 @@ ADDITIONAL_REPAIR_MODE = FALSE ; determines wether a gun can suffer permanent damage that cannot be repaired other by local smiths. 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 trun, 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 + ;****************************************************************************************************************************** ; Set how to handle Skyrider "hot LZ" options ; @@ -2453,6 +2548,60 @@ ENABLE_ALL_TERRORISTS = FALSE ENABLE_ALL_WEAPON_CACHES = FALSE +;****************************************************************************************************************************** +; Override each map's percent likelihood of an item appearing. +; Valid range = 0-100, where 0 uses the map values. +; (Mainly for modders, can possibly take the fun out of the game) +;****************************************************************************************************************************** + +MAP_ITEM_CHANCE_OVERRIDE = 0 + +;****************************************************************************************************************************** +; Prisoner system +;****************************************************************************************************************************** + +; can you capture enemy soldiers? +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 = FALSE + +; the higher this value, the more superiority you need over the enemy for them to surrender. Range: 2.0 - 10.0 +SURRENDER_MULTIPLIER = 5.0 + +; can you offer your own surrender to the enemy? This will not work while certain quests are active, or if the enemy already asked +; you to surrender, and you refused +PLAYER_CAN_ASK_TO_SURRENDER = TRUE + +; chance that released soldiers join the army again +PRISONER_RETURN_TO_ARMY_CHANCE = 50 + +; chance that interrogated soldiers decide to join your cause (they will be turned into militia) +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 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 ddmoted, 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 ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -2597,6 +2746,8 @@ ATTACHMENT_DROP_RATE = 100 MAX_ENEMY_ATTACHMENTS = 3 +; should separate tables be used for each soldier class (admin, regular, elite, green/regular/elite militia)? +SOLDIERCLASS_SPECIFIC_ITEM_TABLES = TRUE ;****************************************************************************************************************************** ;****************************************************************************************************************************** @@ -2982,6 +3133,66 @@ VETERAN_MILITIA_EQUIPMENT_QUALITY_MODIFIER = 0 ;****************************************************************************************************************************** ;****************************************************************************************************************************** +[Militia Equipment Settings] + +;****************************************************************************************************************************** +; These settings control the how militia can equip itslef from sector inventories +;****************************************************************************************************************************** + +;------------------------------------------------------------------------------------------------------------------------------ +; Militia gear will not be randomly generated, but taken from the sector the militia is currently stationed in. +; +; This applies to both tactical and strategic combat. +; Once a sector gets unloaded, the militia will drop the equipment taken again into the sector. +; Gear can be manually dropped in tactical via the 'Ctrl' + '.'-menu, item 'militia inspection'. +; Gear can be prohibited to the militia by hovering over it in the strategic inventory and pressing 'TAB' + 'LMB'. This also works +; if no mercs are present in that sector. +; If militia reinforces a sector, they will take their gear along. +; Mobile militia get their initial gear from the sector they were trained in, after that they take their gear with them if they move on the map. +; It is up to the player to sufficiently distribute gear to his militia (by leaving items in the sector that militia are in). +;------------------------------------------------------------------------------------------------------------------------------ + +; if set to true, militia will take parts of its equipment from a sector's inventory. +MILITIA_USE_SECTOR_EQUIPMENT = FALSE + +; determines wether militia picks helmets, vests and leg armour from the sector. +MILITIA_USE_SECTOR_EQUIPMENT_ARMOUR = TRUE + +; determines wether militia takes NVGs, sungoggles and gasmasks from the sector. +MILITIA_USE_SECTOR_EQUIPMENT_FACE = TRUE + +; determines wether militia takes knifes and punch weapons from the sector +MILITIA_USE_SECTOR_EQUIPMENT_MELEE = TRUE + +; determines wether militia takes guns from the sector +MILITIA_USE_SECTOR_EQUIPMENT_GUN = TRUE + +; determines wether militia takes ammo from the sector. Requires MILITIA_USE_SECTOR_EQUIPMENT_GUN to be true. +; If this is set to false fitting ammo will be spawned in the traditional way, but not be dropped +; If this is set to TRUE, make sure to occasionally restock ammo for your militia. +MILITIA_USE_SECTOR_EQUIPMENT_AMMO = 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 + +; determines wether militia takes LAWs, mortars, RPGs or grenade launchers from the sector +MILITIA_USE_SECTOR_EQUIPMENT_LAUNCHER = TRUE + +; the number of bullets deemed sufficient for a gun is +; max(MILITIA_USE_SECTOR_EQUIPMENT_AMMO_MIN, min(MILITIA_USE_SECTOR_EQUIPMENT_AMMO_MAX, MILITIA_USE_SECTOR_EQUIPMENT_AMMO_OPTIMAL_MAG_COUNT * magazine size)) +; if there is less ammo for a gun than this in a sector, we at first look for other guns, but can still select this one if none have enough ammo +MILITIA_USE_SECTOR_EQUIPMENT_AMMO_MIN = 10 +MILITIA_USE_SECTOR_EQUIPMENT_AMMO_MAX = 200 +MILITIA_USE_SECTOR_EQUIPMENT_AMMO_OPTIMAL_MAG_COUNT = 2 + +; if set to TRUE, once can prohibit militia of certain classes from using an item while toggling with TAB in the sector +; inventory. Turqoise gear cannot be chosen by green milita, purple gear cannot be chosen by green or light blue militia, and +; orange gear cannot be chosen by any militia. +MILITIA_USE_SECTOR_EQUIPMENT_CLASS_SPECIFIC_TABOOS = FALSE + +;****************************************************************************************************************************** +;****************************************************************************************************************************** + [Shopkeeper Inventory Settings] ;****************************************************************************************************************************** @@ -3118,6 +3329,12 @@ REPAIR_RATE_DIVISOR = 2500 ; down repair. A lower value speeds it up. REPAIR_SESSIONS_PER_DAY = 24 +;------------------------------------------------------------------------------------------------------------------------------ +; SquadNames +;------------------------------------------------------------------------------------------------------------------------------ + +; use squadnames from SquadNames.xml +USE_XML_SQUADNAMES = FALSE [Clock Settings] diff --git a/INIEditorJA2Options.xml b/INIEditorJA2Options.xml index e87de4f76c7c6cac2e570ea2d477d1138f34bbac..2c225bfe54b351ea1d41bc8b3da2c0662d979850 100644 GIT binary patch delta 36689 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 BG1~wD delta 28647 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

ZDp$Sm_TWc%lX4V$VdCx1a$u1;$zq35dktCA( zt&|WJXL#GJN=h95jhZOZ)n=uI)kdM{50=y5%Gw)!+pXn%-nE*}h71UK1MK*t<>XM9o+9*E*!G^al#@FcMM&9SMP(Pj^?}tGe7j*1@pf3P zyit>V{Rrf}mXkDM`%}~*3ww9|Y?V85p?}$f?Ad3fsZ6TG_cv=C6CRo0gpIZkg{V!D8v-wnV{0ob}h=`Z?Mi#b&@lwjZsU)cyoZIuFdn|f?$x=AVVTpq z!`O7~z0uyuUsh96>^B^ZJ9Lx1Q{x+B$89$6h$84!4?6C=XPUi{4`o6|1UXEEqD6N4@N7my_cKU5R?*{!>$JO{Bj7dbdMv8e-Or|m+UX+muT$aZ)M;gKd||`egqdV-Kl;Kvu-ia{j8nI zmyG@~o$MtxkA;}DmM^gn2YK|6y60?>K^j;~uIIn|v3(h1(9Hk-OWFTZLEn+)90V5> zd$E?;PW_fKS+~rd8Di2Yz0vouz#XvDh`QX4;#%JLwmlw-SK90gAWX@lq3%Uokzncp z3Rl^6j7IG5(qa5BsPUnt)E*Y5kfPQ0LDqDD0oiHH3b`+^B4O3b_G&gEyTRVgwKCKa zyZ%>p*Jx^91QEAzAAtL})3r$^{J|b8@)o9r@7THFwZ(Ps+A%cMmjFk0*}MRX?}C|7 z|AB2n*?abQI=C8Nk9r>$hB|^+$Z5CPRu1@PjS6{xva=!Q13Qk<7M#oeZW>O*;3a9@RL`F;EF|g;)HvifMMqF52*k`Y26KelrAEOR80Y7