ja2_7609+AI 中文版更新:r1942

» 2021-02-20 zSay 3条评论

详情《JA2 1.13 稳定版 AI 增强 MOD【中文版】》,直达百毒 Builds 目录(以后更新就不贴百毒地址了,免得需要改地址)。

(r3xx~r1437 的更新跟 TBS 一起消失了,在此叹下气)

部分 r1438~r1942 新特性视频(Y2B,自备木弟子)

(都2025了,有AI帮忙翻译:)

r1594

敌人可以使用剪线钳开辟通往最近敌人的路径,侧翼包抄的士兵如果找不到下一个侧翼点,也可以使用剪线钳剪断围栏。
EXTRA_ITEMS 选项为敌方士兵增加了携带剪线钳的小概率,具体取决于士兵的等级和游戏难度。
只有进攻的士兵会使用剪线钳,驻守的士兵倾向于不破坏防御工事。

限制:目前士兵只能剪断周围的围栏,不会特意移动到围栏处剪断它。

r1597

新选项 REPAIR_WIRE_FENCES(默认关闭)允许使用剪线钳修复被剪断的围栏。
通过为剪断的围栏结构信息分配 bPartnerDelta 来实现。

r1621

仅使用铲子可以在泥土/草地表面上建造沙袋。
防御工事现在是即时动作,使用 AP_USEWIRECUTTERS 成本。
在进行防御工事动作时,显示锤子图标在佣兵肖像上。
交换了红色/灰色防御工事光标,使其与其他动作光标一致。
允许士兵在靠近动作点时进行对角线方向的防御工事动作。
进行防御工事动作时不播放 COOL 台词。
修复了各种与防御工事相关的错误(AP 成本、移动到建造、光标类型等)。

r1714

在 AmmoTypes.xml 中添加了新标志:AMMO_AIRBURST = 16,强制子弹在达到目标距离或最大武器射程时在空中爆炸。
空爆弹药类型要求 explosionSize > 1,highExplosive > 1。
第二层的爆炸现在可以影响第一层的格子,如果它们上方没有屋顶。
实现了安全距离——手榴弹只有在飞行至少 5 格后才会爆炸(除非在此之前击中某物)。
距离有一定的随机性——手榴弹在达到(目标距离 - 1)格后,每格有 33% 的几率爆炸。
注意:爆炸碎片在空爆时工作不正确(实际上,任何爆炸性弹药都是如此),因此不要使用它们。

r1726

游戏内新选项“安全 [D] 按钮”可以防止意外结束回合,并提供新功能。

现在玩家可以以新的方式循环选择佣兵——按下 [D] 时,游戏将切换到下一个仍有 AP 的最近佣兵,并标记当前佣兵以便下次不选择,当所有佣兵都被选择后,清除所有佣兵的“已选择”标志并重新开始选择最近的佣兵。与 [Space] 键不同,这种方式可以选择区域内的所有佣兵,而不仅仅是当前小队。

游戏中的效果如下:

r1748
屋顶下没有雨天的视线惩罚。
改进了烟雾/毒气的视线惩罚。
烟雾中的可见距离限制为 1 格。

r1846
AI 士兵可以尝试从上方或下方使用 TNT 炸毁已知的对手。

来自 Vengeance:Reloaded mod 的实验性功能,我计划在 +AI 中也实现。

视野加成仅在侦察或专注技能激活时对选定区域有效。
专注功能不仅可以使用视野加成来侦察区域,还可以在专注区域内提供中断加成。
侦察和专注都将正常视野限制在士兵周围的 5 格内。
AI 会自动在可以拥有视野加成和中断加成的标准观察位置使用。

r1921

你现在可以给民兵下达“移动到”命令,以便在战斗前将他们战术性地放置。
默认情况下,士兵将切换到 FARPATROL/DEFENSIVE 模式。
如果你不希望民兵从新位置移动,可以在到达后下达“保持”命令,士兵将切换到 STATIONARY。
一些限制:
- 仅适用于实时模式
- 如果移动点在不同层,士兵会攀爬但不会进一步移动
- 你只能命令移动到屋顶,如果它在编辑器中正确定义,一些平坦的屋顶无法被 AI 使用,因为它们没有正确的房间编号

r1935

新游戏内选项“智能树顶隐藏”仅隐藏可能阻挡可见士兵或光标位置的树木。

r1438~r1942 日志(英文不好懒得翻译,有兴趣可以细看,不看就游戏中感受)

r1942
改进了民兵命令代码。
---------------------
r1941
智能树顶隐藏:更多优化。
---------------------
r1940
智能树顶隐藏:代码优化。
---------------------
r1939
给民兵下达“移动到”命令时设置最终目的地,以便在攀爬后移动到所需位置。给民兵下达“移动到”命令时切换到 STATIONARY 命令,以便之后不会走开。
---------------------
r1938
仅生成合法的随机物品(检查食物、泥土、科幻、大量枪支模式和库存类型)。代码小改进。
---------------------
r1937
移动光标时添加 0.1 秒延迟以隐藏树顶,防止在树木上移动鼠标时闪烁。
---------------------
r1936
改进了智能树顶功能。
---------------------
r1935
新游戏内选项:智能树顶隐藏。
---------------------
r1934
修复:UI 攻击处理优先考虑交互式结构而不是目标士兵,即使明确提供了目标士兵,导致死锁,例如当尝试攻击被门重叠的敌人时(由 anv 完成)。
---------------------
r1933
使用自动射击时增加子弹数量,如果:
- 士兵使用机枪并有掩护
- 士兵处于精神药物效果下
- 准备进行冲锋攻击
- 士兵有备用弹匣并有掩护
---------------------
r1932
红色 AI:使用轻机枪或士兵有备用弹匣时增加压制射击的子弹数量(仅限 OCTH)。增加 SEEKENEMY 士兵的压制射击几率。
---------------------
r1931
ReInitMergedItem:在进行断言时显示物品 ID 和附件 ID。
---------------------
r1930
修复:guiBaseJA2Clock 溢出(由 MH17 完成)。
---------------------
r1929
CalcMorale:如果我们人数占优,不要限制士气。AnyCoverAtSpot:允许为最近的对手以外的对手提供相邻掩护。AIEstimateCTH:为视线外的点添加可见性惩罚。
---------------------
r1928
从 UI 改变姿态时,首先停止畏缩。当佣兵开始移动时停止畏缩。在快速前进模式下增加停止 AI 的延迟。
---------------------
r1927
实验性调整:在水中后不要切换到步行移动。
---------------------
r1926
改进了士兵之间的通信检查:双方都有扩展耳朵且区域未被干扰,或者他们可以看到彼此且距离不太远。如果玩家佣兵失去意识,不要停止畏缩动画。GetSquadleadersCountInVicin...
---------------------
r1925
CalcChanceHTH:仅对拳击手使用减少的几率。
---------------------
r1924
NO_STANDING_ANIM_ADJUSTMENT_IN_COMBAT:仅适用于玩家。AIDoctorFriend, AIDoctorSelf:首先将士兵切换到静止状态。AIDoctorFriend:将目标切换到静止状态。
---------------------
r1923
FindSunGogglesInInv:如果物品具有白天或明亮视野加成 > 0,则计为太阳镜。StartRadioAnimation:在水中、不可见或身体类型不正确时不播放动画。CalcChanceHTH:将近战攻击的基础几率恢复为 67。
---------------------
r1922
改进了检查民兵选项是否可用的代码。给民兵下达命令时开始无线电动画。当“移动到”命令成功时显示定位器,如果找不到路径则说诅咒台词。FindClosestClimbPointAvailableToAI:不检查...
---------------------
r1921
新民兵命令:移动到(仅适用于实时模式)。给民兵下达命令时取消当前 AI 命令。不允许选择阴影选项。
---------------------
r1920
GetItemSlots:使用 MAXITEMS + 1 作为 AttachmentSlots 的限制。改进了路径 AI 代码。
---------------------
r1919
CheckDangerousDirection:不检查视线。
---------------------
r1918
使用 UINT16 进行 Item[] 循环。PickARandomLaunchable:使用 1 + 进度 / 10 以允许酷炫度为 10 的物品。
---------------------
r1917
CountCorpses:使用士兵的等级来检查尸体等级。
---------------------
r1916
OCTH:改进了代码以避免幸运命中,将 MIN_AIMING_SCREWUP 从 22 增加到 30。AI:在水中时不使用反向移动模式。
---------------------
r1915
EstimateThrowDamage:考虑单发火箭发射器的 标签。
---------------------
r1914
添加了 DecideActionUtils 文件。
---------------------
r1913
在决定炸毁墙壁或跳窗时检查房间内的尸体。ClosestReachableDisturbance:如果对手在房间内,决定移动到可以炸毁墙壁的最近点。CountCorpses:- 返回尸体数量而不是 TRUE/...
---------------------
r1912
SightCoverAtSpot, AnyCoverAtSpot:不检查对角线方向以提高性能。
---------------------
r1911
ClosestReachableDisturbance:在搜索跳窗时优化速度 - 限制搜索距离。
---------------------
r1910
路径 AI:禁用视线/掩护检查以提高性能。
---------------------
r1909
AI 医疗兵:改进了民兵医疗兵的代码。CalcCoverValue:增加对会使敌人转身射击的位置的加成。如果士兵未受到攻击或本回合未使用武器,则不减少无掩护位置的射程因子。在计算加成/惩罚时...
---------------------
r1908
LBE 工具提示:改进了代码。GetHearingBonus:使用聆听技能时,需要几个回合才能达到最大听力加成。Create AI soldier:如果分配了爆破特质且启用了 EXTRA_ITEMS 选项,则给予 TNT。ClosestReachableDisturbance:...
---------------------
r1907
改进了 LBE 工具提示的代码。DecayRottingCorpseAIWarnings:在地下保持最小值为 1。如果士兵在转身后可以看到对手,则始终允许压制。
---------------------
r1906
DecayRottingCorpseAIWarnings:改进了检查房间和楼层的代码。
---------------------
r1905
DecayRottingCorpseAIWarnings:在战斗时保持最小值为 1(仅适用于房间)。
---------------------
r1904
重新启用了改进的 LBE 工具提示。红色 AI 压制射击:减少 SEEKENEMY 的几率。
---------------------
r1903
禁用了扩展的 BR LBE 工具提示。UpdateAttachmentTooltips:分离了可发射物品的循环。速度优化:gMAXATTACHMENTS_READ, gMAXLAUNCHABLES_READ。
---------------------
r1902
速度优化:实现 gMAXITEMS_READ, gMAXAMMOTYPES_READ。InternalInitItemDescriptionBox:添加了代码以重置错误的弹药类型。UpdateAttachmentTooltips:首先在单独的循环中检查物品,改进了向量搜索代码。GetItemS...
---------------------
r1901
Bobby Ray:显示 LBE 的一些额外统计信息(MOLLE 空间可用/消耗,MOLLE 插槽,战斗包/背包组合)(由 rftr 完成)。修复了一些警告。
---------------------
r1900
当同一天有多个新佣兵可用时,阻止 Speck 发送垃圾邮件(由 rftr 完成)。
---------------------
r1899
BeginSoldierJumpWindowAI:对于 AI,首先从跳入关闭的窗户中造成伤害,然后开始跳跃。IsGivingAid:还检查 START_AID, START_AID_PRN 以允许 AI 士兵停止刚刚开始的医疗动画。AI_ACTION_JUMP_WINDOW:...
---------------------
r1898
ClosestReachableFriendInTrouble:禁用了医疗代码。改进了医疗 AI 以提高一致性,检查治疗点是否安全。
---------------------
r1897
AI:在回合制中开始急救后不要结束回合,以便更快地进行治疗。
---------------------
r1896
如果只有第二只手忙,则允许开始拖动。反向移动:将搜索/掩护的反向移动限制为 1 格。
---------------------
r1895
AI 搜索要拾取的物品:- 即使在危险情况下也允许从同一位置拾取 - 如果武器不在手中,则使用正确的物品 ID - 在决定拾取武器时考虑特质技能 - 更改了代码以比较 d...
---------------------
r1894
为 AI 分配技能特质:对于 SMG/突击步枪,检查枪支是否具有自动/连发功能。
---------------------
r1893
AI 技能特质分配调整:- 使用 IC_PUNCH 而不是 128 作为近战武器 - 仅当士兵有 brass knuckles 时为民兵分配 MARTIAL_ARTS_NT - 如果士兵有 TNT,则分配爆破特质的几率 - 如果士兵有投掷武器,则分配投掷特质...
---------------------
r1892
移除了快速物品面板功能。战术面板:代码小改进。
---------------------
r1891
新的 AI 函数:CheckClosedWindow。ClosestReachableDisturbance:- 改进了 TNT 检查 - 如果找到 TNT 点,则不改变 bLevel
---------------------
r1890
添加了 CheckWindow 函数 - 检查方向上的窗户。
---------------------
r1889
EXTRA_ITEMS:- 将默认的 TNT 物品更改为 C1 - 如果 C1 不是正确的爆炸物,则搜索爆炸物,要求 ubDamage > 40
---------------------
r1888
InitializeMultiplayerProfile:使用 std::unique 而不是 std::auto_ptr。路径 AI:禁用了路径侧翼以提高性能。
---------------------
r1887
UIHandleNewMerc:- 检查是否可以在鼠标位置放置新佣兵 - 为佣兵设置到达点
---------------------
r1886
新函数:RoomNo, SameRoom。BeginSoldierClimbWindow:在传送士兵时扣除跳跃的 AP。在传送士兵到/从屋顶时扣除 AP。AI_ACTION_JUMP_WINDOW:- 在回合制中,跳跃后添加随机面向变化,如果士兵...
---------------------
r1885
重新启用了投掷照明弹时的光精灵,但没有枪口闪光,因此不会中断。为所有照明弹手榴弹播放 grenade_breaklight.ogg / grenade_breaklight_delay.ogg(禁用了 grenade_flare.ogg / grenade_flare_delay.ogg)。
---------------------
r1884
移除了窗户跳跃决策中的随机性。移除了未使用的定义:TRAVELCOST_JUMPABLEWINDOW, TRAVELCOST_JUMPABLEWINDOW_N, TRAVELCOST_JUMPABLEWINDOW_W。
---------------------
r1883
僵尸 AI:如果 ZOMBIE_CAN_JUMP_WINDOWS = TRUE,则允许在红色、黑色状态下跳窗以改善通往最近对手的路径成本(仅当跳窗可以改善路径成本时)。
---------------------
r1882
路径 AI:将智能侧翼移动到条件中的更高位置。GetAPsToJumpThroughWindows:代码清理。新函数:BeginSoldierJumpWindowAI,类似于 BeginSoldierClimbWindow,但适用于 AI。AI_ACTION_JUMP_WINDOW:将下一个动作设置为 AI_ACTION_END_TUR...
---------------------
r1881
CalcMorale:- 改进了健康/呼吸修正 - 如果朋友侧翼包抄且士兵在安全点,则惩罚 - 将攻击命中/目标崩溃/目标压制合并为一个检查 - 如果武器超出射程,则加成
---------------------
r1880
仅当允许复杂 AI 时,才允许路径侧翼。
---------------------
r1879
FindAdvanceSpot:在夜间避免移动到没有站立视线掩护的光亮处。
---------------------
r1878
为 AI 路径侧翼添加了代码(避免从有尸体的方向接近敌人)。
---------------------
r1877
将 WKAEUP_FROM_SLEEP 重命名为 WAKEUP_FROM_SLEEP。EVENT_SoldierBeginFirstAid:停止拖动。CancelDrag:初始化新动画以修复不正确的位置。
---------------------
r1876
Radio Listening 技能:- 简化了代码 - 当士兵花费 AP 时不要关闭监听(以使 AI 更有用) - 需要花费 1 回合监听以开始显示噪音定位器 - 当士兵被压制时停止监听(反应...
---------------------
r1875
CancelDrag:将拖动的士兵切换到静止状态。OCTH:禁用了基于障碍物的额外有效视线惩罚。
---------------------
r1874
AI:- 将一些特殊动作限制为 ENEMY_TEAM(使用 TNT,使用剪线钳,使用烟雾掩护位置,用手榴弹炸毁围栏) - 在下雨时让 AI 想要使用监听技能 - 允许民兵和平民使用黑色掩护前进代码
---------------------
r1873
OCTH:增加最小未命中以防止在远距离低 CTH 时的幸运射击。
---------------------
r1872
主要红色 AI:如果在回合开始时士兵最近看到/听到敌人,则允许在实时模式下寻找掩护,几率为 30%。GetSightAdjustmentStealthAtLightLevel:从黑暗等级线性缩放。
---------------------
r1871
GetSightAdjustmentCamouflageOnTerrain:根据光照等级缩放迷彩。LightTrueLevel:重新启用了夜间阴影对光照等级的完全影响。
---------------------
r1870
长跳:- 在跳跃前切换到静止姿态(修复了从移动动画跳跃时的问题) - 如果士兵处于俯卧状态,则在跳跃前切换到站立动画(允许从俯卧姿态正确跳跃)
---------------------
r1869
新选项 NIGHT_SHADOWS(默认关闭)。NightBonusScale:在完全黑暗中提供完整的夜视加成。OCTH:禁用了最大 CTH 的瞄准时间加成。LightTrueLevel:夜间阴影对光照等级没有影响。
---------------------
r1868
添加了开始告密的基本要求(活着、清醒、不在运输中等)。
---------------------
r1867
修复了 AI 角色图标显示。
---------------------
r1866
路径 AI:狙击手应避免没有掩护的位置。
---------------------
r1865
EstimatePathCostToLocation:安全检查。
---------------------
r1864
医疗 AI:优先选择有掩护的安全路径。CheckForChangingOrders:将 BRAVESOLO< BRAVEAID, AGGRESSIVE 医疗兵切换到 CUNNINGAID。CalcMorale:如果附近有朋友且没有成功攻击,则限制 AI 医疗兵的士气。
---------------------
r1863 WillExplosiveWeaponFail:播放空枪声音以指示武器故障。CheckForChangingOrders:将医疗兵切换到防御态度。AICheckSpecialRole:将医疗兵添加到特殊 AI 角色。
---------------------
r1862 DecideMedic:- 将自我治疗限制在回合开始时 - 修复了改变面向的错误
---------------------
r1861 改进了医疗 AI 代码。CanMedicAI:检查佣兵身体类型。WillExplosiveWeaponFail 检查:如果爆炸类型不正常,则使用迷你手榴弹爆炸。GetClosestWoundedSoldierID:在回合制中跳过没有出血且没有死亡的朋友...
---------------------
r1860 新图标用于 AI 榴弹发射器操作员。在地下禁用侧翼包抄,简化了开始侧翼包抄的代码。
---------------------
r1859 新敌人 AI 角色图标:榴弹发射器。新敌人附加图标:有钥匙,有 TNT。
---------------------
r1858 主要红色 AI:- 将决策权重计算移至 PrepareMainRedAIWeights - 在实时模式下不寻找掩护
---------------------
r1857 如果未正确结束,则在以下情况下结束枪口闪光并显示消息:- 士兵花费 AP - 士兵移动到新格子 - 士兵开始新回合
---------------------
r1856 将默认 MAX_MOVEMENT_PENALTY 减少到 40。设置默认 DIRECTIONAL_PENALTY = FALSE。禁用默认的 INSANE 视野加成。投掷物品时禁用枪口闪光。投掷照明弹/燃烧瓶时禁用枪口闪光,因为它不会被移除...
---------------------
r1855 允许 AI 标记不可见的炸弹为已见,如果它有视线。库存选择:减少 AI 拥有 TNT 的几率,使其依赖于难度等级。
---------------------
r1854 CountKnownEnemies:允许检查楼层。AI_ACTION_PLANT_BOMB:将延迟减少到 1-2 回合。使用 TNT 炸毁附近的敌人:减少放置炸弹的几率。使用 TNT 炸毁墙壁和围栏:- 仅在回合开始时 - 始终允许...
---------------------
r1853 AI_ACTION_PLANT_BOMB:将放置的炸弹设置为不可见。
---------------------
r1852 玩家佣兵在自动包扎模式或 AI 控制下应避免移动到毒气/火中。
---------------------
r1851 改进了位置危险检查以使用 SpotDangerLevel。移除了 CheckNPCDestination。SearchForItems:允许在同一位置拾取物品,无论危险等级如何。代码清理和优化。
---------------------
r1850 AI_ACTION_PLANT_BOMB:- 随机化延迟 1-3 回合 - 将陷阱难度设置为 6 + SoldierDifficulty
---------------------
r1849 IsLocationSittable:如果屋顶上的位置不可坐,则返回 FALSE。
---------------------
r1848 IsLocationSittableExcludingPeople:如果屋顶上的位置不可坐,则返回 FALSE。ClosestReachableDisturbance:在检查放置炸弹的位置时,检查位置是否可坐。
---------------------
r1847 CheckForEndOfBattle:禁用 AddPossiblePendingEnemiesToBattle() 以防止战斗结束后敌人出现在区域中的错误。
---------------------
r1846 新的 AI 函数:CountKnownEnemies() CheckForChangingOrders:- 将特殊角色从 BRAVESOLO/BRAVEAID/AGGRESSIVE(机枪手除外)切换到 CUNNINGSOLO/CUNNINGAID - 将指挥官/迫击炮操作员/无线电操作员设置为 DEFENSIVE - 将 SEEKENE...
---------------------
r1845 CheckForChangingOrders:- 将特殊 AI 角色切换到防御 - 将 SEEKENEMY/DEFENSIVE 切换到 CUNNINGSOLO 以使攻击性 AI 更具攻击性
---------------------
r1844 允许更高的火蔓延几率:使用 sqrt(1 + ubGeneration)。
---------------------
r1843 OCTH:- 将最大远程惩罚限制为 AIM_BONUS_SAME_TARGET - 对超出视野范围的射击施加惩罚,最多在双倍视野范围时达到 SHOOT_UNSEEN_PENALTY - 对辅助射击没有惩罚 - 在计算最大瞄准加成时,使用平均...
---------------------
r1842 AI:不要尝试炸毁悬崖。
---------------------
r1841 红色 AI:在决定压制射击时允许真正命中几率 = 1。
---------------------
r1840 AbortPath, AbortFinalSpot:在夜间检查光亮时添加烟雾检查,代码小改进。
---------------------
r1839 AbortPath, AbortFinalSpot:简化了夜间光亮检查。
---------------------
r1838 恢复了急救代码。
---------------------
r1837 红色、黑色 AI:更严格的冲锋攻击,高击杀百分比时几率更低。
---------------------
r1836 红色、黑色 AI:允许士兵在侧翼包抄或改善路径成本时炸毁墙壁/围栏/障碍物。AI_ACTION_PLANT_BOMB:添加了 DROP_ITEM/CUTTING_FENCE 和 THROW_IMPACT_2 声音。CountCorpses:简化了代码,始终检查可见。Decide...
---------------------
r1835 AI:改进了剪断铁丝网的代码。库存选择:增加了创建 TNT 的几率。
---------------------
r1834 新的 AI 动作:AI_ACTION_PLANT_BOMB。
---------------------
r1833 主要红色 AI:修复了权重计算。
---------------------
r1832 HandleItem:使用当前位置和方向进行自我治疗以防止无限时钟。
---------------------
r1831 CalcBestShot:- 改进了穿墙射击检查 - 禁用了还击代码
---------------------
r1830 CalcCoverValue:- 如果超出枪支射程,则允许向僵尸/血猫/近战对手前进 - 在检查撤退时,始终检查新位置是否在枪支射程内 - 仅当 iRangeFactor > 0 时应用攻击性加成
---------------------
r1829
将反向移动模式的最大距离增加到 2。简化了反向移动模式代码。改进了确定反向移动模式的代码。
---------------------
r1828
为 AI 增加更多的急救包,取决于难度和游戏进度。
---------------------
r1827
NWSS:仅对第一次射击播放房间效果。
---------------------
r1824
AI 库存选择:迫击炮弹更多样化,改进了手榴弹/榴弹发射器的选择代码。添加了 AICheckWeOutnumberSector AI 函数。AICheckWeOutnumberPublic:始终要求 2 倍数量。
---------------------
r1823
DetermineMovementMode:在寻找掩护时允许在围栏附近爬行。
---------------------
r1822
调整了 AI 路径惩罚。
---------------------
r1821
隐蔽行动:当警报响起且队伍最近看到/听到任何敌人时,立即揭露任何间谍,除了畏缩的平民间谍。
---------------------
r1820
简化了 CorpseWarning 代码:始终返回附近尸体的最高 AI 警告数量。
---------------------
r1819
简化了 AI 尸体警告代码。
---------------------
r1818
CalcBestShot:对重型武器的站立/蹲下姿态施加惩罚。AI:将举起武器的武器持有 BP 成本减少到 30,允许在蹲下或俯卧时举起武器。
---------------------
r1817
调整了 AI 装备的榴弹发射器榴弹数量加成。
---------------------
r1816
在选择 AI 库存时为迫击炮和榴弹发射器增加更多弹药。
---------------------
r1815
SightCoverAtSpot 错误修复:在检查无限视线的相邻可达格子时,使用新位置。
---------------------
r1814
AI:- 改进了迫击炮使用代码:在后退后使用下一个动作发射迫击炮 - 使用 AICheckSpecialRole
---------------------
r1813
改进了任何掩护检查。
---------------------
r1812
实验性 AI 调整:在决定最佳掩护时考虑敌人的移动惩罚,仅当士兵受到攻击或本回合使用武器时。
---------------------
r1811
SightCoverAtSpot:改进了检查结构密度的代码。
---------------------
r1810
改进了 AI 路径调整的代码。SightCoverAtSpot, AnyCoverAtSpot:简化了代码。AbortPath:初始化 sDangerousSpot, sLastSafeSpot。AbortFinalSpot:初始化 sDangerousSpot。
---------------------
r1809
AI:- 改进了使用手电筒揭示敌人位置的代码 - 改进了使用烟雾掩护移动的代码
---------------------
r1808
添加了 FindFenceAroundSpot() 函数。StopTacticalOrderL 使用 0 初始化 ubTacticalTurns。改进了在侧翼包抄时使用烟雾掩护的代码。
---------------------
r1807
非中立平民也应发现活跃的炸弹。
---------------------
r1806
改进了检查附近炸弹的代码。使用手榴弹进行特殊用途:不在中断期间,检查 SoldierAI。
---------------------
r1805
AI:- 只有僵尸、生物、血猫、未武装的士兵和中立士兵会忽略空载具 - 如果有可达的常规对手,则忽略空载具 - 在决定射击或投掷时优先选择常规对手而不是空载具 - ...
---------------------
r1804
HandleSight:如果士兵没有死亡,则也为士兵使用 HandleSight。
---------------------
r1803
NCTH:在计算移动偏移时,根据距离应用最小光圈。
---------------------
r1802
在开始侦察/监视时不检查有效位置。增加了士兵携带剪线钳的几率。SumDistanceToKnownEnemiesInRoom:修复了代码。CheckTossGrenadeSpecial:- 修复了查找可破坏障碍物相邻格子数量的代码...
---------------------
r1801
改进了监视/侦察的代码。
---------------------
r1800
VR r2698 修复:告密任务没有正确将佣兵移出载具
---------------------
r1799
改进了手榴弹的枪口闪光代码。CommonEnterCombatModeCode:修复了 DebugAI 代码。
---------------------
r1798
增加了使用无线电的 AP 成本。
---------------------
r1797
RedSmokeDanger:将考虑位置安全的最小地形密度设置为 75。
---------------------
r1796
改进了 r8460 修复:还检查了错误的弹药物品。红色 AI:修复了谨慎移动位置检查。
---------------------
r1795
红色 AI:改进了谨慎移动检查。
---------------------
r1794
如果原始视线距离 > 0,则在应用视线调整时将最小距离设置为 1 格。
---------------------
r1793
GetSightAdjustment:使用迷彩/隐身惩罚的最大值。AICheckSpecialRole:添加了榴弹发射器角色。
---------------------
r1792
为照明弹/燃烧瓶启用枪口闪光。
---------------------
r1791
实验性修复:在 InternalReduceAttackBusyCount 中攻击结束时停止枪口闪光,而不是在 UIHandleLAEndLockOurTurn 中。解除卡壳时不显示枪口闪光。UseHandToHand:使用电击枪时没有力量加成。OCTH:...
---------------------
r1790
主要红色 AI:改进了监视修正的代码。
---------------------
r1789
InLightAtNight:- 简化了代码 - 始终检查房间内的光
---------------------
r1788
60 分钟后减少被摧毁坦克的光照。更频繁地检查被摧毁的坦克。射击时正确显示枪口闪光。OCTH:武器惩罚从 max(NORMAL_RANGE, max_weapon_range / 3) 开始。
---------------------
r1787
60 分钟后减少被摧毁坦克的光照半径。
---------------------
r1786
为被摧毁的坦克添加了光照。将丢弃/拾取背包的消息颜色更改为黄色。
---------------------
r1785
CalcBestShot:修复了在压制时检查轻机枪的错误。主要红色 AI:帮助不会阻止搜索。FindFlankingSpot:移除了地图边缘检查。
---------------------
r1784
HandleArmedObjectImpact:修复了错误。炮击代码使用 INT32 表示格子编号。
---------------------
r1783
减少白天激光的加成。WatchedLocLocationIsEmpty:- 改进了检查新格子是否超出边界的代码 - 使用知识函数 - 不忽略崩溃/畏缩的 OCTH:- 从 NORMAL_RANGE 开始武器惩罚 - 代码小...
---------------------
r1782
始终使坦克/载具的尸体可见。使用剪线钳剪断围栏:修复了错误。允许伙伴爆炸用于照明弹(用于声音和动画)。
---------------------
r1781
使用非线性法则确定属性提升速度。
---------------------
r1780
改进了代码以在高属性值/高增量时减慢属性提升速度。AI_ACTION_RED_ALERT:仅在第一次发出警报时嘲讽。HandleInitialRedAlert:改进了为 QUEEN 和 JOE 设置警报状态的代码。
---------------------
r1779
修复了打破 AI 死锁的代码。
---------------------
r1778
阴影中的最大黑暗将夜视加成减半,而不是完全移除。NCTH, OCTH:改进了确定目标可见性的代码。改进了按下 ESC 键时打破 AI 死锁的代码。
---------------------
r1777
DistanceVisible:不允许返回负值。CheckForEndOfBattle:重新启用了检查战略层中是否存在更多敌方士兵。
---------------------
r1776
操纵库存时更新视线。改进了开始监视/侦察的代码。DistanceVisible:- 视线惩罚应适用于所有方向 - 即使士兵没有隧道视野也应用畏缩惩罚 CanSpot:改进了检查...
---------------------
r1775
当士兵听到敌人时增加观察位置:检查举起武器时的视线。CalcMorale:仅使敌对平民更具攻击性。AbortPath:对最后的安全点使用 SafeSpot 检查。
---------------------
r1774
在战斗情况下立即揭露军事间谍。
---------------------
r1773
当警报响起时,近距离观察时揭露任何间谍,除了畏缩的平民间谍。如果任何警报的敌人最近看到/听到该间谍,则不减少怀疑等级。
---------------------
r1772
ClosestReachableFriendInTrouble:在回合制中减少最大距离检查的限制。
---------------------
r1771
AICheckSpotTooFar:- 如果高百分比的士兵被击杀,则为 FALSE - 如果士兵最近听到敌人,则允许最大范围
---------------------
r1770
不允许士兵生成在最北端的位置。
---------------------
r1769
CalcManThreatValue:- 考虑 100AP/25AP 系统 - 使用 ShockLevelPercent 而不是 bShock - 在检查 CTGT 时使用立方体等级 1
---------------------
r1768
CalcBestShot:- 允许所有队伍(除了 MILITIA_TEAM)进行盲压制射击 - 改进了 LOS 检查以考虑武器举起 - 允许机枪手压制任何目标 - 如果高百分比的士兵被击杀,则允许穿墙射击 - 允许...
---------------------
r1767
禁用 LOS 缓存。
---------------------
r1766
重命名了 LOS 函数。
---------------------
r1765
增加了临时字符串大小。代码格式化。
---------------------
r1764
恢复了旧的/新的 F1..F10 选择方法。佣兵不会立即死亡选项:增加了低于 OKLIFE 时的健康伤害。增加了低于 OKLIFE 时对机器人和僵尸的健康伤害。
---------------------
r1763
DEFEAT_MODE 选项:修复了最大值为 4。PlayerStrength:改进了代码,还计算了隐蔽士兵。EnemyStrength:改进了代码。HandleMoraleEvent:修复了 MORALE_RAN_AWAY,如果士兵有隐蔽特质且处于隐蔽模式,则没有惩罚。CheckFor...
---------------------
r1762
新选项 DEFEAT_MODE:- 0:默认,任何失败的战斗都被视为失败 - 1:如果在区域中发现警报的对手 - 2:如果至少有一个撤退的佣兵不是隐蔽的 - 3:如果至少有一个佣兵在战斗中被杀 - 4:如果所有佣兵都被...
---------------------
r1761
SightCoverAtSpot:改进了敌人视线代码。代码格式化。
---------------------
r1760
在撤退/失败时也考虑 MILITIA_TEAM 的警觉状态。
---------------------
r1759
在撤退/失败时应用士气/声誉惩罚:如果 CIV_TEAM 被警报。如果 CIV_TEAM 被警报,则在失败时记录失败。仅在 ENEMY_TEAM 或 CIV_YEA... 时播放 MUSIC_TACTICAL_DEATH
---------------------
r1758
CalcChanceToHitGun, CalcNewChanceToHitGun:改进了确定目标可见性的代码。
---------------------
r1757
CalcCounterForceAccuracy, CalcChanceToHitGun, CalcNewChanceToHitGun 代码优化:在检查 LOS 之前检查 SEEN_CURRENTLY 知识。
---------------------
r1756
CalcBestShot:初始化 bAimShotLocation = AIM_SHOT_RANDOM。压制射击:如果当前 bAimShotLocation/bTargetCubeLevel 的 CTGT 较低,则尝试射击更高以避免击中掩护。
---------------------
r1755
战术面板:将“被压制”字符串更改为“被射击”。NCTH, OCTH:如果玩家佣兵瞄准可见的士兵,则不将目标计为不可见。
---------------------
r1754
CalcMorale:改进了从士气/冲击水平限制 AI 士气的代码。
---------------------
r1753
[F] 键:使用 ORANGE 字体显示第一行以更好地区分信息。代码清理,移除了未使用的代码。CalcChanceToHitGun:修复了与枪支状况相关的最大武器瞄准计算错误。CalcMorale:允许在受到... 时 MORALE_HOPELESS
---------------------
r1752
OCTH:- 将近距离、远距离基于战术范围而不是 DAY_VISION_RANGE - 重新启用了远距离减少的方向移动惩罚 - 重新启用了远距离减少的动画移动惩罚
---------------------
r1751
AICheckWeOutnumberPublic:将距离更改为 TACTICAL_RANGE。
---------------------
r1750
AdjustMaxSightRangeForEnvEffects:对于屋顶下的格子,闪电没有加成。CheckForGunJam:在第二层时允许雨水惩罚。
---------------------
r1749
CheckForGunJam:仅在头顶没有屋顶时应用雨水惩罚。
---------------------
r1748
LineOfSightTest:改进了烟雾可见性测试。
---------------------
r1747
CalcCoverValue:- 允许 STATIONARY 士兵在移动到掩护或屋顶时前进(除了移动到屋顶边缘)。- 仅在士气低于 MORALE_CONFIDENT 时允许撤退 CalcMorale:- 仅从... 限制士气类别
---------------------
r1746
GetItemAimBonus:恢复了从 0 到 minrangeforaimbonus 的平方律代码。
---------------------
r1745
GetItemAimBonus:- 如果距离 < minrangeforaimbonus,则加成为零 - 如果距离 >= 2 * minrangeforaimbonus,则加成为满 - 从 minrangeforaimbonus 到 2 * minrangeforaimbonus 线性缩放加成 OCTH:- 改进了最大武器瞄准加成计算 -...
---------------------
r1744
GetMoraleModifier:对 AI 使用 bMorale 而不是 bAIMorale。
---------------------
r1743
CalcBestThrow:- 将 MAX_TOSS_SEARCH_DIST 恢复为 1 - 如果允许复杂 AI,则将搜索范围增加到 2 - 不增加毒气手榴弹的搜索范围
---------------------
r1742
将 MAX_TOSS_SEARCH_DIST 增加到 2。CalcBestThrow:- 不检查太远的对手进行投掷 - 将考虑对对手造成伤害的最大距离更改为 max(3, ubSafetyMargin / 2)
---------------------
r1741
CalcBestThrow:修复了如果检查的位置太远则结束投掷搜索的错误。
---------------------
r1740
CheckTossGrenadeAt, CheckTossAt:避免屏幕外的格子,因为它们在被攻击时可能导致错误。
---------------------
r1739
CalcBestThrow, GetBestAoEGridNo:排除屏幕外的格子,因为它们在被攻击时可能导致错误。
---------------------
r1738
不允许炮击/迫击炮攻击击中屏幕外的位置,以防止错误的物体轨迹或游戏崩溃。
---------------------
r1737
OCTH:如果目标躲在障碍物后面蹲下/俯卧,则减少惩罚,如果射击者在屋顶上且目标在地面层。
---------------------
r1736
当 AI 无线电操作员使用无线电时显示消息。
---------------------
r1735
平民间谍:只有隐蔽的 LBE 允许在近距离查看时隐藏受限物品。
---------------------
r1734
爆炸后添加烟雾:仅在可见的世界格子上。RandomGridFromRadius:改进了代码。
---------------------
r1733
恢复了 M_PI 到 PI。
---------------------
r1732
ArtilleryStrike:为 GetArtilleryLaunchParams 提供发射器物品而不仅仅是迫击炮弹,因为它稍后会检查其射程。RandomGridFromRadius:新代码,避免选择不在可见世界格子上的位置。GetArtilleryLaunchParams:添加了...
---------------------
r1731
更新了游戏内选项的名称和工具提示。
---------------------
r1730
使用 Alt+箭头键切换到最近的方向上的佣兵。使用 Alt+D 切换到下一个未使用的佣兵。如果启用了“智能选择”选项,则显示下一个智能选择的浅灰色名称,如果按下 Alt 则显示下一个未使用的浅灰色名称。使用...
---------------------
r1729
添加了新的游戏内选项:“智能佣兵选择”,允许使用 [D] 按钮快速切换到最近的佣兵。此选项需要启用“安全 [D] 按钮”选项。如果还选择了“显示非活动佣兵”选项,则显示下一个智能选择的浅灰色名称,如果按下 Alt 则显示下一个未使用的浅灰色名称...
---------------------
r1728
FindNextSmartSelectMerc:改进了代码以允许也检查考虑的佣兵。Ctrl+Shift+D - 禁用此佣兵的中断直到本回合结束。Ctrl+D - 在回合制中结束回合。Ctrl+D - 在实时模式下启动回合制。
---------------------
r1727
OCTH:- 将基础武器瞄准加成增加到 40 - 将枪支状态/状况添加到 OCTH 工具提示
---------------------
r1726
更新了安全 [D] 选项的工具提示和描述。
---------------------
r1725
当安全 [D] 按钮选项激活时:- [D] 切换到下一个最近的尚未考虑的佣兵,如果所有佣兵都已考虑,则清除所有佣兵的标志并重新开始 - [Ctrl]+[D] 结束回合(不禁用中断...
---------------------
r1724
增加信号烟雾的最小持续时间,以防止它在炮击开始前消失。
---------------------
r1723
新的游戏内选项“安全 [D} 按钮”:在战斗中禁用 [D] 按钮。禁用中断直到回合结束的本地化字符串。改进了俄语翻译。
---------------------
r1722
GetBestAoEGridNo:改进了存储排除格子的代码。
---------------------
r1721
炮击:- 计算 2 回合前看到/听到的对手 - 在检查朋友/对手时使用完整的 RADIO_OPERATOR_MORTAR_RADIUS - 允许炮击的最低评分取决于难度等级
---------------------
r1720
OCTH 工具提示:添加了有效射击、士气加成和疲劳惩罚。
---------------------
r1719
OCTH:补偿稳定性惩罚需要高经验等级和高效敏捷。
---------------------
r1718
OCTH:- 在一行中显示动画/方向惩罚,因为游戏仅使用最大值 - 从 NORMAL_RANGE * 2 开始基础武器射程惩罚(每格 1%)- 在计算基础稳定性惩罚时使用平方律 - 修复了近战惩罚...
---------------------
r1717
如果拳击开始后任何玩家佣兵在拳击台上投掷/丢弃物品,则取消拳击手的资格。
---------------------
r1716
希望改进了 AI 代码:在执行 ActionDone 后不要尝试恢复移动。将 AI 反向移动限制为 1 格。添加了更多 AI 调试信息。
---------------------
r1715
不要从跳跃手榴弹中添加烧痕。禁用在没有屋顶的第一层爆炸时创建烟雾。为跳跃手榴弹的爆炸创建较小的烟雾。
---------------------
r1714
空爆:- 改进了代码 - 将每格爆炸的几率从距离 - 1 格开始更改为 33% - 在达到距离 + 1 格后始终爆炸
---------------------
r1713
空爆功能:- 添加了安全距离 - 手榴弹只有在飞行至少 5 格后才会爆炸(除非在此之前击中某物) - 添加了一些随机性,手榴弹在达到(目标距离 - 1)格后每格有 50% 的几率爆炸...
---------------------
r1712
在 AmmoTypes.Xml 中添加了新标志:AMMO_AIRBURST = 16,强制子弹在达到目标距离或最大武器射程时在空中爆炸。空爆弹药类型要求 explosionSize > 1,highExplosive > 1。第二层的爆炸现在可以影响第一层的格子,如果它们上方没有屋顶...
---------------------
r1711
CalcBestThrow:- 在使用火箭发射器计算 CTH 时使用正确的已知对手的楼层 - 需要更高的 CTH 和 CTGT(至少 80%)来决定用手榴弹或榴弹发射器攻击房间内的对手(或从房间内攻击),还应用...
---------------------
r1710
CalcCoverValue:- 改进了视线检查 - 优化了代码 - 降低了前进时无掩护的惩罚
---------------------
r1709
CalcCoverValue:- 不允许 STATIONARY 命令的士兵前进 - 不允许在房间内前进,除非前进到有掩护的房间格子或不在边缘的屋顶格子
---------------------
r1708
EDB:代码小改进。
---------------------
r1707
改进了 EDB 代码:在使用 OCTH 时不显示 AimLevels, PercentTargetTrackingSpeed 和 PercentDropCompensation。
---------------------
r1706
改进了 OCTH 工具提示代码。
---------------------
r1705
稍微更改了 OCTH 工具提示的顺序。
---------------------
r1704
使用 bExpLevel 而不是 EffectiveExpLevel 进行 AI 计算以稍微加快代码执行速度。
---------------------
r1703
OCTH:- 根据枪支状态修改最大武器瞄准 - 根据士兵的呼吸水平修改最大射击者瞄准 - 代码优化
---------------------
r1702
OCTH 工具提示:添加了应用武器限制前的几率。
---------------------
r1701
改进了 OCTH 工具提示。改进了最大武器瞄准的代码。
---------------------
r1700
OCTH:改进了最大武器瞄准加成的代码。
---------------------
r1699
OCTH:最大瞄准加成 = min (最大武器瞄准, 最大射击者瞄准)。
---------------------
r1698
进行物品变形时更新视线。
---------------------
r1697
改进了解除武装的代码。
---------------------
r1696
为 OCTH 工具提示添加了更多 OCTH 信息(EXT_TOOLTIP_CTH 选项)。瞄准镜使用平方律根据瞄准修改视线范围,取决于瞄准:无瞄准时无修改,4 次瞄准点击时正常修改,8 次瞄准点击时平方修改。
---------------------
r1695
界面:使用 GetAimBonus 与 GetMinRangeForAimBonus 作为距离,以获得完整的瞄准加成。GetItemAimBonus:- 在距离 > minrangeforaimbonus 时提供完整的瞄准加成 - 在距离 < minrangeforaimbonus 时使用平方律缩放瞄准加成 OCT...
---------------------
r1694
隐蔽:- 不是损坏背心,而是将此制服类型标记为已泄露,因此下次此间谍在相同制服中被看到时将被揭露 - 当间谍被揭露时,播放“通知”嘲讽 - 更新了与隐蔽相关的字符串
---------------------
r1693
仅当 AI 士兵拥有补偿技能时才应用 CTH 惩罚。
---------------------
r1692
如果间谍畏缩,则在警报响起时不要在近距离揭露平民间谍。
---------------------
r1691
如果士兵被听到进行任何类型的攻击,则标记为进行可疑动作:- 如果某人被他的攻击压制 - 如果某人受到伤害,并且攻击者最近被击中的士兵看到/听到
---------------------
r1690
CheckForEndOfBattle:战斗结束时清除敌人击杀计数器。
---------------------
r1689
隐蔽:- 如果观察士兵处于警报状态,则在视线中揭露军事间谍 - 如果观察士兵处于警报状态,则在近距离揭露平民间谍
---------------------
r1688
OCTH:改进了使用远程武器近距离射击的惩罚。
---------------------
r1687
统一了检查士兵是否应使用平民 AI 的代码。SoldierAI:排除平民。
---------------------
r1686
改进了 AI RPG 使用:- 在使用火箭发射器时检查友军火力几率 - 设置使用火箭发射器的最小命中几率为 80%,除了坦克或射击坦克时 - 更改了使用发射器/RPG 的最小命中几率,以便...
---------------------
r1685
仅在近距离查看时测试平民是否携带衣服。
---------------------
r1684
AI:- 改进了平民 AI 行为(畏缩/停止畏缩/在战斗中逃跑) - 允许在地下使用榴弹发射器,因为它使用低弹道并且可以击中高达 200m 的目标
---------------------
r1683
OCTH:在最大武器射程时 10% 的惩罚。
---------------------
r1682
OCTH:- 单手射击手枪:惩罚 5% - 单手射击冲锋枪:惩罚 10% - 双手射击:惩罚 DUAL_SHOT_CTH_PENALTY,可以通过 ambidextrous 特质减少 PENALTY_TO_SHOOT_DOUBLE_GUNS_REDUCTION 值
---------------------
r1681
CanDragInPrinciple:一只手应该是空闲的,并且主手不应携带双手武器。
---------------------
r1680
VR r2621 修复:在启用库存自动折叠的情况下结束回合时冻结(由 anv 完成)
---------------------
r1679
仅当目标士兵在转身后无法被看到时显示“压制射击”消息。CTGT():修复了恢复原始位置的错误。CheckSuppressionDirection:改进了代码。黑色 AI:允许在使用 NCTH 时更喜欢子弹而不是瞄准,增加几率...
---------------------
r1678
如果 SUPPRESSION_EFFECTIVENESS < 100,则限制压制射击。
---------------------
r1677 添加了 AI CTGT 函数:- 从士兵到士兵 - 从士兵到具有指定位置、楼层和动画状态的士兵 - 从士兵到位置 - 从士兵到具有指定位置、楼层和动画状态的位置
---------------------
r1676 在初始化掩护缓存(开始/刷新/取消 AI,开始新回合)时,还停止/清除单独的 LOS 缓存。
---------------------
r1675 当 ALT 键按下时,显示 [F1]..[F10] 与佣兵名称一起以指示快速选择此佣兵的键。使用默认选择方法时,F1..F10 选择佣兵,使用旧选择方法时,仅定位。修复了错误的拼写。警告...
---------------------
r1674 CanSeeEnemyAtSpot, CanSeeProneEnemyAtSpot:使用具有姿态参数的统一函数。SightCoverNearSpot, ProneSightCoverNearSpot:使用具有姿态参数的统一函数。SightCoverAtSpot, ProneSightCoverAtSpot, CrouchedSightCoverAtSpot:...
---------------------
r1673 CanSeeEnemyAtSpot, CanSeeProneEnemyAtSpot:改进了 LOS 检查以考虑视线加成/惩罚。SightCoverAtSpot, ProneSightCoverAtSpot, CrouchedSightCoverAtSpot:LOS 检查以考虑视线加成/惩罚。
---------------------
r1672 AddNoiseAtRandomSightCoverSpot:- 如果允许复杂 AI,则将最大搜索范围加倍 - 在路径搜索完成时重置 gubNPCAPBudget, gubNPCDistLimit
---------------------
r1671 允许复杂 AI:改进了代码,移除了不必要的 gfTurnBasedAI 检查。黑色 AI:如果士兵无法攻击或 CTH 较低,则尝试使用常规手榴弹进行特殊用途。
---------------------
r1670 FindNearestUngassedLand, FindNearbyDarkerSpot:- 优化:不检查在先前循环中已检查的位置 - 将最大距离增加到 35,如果不允许复杂 AI 则减少到 25,在实时模式下减少到 15
---------------------
r1669 为隐蔽增加怀疑:对于本回合看到/听到的,检查间谍是否可以被士兵看到(如果他转身)。
---------------------
r1668 修复了 LOS 函数中的关键错误。
---------------------
r1667 对于 AI,替换 SoldierToSoldierLineOfSightTest, SoldierTo3DLocationLineOfSightTest, SoldierToVirtualSoldierLineOfSightTest 和 LocationToLocationLineOfSightTest 为 LOS 函数。修复了错误的 AI LOS 检查。CanDragPerson:使用世界模...
---------------------
r1666 添加了新的 LOS 函数:位置到位置(使用姿态而不是 LOS_POS),士兵到士兵(带有强制武器准备选项)。ClosestReachableDisturbance:在战斗情况下检查所有对手(如果士兵受到攻击或 s...
---------------------
r1665 如果弹匣大小 > 4 或 Chance (CHANCE_SAY_ANNOYING_PHRASE),则说 TAUNT_RELOAD, TAUNT_OUT_OF_AMMO 嘲讽。
---------------------
r1664
红色、黑色 AI:- 可能在任何其他动作之前更新知识。 - 添加了更多调试信息
---------------------
r1663
TellPlayerAboutNoise 修复:使用扩展耳朵时未检查一个方向。DecayPublicOpplist:仅对有效对手应用 HEARD_3_TURNS_AGO 调整。TeamSeesGridNo:仅检查不远离 GridNo 或看向它的朋友...
---------------------
r1662
新的 AI 函数 LOS:使用指定位置/楼层/姿态检查从士兵到士兵的视线。移除了 SoldierAtGridNoToSoldierLineOfSightTest 函数。恢复了 r8112 修复:对于坦克使用默认 LOS 位置。代码小改进,警告...
---------------------
r1661
代码清理,格式化。
---------------------
r1660
红色、黑色 AI:如果另一个战术命令处于活动状态,则不要开始撤退/冲锋攻击。
---------------------
r1659
播放 USE_WIRE_CUTTERS 声音当修复铁丝网时。播放 Sounds\Misc\Fortification1.ogg .. FortificationN.ogg 声音当进行防御工事动作时。
---------------------
r1658
红色、黑色 AI:如果当前位置安全,则停止撤退。黑色 AI:仅在士气 < MORLE_CONFIDENT 时开始撤退。SpotDangerLevel:还检查水和尸体警告的危险等级 = 1。
---------------------
r1657
使用战术命令代码进行冲锋攻击和撤退。代码小改进和警告修复。
---------------------
r1656
使用 SOLDIER_DOING_FORTIFICATION 标志而不是 usMultiTurnAction 以在佣兵肖像上显示防御工事图标。重命名了 bOverTurnAPS 为 sTacticalUnused。重命名了 sMTActionGridNo 为 iTacticalUnused。重命名了 usMultiTurnAction 为 ubTacticalTur...
---------------------
r1655
将侧翼标志 SOLDIER_EXTRA_FLANKING 从 usSoldierFlagMask 移动到 flags.ubTacticalFlags 中的 TACTICAL_FLAG_EXTRA_FLANKING。
---------------------
r1654
红色 AI:如果另一个战术命令处于活动状态,则不要开始侧翼包抄。将 ubTacticalFlags 的类型更改为 UINT8。
---------------------
r1653
代码小改进。
---------------------
r1652
改进了侧翼包抄代码以使用 bTacticalOrder。
---------------------
r1651
SOLDIERTYPE:将 bRTPCombat 重命名为 bSuppressionShock。
---------------------
r1650
移除了 OLDSOLDIERTYPE_101 类。
---------------------
r1649
为战术命令类型添加了枚举。SOLDIERTYPE:格式化,添加了注释。
---------------------
r1648
侧翼包抄:代码小清理。
---------------------
r1647
移除了 SNIPER 命令。禁用了选项:AI_SNIPER_RESTRICT_TO_ELITE, AI_SNIPER_MIN_RANGE, AI_SNIPER_CHANCE, AI_SNIPER_CHANCE_WITH_SR。
---------------------
r1646
ManSeesMan:如果对手的楼层不同,则也调用 SetNewSituation。
---------------------
r1645
ManSeesMan:仅当位置不同时调用 SetNewSituation 以减少 AI 重新评估的频率。
---------------------
r1644
红色、黑色 AI;改进了在射击后保留 AP 以俯卧/隐藏的代码。仅在初始红色警报时允许无线电动画
---------------------
r1643
改进了民兵/敌人炮击的代码,增加了在低进度时使用烟雾弹的小几率。
---------------------
r1642
HandleSight:检查士兵是否可以看到隐藏的尸体并使其可见(仅适用于玩家队伍或民兵队伍,如果 WE_SEE_WHAT_MILITIA_SEES_AND_VICE_VERSA = TRUE)。技能菜单:在添加之前检查是否可以拖动尸体。添加了支持 ...
---------------------
r1641
按 ESC 关闭技能菜单。按 ESC 停止拖动。代码小改进。
---------------------
r1640
仅当 StructureMove.xml 文件存在时才加载,以允许与 1.13 原版和 mod 兼容。
---------------------
r1639
r8870 改进功能:结构可以被拖动。哪些结构由新的 xml 定义(由 Flugente 完成)
---------------------
r1638
当分配 bNextAction 时,如果未使用,则清除 usNextActionData。当切换到 bNextAction 时,清除 iNextActionSpecialData,因为我们不再需要它。
---------------------
r1637
CancelAIAction:清除下一个动作数据。TurnBasedHandleNPCAI, RTHandleAI:在做出决策之前清除下一个动作数据。
---------------------
r1636
不要显示“xml 中没有衣服物品”以允许使用新的迷彩调色板而不在 XML 中定义所有新衣服。修复了编译器警告。
---------------------
r1635
代码小清理。
---------------------
r1634
Lua:代码小改进。
---------------------
r1633
修复编译器警告。
---------------------
r1632
在尝试将物品放入枪套时检查完整物品大小(包括附件)。
---------------------
r1631
PopupAttachmentInfo 类:在构造函数中添加了缺失的初始化。DragSelection 类:在构造函数中添加了缺失的初始化。GenerateRandomEquipment:修复了酒精物品检查。修复了一些警告。
---------------------
r1630
BuildString 类:添加了缺失的赋值运算符。MERCPROFILEGEAR 类:添加了缺失的复制构造函数。WORLDITEM 类:添加了缺失的复制构造函数。CheckForGunJam:修复了最小/最大可靠性限制。修复了一些警告。
---------------------
r1629
ClosestReachableDisturbance:- 如果对最后找到的对手的知识是 HEARD_3_TURNS_AGO,则不跳过对手 - 仅当士兵最近没有看到对手且最近的可达干扰不可达或噪音更近时检查噪音位置...
---------------------
r1628
CalcBestShot:- 仅当不允许复杂 AI 或士兵是狙击手/射手且不在近战时检查最大瞄准 - 狙击手/射手更喜欢最大 CTH 而不是最佳命中率 - 俯卧士兵更喜欢最大 CTH 而不是最佳命中率...
---------------------
r1627
允许在任何可以放置填充沙袋的地形上用铲子建造沙袋。改进了用铲子建造防御工事的代码。
---------------------
r1626
允许在库存中有完整沙袋时用铲子创建防御工事。当用铲子创建防御工事时,首先使用库存中的完整沙袋,然后使用空沙袋。
---------------------
r1625
用铲子建造防御工事需要库存中的空沙袋,在此过程中使用。移除防御工事时在地面上创建填充沙袋。EXTRA_ITEMS 选项:为一些敌方士兵添加铲子和空沙袋。
---------------------
r1624
禁用了移除防御工事时检索沙袋物品。
---------------------
r1623
红色、黑色 AI:如果冲锋攻击处于活动状态,则允许驻守士兵使用剪线钳。
---------------------
r1622
不为防御工事动作播放 USE_WIRE_CUTTERS 声音。完成防御工事动作时播放 PICKING_SOMETHING_UP 声音。修复了进入某些区域的问题。
---------------------
r1621
进行防御工事动作时不播放 COOL 台词。
---------------------
r1620
允许在动作点直接靠近士兵时进行对角线方向的防御工事动作。
---------------------
r1619
改进了防御工事代码,修复了各种与防御工事相关的错误。士兵可以使用铲子在没有沙袋的情况下建造防御工事,仅在草地/泥土表面上。
---------------------
r1618
如果拖动某人,则揭露间谍。
---------------------
r1617
修复围栏:- 使用 AP_USEWIRECUTTERS 作为 AP 成本 - 正确计算士兵需要转身开始修复围栏时的 AP - 当士兵俯卧时禁用修复光标
---------------------
r1616
禁用了多回合动作,所有防御工事动作都是即时的并使用剪线钳代码。防御工事动作消耗 AP_USEWIRECUTTERS。修复了士兵需要先转身时的剪线钳和防御工事光标的 AP 计算。显示 ...
---------------------
r1615
ClosestReachableDisturbance:修复了使用存储的最近可达对手的错误。改进了修复结构的代码。改进了存储原始结构的代码,以便可以交换的结构(使用瓷砖数据库而不是检查...
---------------------
r1614
使用工具包修复铁丝网而不是剪线钳。使用工具包修复铁丝网需要 5-15 状态点。
---------------------
r1613
士兵结构:使用 InitializeExtraData() 初始化所有未保存的额外数据。ClosestReachableDisturbance:在实时模式下,如果启用了慢速 PC 选项,则仅检查最近的对手。
---------------------
r1612
ClosestReachableDisturbance, ClosestReachableFriendInTrouble:改进了代码,如果成功通过所有检查,则在第一次循环中存储找到的朋友/对手。
---------------------
r1611
ClosestReachableDisturbance, ClosestReachableFriendInTrouble:始终首先检查存储的朋友/对手,然后检查其他士兵。
---------------------
r1610
ClosestReachableDisturbance, ClosestReachableFriendInTrouble:改进了 AI 优化代码。
---------------------
r1609
AI 速度优化:在实时模式下或不允许复杂 AI 时降低搜索物品的最大搜索范围
---------------------
r1608
AI 速度优化:- 记住最后可达的对手(1-5 回合),忽略其他对手,除了最近已知的,如果不允许复杂 AI - 当不允许复杂 AI 时,如果距离比最近可达的对手更远,则忽略对手 - 记住...
---------------------
r1607
允许在 1 秒后按 ESC 键中断 AI。
---------------------
r1606
怀疑计数器:如果对手之前看到此间谍被揭露,则加成。
---------------------
r1605
改进了 gbSeenOpponents 代码,使用特殊值表示被揭露的对手。
---------------------
r1604
改进了对 gbSeenOpponents[] 的检查
---------------------
r1603
改进了意外命中的代码:减少远距离命中敌人的几率。
---------------------
r1602
NCTH:仅在射击可见目标时限制最大偏差。
---------------------
r1601
DamageSoldierFromBlast:- 改进了对各种类型爆炸物的检查 - 重型武器技能在使用火箭发射器时仅对坦克提供 DAMAGE_TO_TANKS_PERCENT_BONUS - 重型武器技能在使用火箭发射器时提供 HW_DAMAGE_PERCENT_BONUS...
---------------------
r1600
红色、黑色 AI:允许坦克进行更长的自动射击以更好地压制。
---------------------
r1599
修复了车辆/坦克的 SOLDIER_TAKEN_LARGE_HIT, SOLDIER_TAKEN_HIT 标志。
---------------------
r1598
EXTRA_ITEMS 选项修复:为精英/常规士兵提供剪线钳的几率。
---------------------
r1597
启用了 REPAIR_WIRE_FENCES 选项。
---------------------
r1596
新选项 REPAIR_WIRE_FENCES(默认关闭)允许使用剪线钳修复被剪断的围栏。
---------------------
r1595
红色 AI:- 改进了侧翼包抄时剪断围栏的代码 - 在寻找缩短路径的位置时添加了 NewOKDestination 检查
---------------------
r1594
EXTRA_ITEMS 选项:增加了士兵携带剪线钳的几率。红色、黑色 AI:- 如果士兵无法找到下一个侧翼点,则可以尝试剪断围栏 - 如果剪断围栏可以缩短路径,则士兵可以使用剪线钳剪断围栏...
---------------------
r1593
红色 AI:- 如果队伍正在攻击且区域内有无线电激活的炸弹且 RADIO_OPERATOR_JAMMING_BLOCKSRADIOBOMBS = TRUE,则无线电操作员可能决定干扰频率 - 如果 RADIO_OPERATOR...
---------------------
r1592
增加了拳击手在有血和弹珠的格子上的惩罚。新的 AI 动作:AI_ACTION_HANDLE_ITEM。
---------------------
r1591
医疗 AI:添加了将受伤的朋友拖到安全地点的代码。
---------------------
r1590
新的 AI 动作:AI_ACTION_CANCEL_DRAG。IsActionAffordable:添加了对缺失 AI 动作的支持。AI:- 在决定任何事情之前停止拖动 - 对 AI_ACTION_DRINK_CANTEEN 和 AI_ACTION_USE_DRUG 使用 IsActionAffordable() 检查
---------------------
r1589
BecomeSpotter:仅对玩家队伍显示消息。红色、黑色 AI:医疗兵可以使用烟雾弹掩护自己和受伤的朋友,然后开始治疗。为医疗/急救 AI 添加了更多调试信息。
---------------------
r1588
重新启用了在玩家中断期间使用无线电呼叫炮击或增援。如果玩家在中断期间命令炮击,则添加 1 等待回合。
---------------------
r1587
敌人角色图标:使用颜色代码指示无线电操作员状态 - 红色表示干扰,蓝色表示监听,紫色表示扫描。
---------------------
r1586
AI_ACTION_USE_SKILLL 改进了代码,检查 usActionData 是否定义,默认 ubID = NOBODY 新的 AI 函数:TeamHasJammingRadioOperator, TeamCanOrderArtilleryStrike。CalcBestThrow:队伍需要具有活动扫描的无线电操作员以确定...
---------------------
r1585
红色 AI 射击代码:优化大型战斗。
---------------------
r1584
红色 AI:允许每回合和每次士兵移动到新格子时至少射击一次。
---------------------
r1583
修复了 FindNearbyDarkerSpot() 中的关键错误
---------------------
r1582
在安全情况下重新装填:- 几率 25% - 检查安全点
---------------------
r1581
红色 AI:在和平情况下尝试重新装填枪支,如果弹匣少于 1/2。
---------------------
r1580
红色 AI:- 移除了第二个 CheckIfShotPossible() 调用 - 仅在武器具有自动射击能力且可以更换弹匣时在压制射击前使用重新装填
---------------------
r1579
AI:- 修复了 CanNPCAttack 检查 - 当尝试后退以部署迫击炮时,检查我们是否可以到达该位置并有足够的 AP - 在尝试后退以部署迫击炮时使用反向移动
---------------------
r1578
改进了 r8658:检查武器弹匣大小和使用枪支时说台词的几率。
---------------------
r1577
重新启用了 r8658:如果枪支的弹匣大小 < 5,则仅在 CHANCE_SAY_ANNOYING_PHRASE 的几率下显示“弹药耗尽”声音文件。这应该使使用小弹匣的枪支不那么烦人。(由 Flugente 完成)
---------------------
r1576
AI 炮击(适用于民兵队伍和敌人队伍):- 尝试找到第一个迫击炮弹物品而不是使用硬编码 id = 140 - 在低进度级别,使用催泪弹以使炮击不那么致命 - 在高进度级别...
---------------------
r1575
红色 AI:- 在危险情况下较少在压制射击前重新装填,还检查 AP_MINIMUM 以允许在压制射击检查前重新装填 - 仅对狙击手和压制射击使用 CanNPCAttack() 检查
---------------------
r1574
GetBestAoEGridNo:- 检查有效对手 - 使用通用知识和位置函数 - 允许 SEEN_THIS_TURN 和 HEARD_THIS_TURN 知识
---------------------
r1573
CanUseSkill:在中断期间不能使用炮击和增援技能。IsJamming, IsScanning:不要关闭无线电,因为这些函数可以被 AI 使用。新的 AI 函数:TeamHasListeningRadioOperator() TeamHasScanningRadioOperator 使用...
---------------------
r1572
为敌方士兵增加了携带信号烟雾弹的小几率。AI 士兵可以使用红色烟雾弹进行攻击,如果有炮击活动或吓唬对手。AI 不会在地下使用红色烟雾弹,也不会投掷...
---------------------
r1571
改进了第一次区域描述的代码(将消息代码移至 HandleTacticalEndTurn)。
---------------------
r1570
改进了第一次区域描述:仅在有选定的活动佣兵时显示。
---------------------
r1569
SectorNames.xml 中的新标签:, , , - 在第一次进入区域时显示区域描述消息,1..3 用于地下...
---------------------
r1568
HandleGotoNewGridNo:使用标准手榴弹(烟雾弹、催泪弹、芥子气弹、燃烧瓶)来确定士兵移动通过格子时的伤害。如果未找到手榴弹,则首先搜索所需类型的手榴弹...
---------------------
r1567
ADD_SMOKE_AFTER_EXPLOSION 选项:如果 SMOKE_GRENADE 是不正确的物品,则使用第一个找到的烟雾手榴弹。
---------------------
r1566
改进了 AI 搜索各种类型手榴弹的代码。
---------------------
r1565
拳击手:PUNCH_APS_REDUCTION 减少使用 物品时的攻击 AP。如果使用拳击武器,则不允许忍者踢动画。
---------------------
r1564
DetermineMovementMode:改进了反向模式检查(不改变姿态,使用 WALKING 而不是 RUNNING)。
---------------------
r1563
AI:在决定使用反向移动模式时,检查当前位置或移动位置是否可以被敌人看到或攻击,或者士兵是否受到攻击或附近有新鲜尸体。
---------------------
r1562
SoldierGotHitExplosion:将飞退动画的爆炸威力要求降低到 40
---------------------
r1561
重新启用了屋顶坍塌动画。
---------------------
r1560
FindAmmoToReload:添加了断言消息以指示搜索附加武器失败。DecideAction:初始化 bWeaponMode = WM_NORMAL 以防止 FindAmmoToReload 崩溃。AI 反向移动:检查反向移动是否可能...
---------------------
r1559
实验性功能:当向后或侧向移动 1-2 格时使用备用移动模式。DetermineMovementMode:在使用反向移动模式时将 RUNNING 替换为 WALKING。红色 AI:- 撤退时使用备用移动模式 - 备用移动模式...
---------------------
r1558
改进了屋顶边缘的压制计算:允许从不在屋顶的格子检查到平坦屋顶的格子。
---------------------
r1557
改进了屋顶边缘的压制计算。
---------------------
r1556
当目标在屋顶边缘时使用完全压制。OCTH:仅在未瞄准头部且未超出武器射程射击时允许最小 CTH 1%。
---------------------
r1555
压制:恢复了 1/3 的霰弹枪几率。
---------------------
r1554
压制:- 移除了 1/3 的霰弹枪几率 - 改进了霰弹枪伤害减少的计算 - 移除了 pMapElement->ubAdjacentSoldierCnt > 0 检查,因为 ubAdjacentSoldierCnt 似乎无法正常工作 - 改进了 n...
---------------------
r1553
CalcBestShot:改进了命中率计算,考虑了可能的选项 INCREASE_AIMING_COSTS, FIRST_AIM_READY_COST_DIVISOR。OCTH:使用狙击步枪的狙击手将 SHOT_HEAD_PENALTY 减半,使用狙击步枪、步枪或突击步枪的射手...
---------------------
r1552
CalcBestThrow:- 改进了 AI 代码以避免用手榴弹击中朋友 - 正确设置迫击炮攻击的 usGrenade CheckTossGrenadeSpecial:修复了错误的碎片范围计算。
---------------------
r1551
为 DDraw 调用添加了空指针检查,消除了一个 FIXME。(由 Asdow 完成)
---------------------
r1550
ProcessStatChange:从属性增量降低技能进度几率不能使其低于 1。
---------------------
r1549
VR r2559 修复:与攀爬相关的 AI 死锁(由 anv 完成)
---------------------
r1548
r8881:更改了 CTH 指示器的 STI 文件加载方式,以防止游戏在每次调用函数时不断从磁盘加载和卸载图形文件。现在只在游戏生命周期内加载一次...
---------------------
r1547
女性获得坏蛋战斗声音集 6-8。
---------------------
r1546
为女性身体类型使用更多战斗声音。
---------------------
r1545
r8863(由 Fugente 完成):- 修复:任务在人员页面中不一致显示 - 修复:奇怪的功能
---------------------
r1544
r8868 修复(由 silversurfer 完成):- 当 USE_XML_SQUADNAMES 为 TRUE 时,小队框向上移动覆盖了列标题,导致裁剪问题 - 当 READ_PROFILE_DATA_FROM_XML 为 TRUE 时,游戏仍会从配置文件中读取数据...
---------------------
r1543
r8871 修复:动画循环直到给出新命令(由 Flugente 完成)
---------------------
r1542
r2479 修复:NPC 前往格子的脚本正确中断畏缩(由 anv 完成)CalcBestSHot:仅尝试压制活着且清醒的人类目标。DecideActionRed:更早禁用隐身和反向移动模式。
---------------------
r1541
r8875 修复:重新启用了从地图屏幕进入战术屏幕的条件检查。有人移除了它,这使得可以在没有佣兵的情况下进入战术屏幕。(由 silversurfer 完成)
---------------------
r1540
CalcBestShot:修复了姿态改变检查的错误。
---------------------
r1539
改进了友军火力 AI 代码。
---------------------
r1538
r8869 修复:空指针访问(由 Flugente 完成)
---------------------
r1537
r8841 修复:当未能将防毒面具应用于另一个士兵时,消息仍显示成功(由 Flugente 完成)r8839 如果没有房间,则不检查爆炸损坏房间是否激怒平民(由 Flugente 完成)r8835 修复...
---------------------
r1536
r8843(由 Flugente 完成)- 修复:保险网站上显示错误的面孔 - 更改:可疑死亡时没有保险赔付(在佣兵死亡期间没有敌人存在,或佣兵死于友军火力)
---------------------
r1535
r8846 修复:为全球宣传设施配备的佣兵导致矿山收入降至 0%(由 Flugente 完成)
---------------------
r1534
r8855 修复:拖动士兵经常被取消(由 Flugente 完成)CalcMorale:改进了代码。
---------------------
r1533
r8816 修复:在 UB 中直升机着陆后崩溃(由 Asdow 完成)修复:UB 中不必要的城镇初始化(由 Asdow 完成)
---------------------
r1532
NCTH:调整基于距离的第一次射击瞄准惩罚。OCTH:调整增加基于距离的第一次射击惩罚。
---------------------
r1531
修复:编译器警告
---------------------
r1530
r8813:代码小清理(由 sun_alf 完成)
---------------------
r1529
r8812:代码小清理。关键枪支故障:如果 bVisible == -1,则显示爆炸动画
---------------------
r1528
大地图锁破坏修复:移除了不正确的类型转换(由 Franimus 完成)。如果光标在目标上,则不显示非活动佣兵的名称(以防止在使用 ALT+滚动设置连发长度时显示名称)。
---------------------
r1527
启用多重选择时,不为非活动佣兵显示扩展状态。
---------------------
r1526
降低了意外命中的几率。当按下 ALT 或启用新的游戏内选项 TOPTION_ALWAYS_SHOW_INACTIVE 时,使用深灰色显示非活动佣兵的名称。显示非活动佣兵的扩展状态:狙击手、观察员、拖动、被拖动、...
---------------------
r1525
AmmoTypes.xml 中的新标签 允许定义自定义射击动画。r8115 修复:ExplosionData.xml 中的 ExplosionSoundID 或 AltExplosionSoundID 的负值会导致游戏崩溃,即使负值是预期的(由 Flu...
---------------------
r1524
敌人健康颜色:使用相同颜色显示肾上腺素和冲锋攻击。
---------------------
r1523
火蔓延:- 不在屋顶上蔓延火 - 如果在屋顶下的建筑物中,则忽略雨
---------------------
r1522
复杂 AO:- 仅适用于 ENEMY_TEAM - 将最大战斗人员减少到 40 - 仅在回合制模式下
---------------------
r1521
增加了武器状态不佳(但未过热)时关键卡壳的小几率。
---------------------
r1520
枪射击的烟雾效果:- 需要弹药标志 8 - 仅适用于佣兵身体类型 - 仅适用于枪支
---------------------
r1519
增加了武器在高度过热时卡壳时关键故障的小几率。
---------------------
r1518
AI:- 狙击手/射手可以使用智慧药物提高 CTH - 狙击手/射手在受到攻击且无法看到敌人时可以使用视觉药物
---------------------
r1517
AI 士兵有时会使用可用的药物。喝酒时播放声音(Sounds\Misc\Alcohol1.ogg, Alcohol2.ogg, ...)EXTRA_ITEMS:增加敌人携带各种药物的几率。
---------------------
r1516
使用健康文本颜色显示敌方士兵的醉酒状态。
---------------------
r1515
AI:如果呼吸不足,则从水壶中喝水。ApplyCanteen:仅对玩家佣兵显示无 AP 消息。EXTRA_ITEMS:随机为 AI 添加水壶。
---------------------
r1514
AI:改进了撤退代码。
---------------------
r1513
压制:- 降低了俯卧时反应的 AP - 仅在达到畏缩冲击水平时畏缩 - 俯卧时反应扣除 AP - 如果俯卧且反应,则解除武器准备
---------------------
r1512
冲锋攻击开始:添加肾上腺素效果。
---------------------
r1511
将 MAXATTACHMENTS 增加到 60000 以使 Aimnas 工作。代码小改进和警告修复。项目更新。
---------------------
r1510
GenerateProsString, GenerateConsString:不使用过热来描述枪支。GetHelpTextForItem:使用 GetGunAccuracy。DrawItemUIBarEx:使用 GetGunOverheatDisplayPercentage 绘制枪支温度。GetGunAccuracy:- 开始降低准确...
---------------------
r1509
路径 AI 调整。
---------------------
r1508
仅当区域中不超过 64 名战斗人员时,才允许复杂 AI 计算。为俯卧/畏缩的人增加小几率意外命中。AICheckWeOutnumberPublic:更改为朋友 >= 敌人 + 5。AICheckWeOutnumber:额外...
---------------------
r1507
HourlyLarryUpdate:- 为每个士兵初始化 usTemptation - 包括 AMBIENT 在内的所有设施类型都可能触发成瘾
---------------------
r1506
改进了在改变姿态时更新瞄准镜模式的代码。CalcBestShot:如果未使用双手或禁用备用武器持有,则允许在站立姿态下射击重型武器。GetBPCostPer10APsForGunHolding:还检查双手和站立姿态...
---------------------
r1505
VR r2370:修复了每小时酒精/药物更新 - 药物物品被消耗而没有应用药物效果,阻止了 Larry 配置文件交换和背景相关的醉酒(由 anv 完成)
---------------------
r1504
改进了意外命中的代码。
---------------------
r1503
NCTH:根据武器后坐力修改有效压制范围。HearNoise:如果对手被公开看到,则不随机化噪音位置。CalcBestShot:将还击代码限制在本回合,仅考虑先前的攻击者。
---------------------
r1502
在实时模式下改变姿态时从备用武器持有切换。NCTH:在备用武器持有模式下射击时限制有效压制距离。
---------------------
r1501
NCTH:- 限制最大显示光标光圈 - 限制最大子弹偏差,取决于武器射程 - 限制地面射击
---------------------
r1500
结构损坏:改进了代码。
---------------------
r1499
DamageStructure:修复了可能的除以零错误。
---------------------
r1498
改进了从曳光弹在草地上创建火的代码。
---------------------
r1497
枪支可以损坏结构:- 主要是轻型结构(木材、轻金属)可以被损坏 - 使用 AP 弹药时几率更高 - 使用高威力弹药时几率更高 - 使用曳光弹时,有小几率在草地上创建火...
---------------------
r1496
旅行时间改进:- 负面背景适用于步行旅行 - 对于步行旅行,使用最低值 - 对于车辆/空中旅行,使用最高值 - 在直升机中飞行时,游侠没有加成
---------------------
r1495
当曳光弹击中地面时,如果该格子上有草,则有几率创建火。火蔓延代码:- 检查 Molotov(物品 979)是否为火爆炸物。 - 移除了光创建,因为它现在在 SpreadEf...
---------------------
r1494
UIHandleNewBadMerc:- 随机创建管理员、常规或精英 - 在界面级别创建士兵 滑倒在血上:改进了代码。VaporizeCorpse:仅在 fExplode = true 时扩散血。RemoveBlood:正确移除指定层级的血。Up...
---------------------
r1493
CalcBestThrow:- 如果未找到非烟雾弹,则使用烟雾发射物 - 将安全边际限制为 DAY_VISION_RANGE / 2
---------------------
r1492
添加了 r7783, r7788(由 silversurfer 完成)。
---------------------
r1491
恢复了招募新部队时的 AI 决策延迟,较高级别时 AI 等待较少。
---------------------
r1490
审问囚犯:当启用无限增援时,不改变增援池。EvaluateQueenSituation:- 当池大小低于 QUEEN_POOL_INCREMENT_PER_DIFFICULTY_LEVEL 时允许招募,这应该导致更稳定的...
---------------------
r1489
VR r2348 修复 - 加载 .jpc.7z 时,如果文件未被视为打开,则会导致异常(由 anv 完成)显示所有士兵的工具提示。在调试模式下允许血猫、虫子、坦克和机器人的工具提示。
---------------------
r1488
滑倒在血上的几率减半。
---------------------
r1487
改变库存时更新士兵士气。
---------------------
r1486
NWSS:- AmmoStrings.xml 中的新标签: - Weapons.xml 中的新标签:, ,
---------------------
r1485
快速变形的热键:Shift+O - 变形瞄准镜 Shift+L - 变形手电筒 Shifr+Y - 变形激光
---------------------
r1484
仅在拳击活动且拳击手处于红色/黑色状态时允许机会攻击。
---------------------
r1483
黑色 AI:改进了使用副武器的代码。CalcBestShot:始终检查是否可以射击被另一个士兵看到的目标。
---------------------
r1481
不允许 ubVolatility = 0 的地面物品发生连锁反应。降低了地面物品的连锁反应加成几率。
---------------------
r1480
[F] 键应正确显示不同类型攻击的 CTH:- 枪支 - 发射器 - 手榴弹 - 投掷刀 - 拳击 - 投掷物品
---------------------
r1479
刺击/偷窃/拳击攻击:如果防御者失明或在转身后无法看到攻击者,则减少防御者评级(仅适用于人类身体类型)。
---------------------
r1478
缩放战术环境和区域稳定环境与一般效果音量。代码小改进。
---------------------
r1477
首先衰减光效果,然后衰减烟雾效果,因为火可以创建光。为火和信号烟雾动态创建光效果。修复/改进了衰减光效果的代码,以便 ubDuration 正常工作。注意:<ubRadi...
---------------------
r1476
CivGroupNames.xml 中的新标签:CustomSide,允许使用 Side 标签为平民群体设置自定义阵营。
---------------------
r1475
红色 AI:当士兵正在包扎时,转向最近的已知威胁,如果未蹲下则蹲下并等待。
---------------------
r1474
不要在大肖像上显示图标。
---------------------
r1473
在水中没有畏缩效果。
---------------------
r1472
将所有标准中断检查合并到一个函数 CanInterrupt() 中。在每回合结束时重置 SOLDIER_TAKEN_LARGE_HIT 标志。如果坦克受到攻击,生命值 < 最大生命值 - 20 且未看到敌人,则使用烟雾弹掩护...
---------------------
r1471
当射击游泳的士兵时,允许瞄准头部和躯干。僵尸 AI:- CalcMorale() - 将默认瞄准位置设置为 AIM_SHOT_RANDOM
---------------------
r1470
更多僵尸复活声音。更多水花声音。
---------------------
r1469
物品移动任务的本地化消息。ClosestReachableDisturbance:- 僵尸不攻击车辆 - 改进了代码以优先选择未死亡的敌人
---------------------
r1468
TurnSoldierIntoCorpse:修复了 MILITIA_TEAM 掉落的物品的损坏。GetCorpseAtGridNo:检查 sBaseGridNo 是否超出边界。ClosestReachableDisturbanceClosestKnownOpponent, ClosestKnownOpponentID:拳击手不应忽略垂死的对手...
---------------------
r1467
改进了拖动某物时的噪音音量加成。改进了拖动声音:支持任意数量的声音。
---------------------
r1466
修复了翻译错误。
---------------------
r1465
改进了拖动声音。修复了信号烟雾的手榴弹销声音。
---------------------
r1464
佣兵可以拖动尸体和人(由 Flugente 完成)。拖动某物时播放声音。拖动时士兵总是发出移动噪音。如果士兵拖动某物,则移动噪音更大。禁用了在选择士兵时显示特质距离...
---------------------
r1463
r8482 修复:拳击对隐蔽行为的例外仅适用于两个拳击手之间(由 Flugente 完成)AI 代码小改进。
---------------------
r1462
CheckNPCDestination:改进了代码。FindBestPath:允许 SEEKENEMY 移动到深水中。UIPlotPath:禁用了忽略目的地人员的代码,以修复移动到不可见对手时的无限时钟。ClosestReachableDisturbance:当 i...
---------------------
r1461
改进了 CheckNPCDestination 检查 - 比较危险等级。
---------------------
r1460
添加了 CheckNPCDestination 函数,用于常见检查:- 毒气 - 深水 - 夜间光亮 - 北点 - 附近的门 - 附近的爆炸结构 - 附近的炸弹 - 红色烟雾危险
---------------------
r1459
HandleFlashLights:仅在士兵未死亡时使用 HandleSight。
---------------------
r1458
RandomFriendWithin:更多目标点检查,改进了代码。RandDestWithinRange:更多目标点检查,改进了代码。
---------------------
r1457
LegalNPCDestination:仅在绿色模式下避免靠近门的位置。改进了 AI 位置搜索例程,添加了 LegalNPCDestination 检查。FindFlankingSpot:移除了地图边缘检查。
---------------------
r1456
增加了爆炸损坏可燃物体(草、布、家具)时创建火的随机几率。随机化了火蔓延的几率。在屋顶上蔓延火时不添加光效果。
---------------------
r1455
修复了俄语翻译。增加了水花声音的音量。
---------------------
r1454
只有普通、震撼和闪光爆炸物会在水中创建爆炸。增加将物品投掷到水中时的最大力量(因为没有反弹)。物品击中水时播放声音。
---------------------
r1453
从调试版本中移除了 DEBUG_ATTACKBUSY 定义。添加了 TOPIC_GAME 到注册主题。StructureHit:检查水位。OBJECT_DETONATE_ON_IMPACT():仅对爆炸物检查 fExplodeOnImpact。
---------------------
r1452
InternalDoMercBattleSound:如果文件不存在,则不尝试播放声音。
---------------------
r1451
修复了 r1204 中引入的 LOS 错误。
---------------------
r1450
禁用了缺失选项 TAUNT_VOICE 和 TAUNT_VOICE_SHOW_INFO 的警告。改进了爆炸后烟雾和光效果的创建。创建信号烟雾时添加光效果。
---------------------
r1449
FindTossSpotInDirection:还检查一格更远以投掷烟雾弹。改进了俄语翻译。
---------------------
r1448
新选项 TAUNT_VOICE(默认关闭):如果为 true,则播放声音文件而不是显示文本。新选项 TAUNT_VOICE_SHOW_INFO(默认关闭):如果为 true,则在播放语音嘲讽时显示调试信息。TAUNT_INFORM_ABOUT:检查对手...
---------------------
r1447
将水壶喝水恢复呼吸的效果加倍。
---------------------
r1446
SSA:修复了热带区域的环境。
---------------------
r1445
游戏设置中的新选项:“慢速 PC”禁用复杂 AI 计算以加快敌人回合。AnyCoverAtSpot:修复了掩护缓存代码。GetItemVisionRangeBonus, GetItemPercentTunnelVision, GetItemHearingRangeBonus:改进了代码。
---------------------
r1444
更新了切换人工佣兵光的工具提示。
---------------------
r1443
如果士兵本回合被压制,则禁用中断。如果士兵无法中断,则惩罚监视决策。如果目标太远,则惩罚搜索/帮助:- 仅在城镇或地下时 - 仅当已知对手数量少于 10 - 2 *...
---------------------
r1442
修复执行 AI_ACTION_STOP_COWERING 时士兵的死锁。
---------------------
r1441
AI:改进了 AI_ACTION_STOP_COWERING。
---------------------
r1440
StandardInterruptConditionsMet:如果未畏缩,则允许中断 CalcInterruptDuelPts:如果士兵本回合被压制,则惩罚,如果士兵受到重击,则惩罚 CalcMorale:- 也使平民更具攻击性 - 如果没有...
---------------------
r1439
给 AI 拳击手拳套时,使其不可丢弃。
---------------------
r1438
改进了电击枪代码:- 考虑电击枪状态 - 随机化呼吸伤害 50-150% - 头部攻击 +50% 呼吸损失,腿部攻击 -50% 呼吸损失 - 应用健美者抵抗电击枪攻击
---------------------

原文:

r1594

Enemy can use wirecutters to cut path to closest enemy, also flanking soldiers can use wirecutters to cut fence if they cannot find next flanking spot.
EXTRA_ITEMS option adds small chance for enemy soldiers to have wirecutters, depending on soldier class and game difficulty.
Only attacking soldiers will use wirecutters, garrison soldiers will prefer to not destroy fortifications.

Limitations: currently soldier can cut fences only around him, he will not intentionally move to fence to cut it.

r1597

New option REPAIR_WIRE_FENCES (FALSE by default) allows repairing cut fences using wire cutters.
Works by assigning bPartnerDelta to cut fence structure information.

r1621

Building sandbags is possible with only shovel (only for dirt/grass surface).
Fortification is instant action now, uses AP_USEWIRECUTTERS cost.
Show hammer icon on merc portrait while doing fortification action.
Swapped red/gray fortification cursors to make them consistent with other action cursors.
Allow fortification actions in diagonal direction when action spot is directly near soldier.
Don't play COOL quote when doing fortification actions.
Fixed various fortification related bugs (AP costs, moving to build, cursor type etc).

r1714

Added new flag to AmmoTypes.xml: AMMO_AIRBURST = 16, which forces bullet to explode in the air once it reaches range to target or max weapon range.
Airburst ammotype requires explosionSize > 1, highExplosive > 1.
Explosion on the second level now can affect tiles on the first level, if there is no roof above them.
Implemented safety distance - grenade will only explode after traveling at least 5 tiles from shooter (unless it hits something before).
There is some randomization to distance - 33% chance for grenade to explode at each tile once it reaches (distance to target - 1) tiles.
Note: explosion fragments work incorrectly with airburst (actually, with any explosive ammo), so don't use them.

r1726

New option "Safe [D] button" in the ingame options allows to stop accidental endturns and also provides new functionality.

Now the player can cycle through mercs in a new way - when you press [D], the game will switch to next closest merc who still has APs, and mark current merc to not select him next time, after all mercs have been selected this way, the process starts again by clearing "selected" flag for all mercs and selecting closest merc. Unlike the [Space] button, all mercs in the sector can be selected this way, not just active squad.

This is how it looks in the game:

r1748
No rain sight penalty under roof.
Improved smoke/gas sight penalty.
Limited visibility in smoke to 1 tile.

r1846
AI soldiers can try to blow up known opponent from above or below using their TNT.

Experimental feature from Vengeance:Reloaded mod which I plan to also implement in +AI.

Vision bonus works only for selected area when spotting or focus skill is active.
Focus feature allows not only using vision bonus to scout area, but also provides bonus to interrupt in the focus area.
Both spotting and focus limit normal vision to 5 tiles around soldier.
AI uses standard watched locations where it can have vision bonus and interrupt bonus automatically.

r1921

You can now give "Move to" order to militia, to place them tactically before battle.
By default, soldier will be switched to FARPATROL/DEFENSIVE mode.
If you don't want militia to move from new spot, give it "Hold" order after arriving, it will switch soldier to STATIONARY.
Some limitations:
- works only in realtime
- if move spot is on different level, soldier will climb but not move further
- you can only order movement to roof if it was correctly defined in editor, some flat roofs cannot be used by AI as they don't have correct room number

r1935

New ingame option "Smart Tree Tops" allows to hide only trees that can block view for visible soldiers or cursor position.

r1438~r1942 log(E文不好懒翻译,有兴趣可以细看,不看就游戏中感受)

r1942
Improved militia command code.
---------------------
r1941
Smart tree top hiding: more optimization.
---------------------
r1940
Smart tree top hiding: code optimization.
---------------------
r1939
Set final destination for militia when giving "Move to" order to move between level, so it will move to desired spot after climbing. Switch militia to STATIONARY order when giving "Move to" order, so it will not walk away later.
---------------------
r1938
Only spawn legal random items (check food, dirt, sci-fi, tons of guns mode and inventory type). Minor code improvements.
---------------------
r1937
Added 0.1s delay to hide tree top when moving cursor to prevent flickering when moving mouse over trees.
---------------------
r1936
Improved Smart tree top feature.
---------------------
r1935
New ingame options: Smart tree tops.
---------------------
r1934
Fix: UI attack handling prioritised interactive structures over target soldiers even if target soldier was explicitly provided causing deadlocks e.g. when trying to punch enemy overlapped by a door (by anv)
---------------------
r1933
More bullets when shooting with autofire if - soldier is using machinegun and has cover - soldier is under psycho effect - rush attack prepare is active - soldier has spare magazine and has cover
---------------------
r1932
Red AI: more bullets for suppression fire when using LMG or if soldier has spare magazine (OCTH only). Increased chance for suppression fire for SEEKENEMY soldier.
---------------------
r1931
ReInitMergedItem: show item id, attachment id when doing assert.
---------------------
r1930
Fix: guiBaseJA2Clock overflow (by MH17).
---------------------
r1929
CalcMorale: don't limit morale if we outnumber. AnyCoverAtSpot: allow adjacent cover for opponents except closest opponent. AIEstimateCTH: added visibility penalty for spots out of sight.
---------------------
r1928
When changing stance from UI, first stop cowering. Stop cowering when merc starts to move. Increase delay to stop AI when in fast forward mode.
---------------------
r1927
Experimental tweak: don't switch movement to WALKING after water.
---------------------
r1926
Improved communication checks between soldiers: both have extended ear and sector is not jammed or they can see each other and not too far away. Don't stop cowering animation for player merc if he is unconscious. GetSquadleadersCountInVicin...
---------------------
r1925
CalcChanceHTH: only use reduced chance for boxers.
---------------------
r1924
NO_STANDING_ANIM_ADJUSTMENT_IN_COMBAT: only for player. AIDoctorFriend, AIDoctorSelf: first change soldier to stationary. AIDoctorFriend: change target to stationary.
---------------------
r1923
FindSunGogglesInInv: count item is sun goggles if it has day or bright vision bonus > 0. StartRadioAnimation: no animation if in water, invisible or incorrect bodytype. CalcChanceHTH: restored base chance for melee attacks to 67.
---------------------
r1922
Improved code to check if militia options are available. Start radio animation when giving orders to militia. Show locator when "Move to" order is successful, say curse quote if cannot find path. FindClosestClimbPointAvailableToAI: don't ch...
---------------------
r1921
New militia order: Move to (works in realtime only). Cancel current AI order when giving militia order. Don't allow selecting shaded options.
---------------------
r1920
GetItemSlots: use MAXITEMS + 1 as AttachmentSlots limit. Improved path AI code.
---------------------
r1919
CheckDangerousDirection: don't check sight.
---------------------
r1918
Use UINT16 for Item[] loops. PickARandomLaunchable: use 1 + progress / 10 to allow coolness 10 items.
---------------------
r1917
CountCorpses: use soldier's level to check corpse level.
---------------------
r1916
OCTH: reworked code to avoid lucky hits, increased MIN_AIMING_SCREWUP 22 -> 30. AI: don't use reverse movement mode when in water.
---------------------
r1915
EstimateThrowDamage: take into account <buddyitem> tag for single shot rocket launchers.
---------------------
r1914
Added DecideActionUtils file.
---------------------
r1913
Check corpses in a room when deciding to blow up wall or jump window. ClosestReachableDisturbance: decide to move to closest spot where we can blow up wall if opponent is in a room. CountCorpses: - return number of corpses instead of TRUE/...
---------------------
r1912
SightCoverAtSpot, AnyCoverAtSpot: don't check diagonal directions to improve performance.
---------------------
r1911
ClosestReachableDisturbance: speed optimization when searching for jump window - limit search distance.
---------------------
r1910
Path AI: disabled sight/cover checks to improve performance.
---------------------
r1909
AI medic: improved code for militia medics. CalcCoverValue: increase bonus to position which will make enemy turn to shoot. Don't reduce range factor for positions without cover is soldier has SEEKENEMY order. When calculating bonus/penalty...
---------------------
r1908
LBE tooltips: improved code. GetHearingBonus: when using listening skilll, need several turns to reach max hearing bonus. Create AI soldier: give TNT if demolitions trait assigned and EXTRA_ITEMS option enabled. ClosestReachableDisturbance:...
---------------------
r1907
Improved code for LBE tooltip. DecayRottingCorpseAIWarnings: keep min 1 value underground. Always allow suppression for not SEEKENEMY soldier if he can see opponent after turning.
---------------------
r1906
DecayRottingCorpseAIWarnings: improved code to check room and level.
---------------------
r1905
DecayRottingCorpseAIWarnings: keep min value 1 when in combat (only for rooms).
---------------------
r1904
Re-enabled improved LBE tooltips. Red AI suppression fire: less chance for SEEKENEMY.
---------------------
r1903
Disabled extended BR LBE tooltips. UpdateAttachmentTooltips: separated launchables loop. Speed optimization: gMAXATTACHMENTS_READ, gMAXLAUNCHABLES_READ.
---------------------
r1902
Speed optimization: implement gMAXITEMS_READ, gMAXAMMOTYPES_READ. InternalInitItemDescriptionBox: added code to reset incorrect ammo type. UpdateAttachmentTooltips: first check items in a separate loop, improved vector search code. GetItemS...
---------------------
r1901
Bobby Ray: show some additional stats for LBE (MOLLE space available/consumed, MOLLE slots, combat pack/backpack combos) (by rftr). Fixed some warnings.
---------------------
r1900
Stop Speck from spamming your email when multiple new mercs are available on the same day (by rftr).
---------------------
r1899
BeginSoldierJumpWindowAI: for AI, first inflict damage from jumping into closed window, then start jump. IsGivingAid: also check START_AID, START_AID_PRN to allow AI soldier to stop medic animation that just started. AI_ACTION_JUMP_WINDOW: ...
---------------------
r1898
ClosestReachableFriendInTrouble: disabled medic code. Improved medic AI for more consistency, check that healing spot is safe.
---------------------
r1897
AI: don't end turn after starting first aid in turnbased to make healing faster.
---------------------
r1896
Allow to start dragging if only second hand is busy. Reverse movement: limit to 1 tile for seek/cover.
---------------------
r1895
AI searching for items to pick up: - allow to pick up from the same spot even in dangerous situation - use correct item id if weapon is not in hand - take into account trait skills when deciding to pick up weapon - changed code to compare d...
---------------------
r1894
Assigning skill traits to AI: for SMG/Assault rifle, check that gun is autofire/burst capable.
---------------------
r1893
AI skill traits assignment tweaks: - use IC_PUNCH instead of 128 for melee weapons - assign MARTIAL_ARTS_NT for militia only if soldier has brass knuckles - chance to assign demolitions trait if soldier has TNT - assign throwing trait if so...
---------------------
r1892
Removed quick item panel feature. Tactical panel: minor code improvements.
---------------------
r1891
New AI function: CheckClosedWindow. ClosestReachableDisturbance: - improved TNT check - don't change bLevel if found TNT spot
---------------------
r1890
Added CheckWindow function - check window in direction.
---------------------
r1889
EXTRA_ITEMS: - changed default TNT item to C1 - search for explosive item if C1 is not correct explosive, require ubDamage > 40
---------------------
r1888
InitializeMultiplayerProfile: use std::unique instead of std::auto_ptr. Path AI: disabled path flanking to improve performance.
---------------------
r1887
UIHandleNewMerc: - check if can place new merc at mouse location - set arriving spot for merc
---------------------
r1886
New functions: RoomNo, SameRoom. BeginSoldierClimbWindow: deduct APs for jumping when teleporting soldier. Deduct APs when teleporting soldiers to/from roof. AI_ACTION_JUMP_WINDOW: - in turnbased, add random facing change after jump, if sol...
---------------------
r1885
Re-enabled light sprite when throwing flares, but no muzzle flash so no interrupt. Play grenade_breaklight.ogg / grenade_breaklight_delay.ogg for all flare grenades (disabled grenade_flare.ogg / grenade_flare_delay.ogg).
---------------------
r1884
Removed randomness from window jump decision. Removed unused defines: TRAVELCOST_JUMPABLEWINDOW, TRAVELCOST_JUMPABLEWINDOW_N, TRAVELCOST_JUMPABLEWINDOW_W.
---------------------
r1883
Zombie AI: allow jumping through window in Red, Black state if it allows to improve path cost to closest opponent (only if ZOMBIE_CAN_JUMP_WINDOWS = TRUE).
---------------------
r1882
Path AI: moved smart flanking higher in conditions. GetAPsToJumpThroughWindows: code cleanup. New function: BeginSoldierJumpWindowAI, similar to BeginSoldierClimbWindow but for AI. AI_ACTION_JUMP_WINDOW: set next action to AI_ACTION_END_TUR...
---------------------
r1881
CalcMorale: - reworked health/breath modifiers - penalty if friends flanking and soldier is in sage spot - combined attack hit/target collapsed/target suppressed in one check - bonus if weapon is out of range
---------------------
r1880
Only allow path flanking if complex AI allowed.
---------------------
r1879
FindAdvanceSpot: avoid moving into light at night if spot has no standing sight cover.
---------------------
r1878
Added code for AI path flanking (avoid approaching to enemy from direction with corpses).
---------------------
r1877
Renamed WKAEUP_FROM_SLEEP to WAKEUP_FROM_SLEEP. EVENT_SoldierBeginFirstAid: stop dragging. CancelDrag: initialize new animation to fix incorrect position.
---------------------
r1876
Radio Listening skill: - simplified code - don't turn off listening when soldier spends AP (to make it more useful for AI) - need to spend 1 turn listening to start showing noise locators - listening stops when soldier is suppressed (reacte...
---------------------
r1875
CancelDrag: change dragged soldier to stationary. OCTH: disabled additional effective sight based penalty for obstacles.
---------------------
r1874
AI: - limit some special actions to ENEMY_TEAM (use TNT, use wire cutters, smoke to cover position, blow up fences with grenade) - make AI want to use listen skill when in rain - allow black cover advance code for militia and civilians
---------------------
r1873
OCTH: increase minimum miss to prevent lucky shots with low CTH at distance.
---------------------
r1872
Main Red AI: allow taking cover in realtime at the start of the turn if soldier recently saw/heard enemy, with 30% chance. GetSightAdjustmentStealthAtLightLevel: linear scale from darkness level.
---------------------
r1871
GetSightAdjustmentCamouflageOnTerrain: scale camo with light level. LightTrueLevel: re-enabled full effect of shadows on light level at night.
---------------------
r1870
Long jump: - change to stationary stance before jumping (fixes problems with jumping from moving animation) - switch to standing animation before jumping if soldier is prone (allows to correctly jump from prone stance)
---------------------
r1869
New option NIGHT_SHADOWS (FALSE by default). NightBonusScale: full night vision bonus in darkness. OCTH: disabled aim time bonus for max CTH. LightTrueLevel: shadows have no effect on light level at night.
---------------------
r1868
Added basic requirements to start snitching (alive, conscious, not in transit etc).
---------------------
r1867
Fixed AI role icon display.
---------------------
r1866
Path AI: sniper should avoid spots without cover.
---------------------
r1865
EstimatePathCostToLocation: safety checks.
---------------------
r1864
Medic AI: prefer safe path with cover from opponents. CheckForChangingOrders: switch BRAVESOLO< BRAVEAID, AGGRESSIVE medic to CUNNINGAID. CalcMorale: limit AI morale for AI medics if there are friends nearby and no successful attack.
---------------------
r1863
WillExplosiveWeaponFail: play dry fire sound to indicate weapon fail. CheckForChangingOrders: switch medic to defensive attitude. AICheckSpecialRole: add medic to special AI role.
---------------------
r1862
DecideMedic: - limit self healing to the start of the turn - fixed bug with changing facing
---------------------
r1861
Reworked medic AI code. CanMedicAI: check merc bodytype. WillExplosiveWeaponFail checks: if explosive type is not normal, use mini grenade explosion. GetClosestWoundedSoldierID: skip friend in turnbased if he is not bleeding and not dying
---------------------
r1860
New icon for AI GL operator. Disabled flanking when underground, simplified start flanking code.
---------------------
r1859
New enemy AI role icon: GL launcher. New enemy additional icons: has key, has TNT.
---------------------
r1858
Main Red AI: - moved decision weight calculation to PrepareMainRedAIWeights - don't search for cover in realtime
---------------------
r1857
End muzzle flash and show message if it hasn't been ended correctly, when: - soldier spends AP - soldier moves at new tile - soldier begins new turn
---------------------
r1856
Reduce default MAX_MOVEMENT_PENALTY to 40. Set default DIRECTIONAL_PENALTY = FALSE. Disable default INSANE vision bonus. Disable muzzle flash when throwing items. Disable muzzle flash when throwing flare/molotov as it doesn't get removed co...
---------------------
r1855
Allow AI to mark INVISIBLE bomb as seen if it has LOS to it. Inventory choosing: reduce chance for AI to have TNT, make it dependent on difficulty level.
---------------------
r1854
CountKnownEnemies: allow to check level. AI_ACTION_PLANT_BOMB: reduced delay to 1-2 turns. Use TNT to blow up enemies nearby: reduced chance to plant bomb. Use TNT to blow up walls and fences: - only at the beginning of the turn - always a...
---------------------
r1853
AI_ACTION_PLANT_BOMB: set dropped bomb to INVISIBLE.
---------------------
r1852
Player mercs should avoid moving into gas/fire when in autobandage mode or under AI control.
---------------------
r1851
Reworked spot danger checks to use SpotDangerLevel. Removed CheckNPCDestination. SearchForItems: allow same spot for picking up items, regardless of danger level. Code cleanup and optimization.
---------------------
r1850
AI_ACTION_PLANT_BOMB: - randomize delay 1-3 turns - set trap difficulty as 6 + SoldierDifficulty
---------------------
r1849
IsLocationSittable: return FALSE if location on roof is not sittable.
---------------------
r1848
IsLocationSittableExcludingPeople: return FALSE if location on roof is not sittable. ClosestReachableDisturbance: when checking spot to plant bomb, check if location is sittable.
---------------------
r1847
CheckForEndOfBattle: disable AddPossiblePendingEnemiesToBattle() to prevent bug with enemy appearing in sector after the battle end.
---------------------
r1846
New AI function: CountKnownEnemies() CheckForChangingOrders: - switch special role from BRAVESOLO/BRAVEAID/AGGRESSIVE(except machinegunner) to CUNNINGSOLO/CUNNINGAID - set Commander/MortarOperator/RadioOperator to DEFENSIVE - switch SEEKENE...
---------------------
r1845
CheckForChangingOrders: - switch special AI role to defensive - switch SEEKENEMY/DEFENSIVE to CUNNINGSOLO to make attacking AI more aggressive
---------------------
r1844
Allow higher chance when spreading fire: use sqrt(1 + ubGeneration).
---------------------
r1843
OCTH: - limit max long range penalty to AIM_BONUS_SAME_TARGET - penalty for shooting beyond visual range, up to SHOOT_UNSEEN_PENALTY at double visual range - no penalty for assisted shot - when calculating max aiming bonus, use average from...
---------------------
r1842
AI: don't try to blow up cliffs.
---------------------
r1841
Red AI: allow chance to really hit = 1 when deciding suppression fire.
---------------------
r1840
AbortPath, AbortFinalSpot: added smoke check to light at night check, minor code improvements.
---------------------
r1839
AbortPath, AbortFinalSpot: simplified light at night check.
---------------------
r1838
Restored first aid code.
---------------------
r1837
Red, Black AI: more restrictive rush attack, less chance when high percent killed.
---------------------
r1836
Red, Black AI: allow soldiers to blow up walls/fences/obstacles when flanking or to improve path cost. AI_ACTION_PLANT_BOMB: added DROP_ITEM/CUTTING_FENCE and THROW_IMPACT_2 sound. CountCorpses: simplified code, always check visible. Decide...
---------------------
r1835
AI: improved code to cut wire fence. Inventory choosing: added chance to create TNT.
---------------------
r1834
New AI action: AI_ACTION_PLANT_BOMB.
---------------------
r1833
Main Red AI: fixed weight calculation.
---------------------
r1832
HandleItem: use current spot and direction for self healing to prevent endless clock.
---------------------
r1831
CalcBestShot: - improved shoot through walls check - disabled return fire code
---------------------
r1830
CalcCoverValue: - allow advance to zombie/bloodcat/melee opponent if beyond gun range - when checking for retreat, always check if new spot is in gun range - apply aggression booster only when iRangeFactor > 0
---------------------
r1829
Increased max distance for reverse movement mode to 2. Simplified reverse movement mode code. Reworked code to determine reverse movement mode.
---------------------
r1828
More first aid kits for AI, depending on difficulty and game progress.
---------------------
r1827
NWSS: play room effect for first shot only.
---------------------
r1824
AI inventory choosing: more variety for mortar shells, improved hand/GL grenade choosing code. Added AICheckWeOutnumberSector AI function. AICheckWeOutnumberPublic: always require 2x number.
---------------------
r1823
DetermineMovementMode: allow CRAWLING near fences when taking cover.
---------------------
r1822
Tweaked AI path penalties.
---------------------
r1821
Covert operations: when alert raised and team recently saw/heard any enemy, immediately uncover any spy, except cowering civilian spy.
---------------------
r1820
Simplified CorpseWarning code: always return highest number of nearby corpse AI warning.
---------------------
r1819
Simplified AI corpse warning code.
---------------------
r1818
CalcBestShot: penalize standing/crouched stance for heavy weapons. AI: reduced weapon holding BP cost for raising weapon to 30, allow to raise weapon when crouched or prone.
---------------------
r1817
Tweaked the GL grenade number bonus for AI equipment.
---------------------
r1816
More ammo for mortars and grenade launchers when choosing AI inventory.
---------------------
r1815
SightCoverAtSpot bug fix: when checking adjacent reachable tiles for unlimited sight, use new spot.
---------------------
r1814
AI: - improved mortar use code: use next action to fire mortar after stepping back - use AICheckSpecialRole
---------------------
r1813
Improved any cover check.
---------------------
r1812
Experimental AI tweak: take into account movement penalty for enemy when deciding best cover, only if soldier is under attack or used weapon this turn.
---------------------
r1811
SightCoverAtSpot: improved code to check structure density.
---------------------
r1810
Improved code for AI path tweaks. SightCoverAtSpot, AnyCoverAtSpot: simplified code. AbortPath: initialize sDangerousSpot, sLastSafeSpot. AbortFinalSpot: initialize sDangerousSpot.
---------------------
r1809
AI: - improved code for using flashlight to reveal enemy position - improved code for using smoke to cover movement
---------------------
r1808
Added FindFenceAroundSpot() function. StopTacticalOrderL initialize ubTacticalTurns with 0. Improved code for using smoke for cover when flanking.
---------------------
r1807
Non-neutral civs should also discover active bombs.
---------------------
r1806
Improved code to check bomb nearby. Using grenade for special purpose: not during interrupt, check SoldierAI.
---------------------
r1805
AI: - only zombies, creatures, bloodcats, unarmed soldiers and neutral soldiers ignore empty vehicles - ignore empty vehicle if there is reachable regular opponent - prefer regular opponent over empty vehicle when deciding shoot or throw - ...
---------------------
r1804
HandleSight: also set bomb visibility.
---------------------
r1803
NCTH: when calculating movement offset, apply min aperture depending on distance.
---------------------
r1802
Don't check valid spot when starting to spot/watch. Increased chance for soldier to have wire cutters. SumDistanceToKnownEnemiesInRoom: fixed code. CheckTossGrenadeSpecial: - fixed code to find number of adjacent tiles of destructible obsta...
---------------------
r1801
Improved code for watching/spotting.
---------------------
r1800
VR r2698 fix: snitch assignments were not properly taking mercs out of vehicles
---------------------
r1799
Improved muzzle flash code for grenades. CommonEnterCombatModeCode: fixed DebugAI code.
---------------------
r1798
Increased AP cost to use radio set.
---------------------
r1797
RedSmokeDanger: set min terrain density to consider spot safe to 75.
---------------------
r1796
Improved r8460 fix: also check for incorrect ammo item. Red AI: fixed cautious move spot check.
---------------------
r1795
Red AI: Improved cautious move check.
---------------------
r1794
Set min 1 tile for distance when applying sight adjustment if original sight distance > 0.
---------------------
r1793
GetSightAdjustment: use max from camo/stealth penalty. AICheckSpecialRole: added GL role.
---------------------
r1792
Enable muzzle flash for flare/molotov.
---------------------
r1791
Experimental fix: stop muzzle flash in InternalReduceAttackBusyCount at the end of the attack instead of UIHandleLAEndLockOurTurn. Don't show muzzle flash when unjamming weapon. UseHandToHand: no bonus to strength when using taser. OCTH: pe...
---------------------
r1790
Main Red AI: improved code for watching modifiers.
---------------------
r1789
InLightAtNight: - simplified code - always check light in a room
---------------------
r1788
Reduce light for destroyed tank after 60 minutes. Check destroyed tanks more often. Correctly show muzzle flash when shooting. OCTH: weapon penalty starts from max(NORMAL_RANGE, max_weapon_range / 3).
---------------------
r1787
Reduce light radius for destroyed tank after DELAY_UNTIL_ROTTING.
---------------------
r1786
Added light for destroyed tanks. Changed message color for drop/pick up backpack to yellow.
---------------------
r1785
CalcBestShot: fixed bug with checking LMG when suppressing. Main Red AI: helping does not prevent seeking. FindFlankingSpot: - set search range to TACTICAL_RANGE / 4 - don't limit AP search budget - changed edge check to NorthSpot
---------------------
r1784
HandleArmedObjectImpact: fixed bug. Artillery strike code uses INT32 for gridno.
---------------------
r1783
Reduce bonus from laser in day light. WatchedLocLocationIsEmpty: - improved code to check if new gridno is out of bounds - use knowledge functions - don't ignore collapsed/cowering OCTH: - start weapon penalty from NORMAL_RANGE - minor co...
---------------------
r1782
Always make tank/vehicle corpses visible. Use wire cutters to cut fence: fixed bug. allow buddy explosion for flares (use for sound and animation).
---------------------
r1781
Use non-linear law when determining stat improvement speed.
---------------------
r1780
Improved code to slow down stat improving speed with high stat value/high delta. AI_ACTION_RED_ALERT: taunt only when raising alert for the first time. HandleInitialRedAlert: improved code to set alerted status for QUEEN and JOE.
---------------------
r1779
Fixed breaking AI deadlock code.
---------------------
r1778
Max darkness in shadows halves night vision bonus instead of completely removing it. NCTH, OCTH: improved code to determine target visibility. Improved code to break AI deadlock when ESC key pressed.
---------------------
r1777
DistanceVisible: don't allow returning negative value. CheckForEndOfBattle: re-enabled check to see if more enemy soldiers exist in the strategic layer. OCTH: no aiming if sight is blocked completely.
---------------------
r1776
Update sight when manipulating inventory. Improved code to start watching/spotting. DistanceVisible: - vision penalty should apply to all directions - apply cowering penalty even if soldier has no tunnel vision CanSpot: improved code to ch...
---------------------
r1775
Increment watched location when soldier hears enemy: check sight with raised weapon. CalcMorale: make only hostile civilians more aggressive. AbortPath: use SafeSpot check for last safe spot.
---------------------
r1774
Uncover military spy on sight in combat situation.
---------------------
r1773
When alert is raised, uncover any spy on close look, except cowering civilian spy. Don't reduce suspicion level if any alerted enemy recently saw/heard this spy.
---------------------
r1772
ClosestReachableFriendInTrouble: less restricting max distance check in turnbased.
---------------------
r1771
AICheckSpotTooFar: - FALSE if high percent of soldiers was killed - allow max range if soldier heard enemy recently
---------------------
r1770
Don't allow soldiers to spawn at top north spots.
---------------------
r1769
CalcManThreatValue: - take into account 100AP/25AP system - use ShockLevelPercent instead of bShock - use cube level 1 when checking CTGT
---------------------
r1768
CalcBestShot: - allow blind suppression fire for all teams except MILITIA_TEAM - improved LOS checks to take into account weapon raising - allow machinegunner to suppress any target - allow shooting through walls if high percent killed - al...
---------------------
r1767
Disable LOS caching.
---------------------
r1766
Renamed LOS functions.
---------------------
r1765
Increased temp string sizes. Code formatting.
---------------------
r1764
Reverted old/new F1..F10 selection method. Mercs don't die instantly option: increased damage to health below OKLIFE. Increased damage to health below OKLIFE for robots and zombies.
---------------------
r1763
DEFEAT_MODE option: fixed max value 4. PlayerStrength: improved code, also count covert soldiers. EnemyStrength: improved code. HandleMoraleEvent: fixed MORALE_RAN_AWAY, no penalty if soldier has covert trait and is in covert mode. CheckFor...
---------------------
r1762
New option DEFEAT_MODE: - 0: default, any lost battle is considered defeat - 1: if found alerted opponent in sector - 2: if at least one of retreating mercs is not covert - 3: if at least one merc was killed in battle - 4: if all mercs were...
---------------------
r1761
SightCoverAtSpot: improved enemy sight code. Code formatting.
---------------------
r1760
Also take into account MILITIA_TEAM aware status when retreating/losing battle.
---------------------
r1759
Apply morale/reputation penalty when retreating from sector/losing battle: also if CIV_TEAM was alerted. Also log defeat when losing battle if CIV_TEAM was alerted. Only play MUSIC_TACTICAL_DEATH when battle is lost if ENEMY_TEAM or CIV_YEA...
---------------------
r1758
CalcChanceToHitGun, CalcNewChanceToHitGun: improved code to determine target visibility.
---------------------
r1757
CalcCounterForceAccuracy, CalcChanceToHitGun, CalcNewChanceToHitGun code optimization: check SEEN_CURRENTLY knowledge before checking LOS.
---------------------
r1756
CalcBestShot: initialize bAimShotLocation = AIM_SHOT_RANDOM. Suppression fire: if low CTGT at current bAimShotLocation/bTargetCubeLevel, try to shoot higher to avoid hitting cover.
---------------------
r1755
Tactical panel: changed "suppressed" string to "under fire". NCTH, OCTH: don't count target as unseen if player merc is aiming at visible soldier.
---------------------
r1754
CalcMorale: improved code to limit AI morale from morale/shock level.
---------------------
r1753
[F] key: show first line with ORANGE font to better distinguish information. Code cleanup, removed unused code. CalcChanceToHitGun: fixed gun condition related bug in max weapon aim calculation. CalcMorale: allow MORALE_HOPELESS when under ...
---------------------
r1752
OCTH: - changed close range, long range to be based on TACTICAL range instead of DAY_VISION_RANGE - re-enabled long range reduction for directional movement penalty - re-enabled long range reduction for animation movement penalty
---------------------
r1751
AICheckWeOutnumberPublic: changed distance to TACTICAL_RANGE.
---------------------
r1750
AdjustMaxSightRangeForEnvEffects: no bonus from lightning for tiles under roof. CheckForGunJam: allow rain penalty when on the second level.
---------------------
r1749
CheckForGunJam: apply rain penalty only if there is no roof above.
---------------------
r1748
LineOfSightTest: improved smoke visibility test.
---------------------
r1747
CalcCoverValue: - allow STATIONARY soldiers advance when moving into cover or on the roof (except moving to the edge of the roof). - only allow retreat if morale is worse than MORALE_CONFIDENT CalcMorale: - only limit morale category from ...
---------------------
r1746
GetItemAimBonus: reverted code to square law from 0 to full at minrangeforaimbonus.
---------------------
r1745
GetItemAimBonus: - zero bonus if range < minrangeforaimbonus - full bonus if range >= 2 * minrangeforaimbonus - linearly scale bonus from minrangeforaimbonus to 2 * minrangeforaimbonus OCTH: - improved max weapon aiming bonus calculation -...
---------------------
r1744
GetMoraleModifier: use bMorale for AI instead of bAIMorale.
---------------------
r1743
CalcBestThrow: - reverted MAX_TOSS_SEARCH_DIST to 1 - increase search range to 2 if complex AI is allowed - don't increase search range for gas grenades
---------------------
r1742
Increased MAX_TOSS_SEARCH_DIST to 2. CalcBestThrow: - don't even check opponents too far for a throw - changed max distance to consider damage to opponent to max(3, ubSafetyMargin / 2)
---------------------
r1741
CalcBestThrow: fixed bug ending throw search if one if the checked spots was too far for throw.
---------------------
r1740
CheckTossGrenadeAt, CheckTossAt: avoid offscreen tiles as they may cause bugs when attacked.
---------------------
r1739
CalcBestThrow, GetBestAoEGridNo: exclude offscreen tiles as they may cause bugs when attacked.
---------------------
r1738
Don't allow artillery/mortar attacks to hit offscreen spots, to prevent bug with incorrect object trajectory or game crash.
---------------------
r1737
OCTH: reduce penalty for target hiding crouched/prone behind obstacle, if shooter is on roof and target is on floor level.
---------------------
r1736
Show message when AI radio operator uses radio.
---------------------
r1735
Civilian spy: only covert LBE allows to hide restricted items on close look.
---------------------
r1734
Add smoke after explosion: only on visible world tile. RandomGridFromRadius: improved code.
---------------------
r1733
Reverted M_PI to PI.
---------------------
r1732
ArtilleryStrike: supply GetArtilleryLaunchParams with launcher item and not just mortar shell, as it will check it's range later. RandomGridFromRadius: new code, avoid selecting spot not on visible world tile. GetArtilleryLaunchParams: adde...
---------------------
r1731
Updated names and tooltips for ingame options.
---------------------
r1730
Use Alt+Arrow to switch to closest merc in direction. Use Alt+D to switch to next unused merc. If "Smart selection" option is enabled, show next smart selected with light gray name, show next unused with light gray name if Alt is pressed. U...
---------------------
r1729
Added new ingame option: "Smart merc selection", which allows to use [D] button to quickly switch to closest merc. This option requires "Safe [D] button" option to be active. If "Show inactive mercs" option is also selected, the name of the...
---------------------
r1728
FindNextSmartSelectMerc: improved code to allow also checking considered mercs. Ctrl+Shift+D - disable interrupts for this merc until the end of this turn. Ctrl+D - end turn in turnbased. Ctrl+D - start turnbased when in realtime mode.
---------------------
r1727
OCTH: - increased base weapon aiming bonus to 40 - added gun status/condition to OCTH tooltip
---------------------
r1726
Updated tooltip and description for Safe [D] option.
---------------------
r1725
When safe [D] button option activated: - [D] switches to next closest merc who haven't been considered yet, if all mercs have been considered, it clears flag for all mercs and starts again - [Ctrl]+[D] ends turn (without disabling interrupt...
---------------------
r1724
Increase min duration for signal smoke to prevent it from disappearing before the artillery strike starts.
---------------------
r1723
New ingame option "Safe [D} button": disabled [D] button in combat. Localized strings for disabling interrupts until the end of turn. Improved Russian translation.
---------------------
r1722
GetBestAoEGridNo: improved code to store excluded tiles.
---------------------
r1721
Artillery strike: - count opponents seen/heard 2 turns ago - use full RADIO_OPERATOR_MORTAR_RADIUS when checking for friends/opponents - min rating to allow artillery strike depends on difficulty level
---------------------
r1720
OCTH tooltip: added effective marksmanship, morale bonus and fatigue penalty.
---------------------
r1719
OCTH: compensating stability penalty requires high experience level and high effective dexterity.
---------------------
r1718
OCTH: - show animation/directional penalty in one line as the game uses only max value - start base weapon range penalty (1% per tile) from NORMAL_RANGE * 2 - use square low when calculating base stability penalty - fixed close range penalt...
---------------------
r1717
Disqualify boxer if any player merc throws/drops something on the ring after the boxing started.
---------------------
r1716
Hopefully improved AI code: don't try to resume movement after ActionDone was executed. Limited AI reverse movement to 1 tile. Added more AI debug information.
---------------------
r1715
Don't add burn marks from jump grenades. Disable smoke creation for explosions on level = 1 without roof. Make smaller smoke from explosion for jumping grenades.
---------------------
r1714
Airburst: - improved code - changed chance to explode at each tile starting from distance - 1 tiles to 33% - always explode after reaching distance + 1 tiles
---------------------
r1713
Airburst feature: - added safety distance - grenade will only explode after traveling at least 5 tiles from shooter (unless it hits something before) - added some randomization to distance, there's a 50% chance for grenade to explode at eac...
---------------------
r1712
Added new flag to AmmoTypes.Xml: AMMO_AIRBURST = 16, which forces bullet to explode in the air once reached range to target or max weapon range. Airburst ammotype requires explosionSize > 1, highExplosive > 1. Explosion on the second level ...
---------------------
r1711
CalcBestThrow: - use correct known opponent's level when calculating CTH with rocket launcher - need higher CTH and CTGT (at least 80%) to decide to attack opponent in a room (or from a room) with hand grenade or grenade launcher, also appl...
---------------------
r1710
CalcCoverValue: - improved sight check - optimized code - lowered penalty from no cover when advancing
---------------------
r1709
CalcCoverValue: - don't allow advancing for soldiers with STATIONARY order - don't allow advancing when in a room except when advancing to room tile with cover or to a roof tile not on the edge
---------------------
r1708
EDB: minor code improvements.
---------------------
r1707
Improved EDB code: do not show AimLevels, PercentTargetTrackingSpeed and PercentDropCompensation when using OCTH.
---------------------
r1706
Improved OCTH tooltip code.
---------------------
r1705
Slightly changed OCTH tooltip order.
---------------------
r1704
Use bExpLevel instead of EffectiveExpLevel for AI calculations to speed up code execution a bit.
---------------------
r1703
OCTH: - modify max weapon aim by gun's status - modify max shooter aim by soldier's breath level - code optimization
---------------------
r1702
OCTH tooltip: added chance before applying weapon limit.
---------------------
r1701
Improved OCTH tooltip. Improved code for max weapon aim.
---------------------
r1700
OCTH: improved code for max weapon aim bonus.
---------------------
r1699
OCTH: max aim bonus = min (max weapon aim, max shooter aim).
---------------------
r1698
Update sight when doing item transformation.
---------------------
r1697
Improved disarming code.
---------------------
r1696
Added more OCTH info to OCTH tooltip (EXT_TOOLTIP_CTH option). Scope uses square law to modify sight range, depending on aim: no modification with no aim, normal modification with 4 aim clicks, square modification with 8 aim clicks.
---------------------
r1695
Interface: check GetAimBonus with GetMinRangeForAimBonus as distance, to get full aim bonus. GetItemAimBonus: - provide full aim bonus at distance > minrangeforaimbonus - scale aim bonus with square low at distance < minrangeforaimbonus OCT...
---------------------
r1694
Covert: - instead of damaging vest, mark this uniform type as compromised, so next time this spy will be seen in the same uniform he will be uncovered - when spy is uncovered, play "inform about" taunt - updated covert related strings
---------------------
r1693
Only apply CTH penalty to AI soldier if he can have skills to compensate.
---------------------
r1692
Do not uncover civilian spy at close distance when alert is raised if spy is cowering.
---------------------
r1691
Mark soldier as doing suspicious action, if: - he is heard making any type of attack - if someone is suppressed by his attack - if someone is taking damage, and attacker was recently seen/heard by soldier being hit
---------------------
r1690
CheckForEndOfBattle: clear enemy kill counter when battle is finished.
---------------------
r1689
Covert: - uncover military spy on sight if observing soldier is alerted - uncover civilian spy at close range if observing soldier is alerted
---------------------
r1688
OCTH: improved penalty for shooting at close range with long range weapons.
---------------------
r1687
Unified code to check if soldier should use civilian AI. SoldierAI: exclude civilians.
---------------------
r1686
Improved AI RPG use: - check for friendly fire chance when using rocket launcher - set min chance to hit 80% when deciding to use rocket launcher, except tanks or when shooting at tank - changed min chance to hit to use launcher/RPG so that...
---------------------
r1685
Test if civilian carries clothes only on close look.
---------------------
r1684
AI: - improved civilian AI behavior (cower/stop cower/run away in battle) - allow using grenade launcher underground as it uses low trajectory and can hit targets up to 200m
---------------------
r1683
OCTH: 10% penalty at max weapon range.
---------------------
r1682
OCTH: - shooting pistol one handed: penalty 5% - shooting SMG one handed: penalty 10% - shooting dual handed: penalty DUAL_SHOT_CTH_PENALTY which can be reduced with ambidextrous trait by PENALTY_TO_SHOOT_DOUBLE_GUNS_REDUCTION value
---------------------
r1681
CanDragInPrinciple: one of the hands should be free and should not carry two handed weapon in main hand.
---------------------
r1680
VR r2621 fix: freeze when ending turn with the squad list open and inventory auto-collapse enabled (by anv)
---------------------
r1679
Only show "suppression fire" message if target soldier cannot be seen after turning. CTGT(): fix bug with restoring original spot. CheckSuppressionDirection: improved code. Black AI: allow prefer bullets over aim when using NCTH, add chance...
---------------------
r1678
Limit suppression fire if SUPPRESSION_EFFECTIVENESS < 100.
---------------------
r1677
Added AI CTGT functions: - from soldier to soldier - from soldier to soldier with specified location, level and animation state - from soldier to location - from soldier to location with specified location, level and animation state
---------------------
r1676
When initializing cover cache (start/refresh/cancel AI, begin new turn), also stop/clear individual LOS cache.
---------------------
r1675
When ALT key is pressed, show [F1]..[F10] together with merc's name to indicate the key to quick select this merc. With default selection method, F1..F10 selects merc, with old selection method, just locates. Fixed incorrect spelling. Warni...
---------------------
r1674
CanSeeEnemyAtSpot, CanSeeProneEnemyAtSpot: use unified function with stance argument. SightCoverNearSpot, ProneSightCoverNearSpot: use unified function with stance argument. SightCoverAtSpot, ProneSightCoverAtSpot, CrouchedSightCoverAtSpot:...
---------------------
r1673
CanSeeEnemyAtSpot, CanSeeProneEnemyAtSpot: improved LOS check to take into account sight bonuses/penalties. SightCoverAtSpot, ProneSightCoverAtSpot, CrouchedSightCoverAtSpot: LOS check to take into account sight bonuses/penalties.
---------------------
r1672
AddNoiseAtRandomSightCoverSpot: - doubled max search range if complex AI allowed - reset gubNPCAPBudget, gubNPCDistLimit when path searching is finished
---------------------
r1671
Allow complex AI: improved code, removed unnecessary gfTurnBasedAI check. Black AI: try to use regular grenade for special purpose if soldier cannot attack or has low CTH.
---------------------
r1670
FindNearestUngassedLand, FindNearbyDarkerSpot: - optimization: don't check spots already checked in previous loop - increase max distance to 35, reduce to 25 if complex AI not allowed, reduce to 15 in realtime
---------------------
r1669
Raise suspicion for covert: for seen/heard this turn, check if spy can be seen by soldier (if he turns).
---------------------
r1668
Fixed critical bug in LOS function.
---------------------
r1667
For AI, replace SoldierToSoldierLineOfSightTest, SoldierTo3DLocationLineOfSightTest, SoldierToVirtualSoldierLineOfSightTest and LocationToLocationLineOfSightTest with LOS functions. Fixed incorrect AI LOS checks. CanDragPerson: use world mo...
---------------------
r1666
Added new LOS functions: location to location (uses stance instead of LOS_POS), soldier to soldier (with option to force weapon ready). ClosestReachableDisturbance: check all opponents when in combat situation (if soldier is under fire or s...
---------------------
r1665
Say TAUNT_RELOAD, TAUNT_OUT_OF_AMMO taunts if mag size > 4 or Chance (CHANCE_SAY_ANNOYING_PHRASE).
---------------------
r1664
Red, Black AI: - possibly update knowledge before any other actions. - added more debug information
---------------------
r1663
TellPlayerAboutNoise fix: one direction was not checked when using Extended Ear. DecayPublicOpplist: apply HEARD_3_TURNS_AGO tweak only for valid opponents. TeamSeesGridNo: only check friends that are not too far from GridNo or look in it's...
---------------------
r1662
New AI function LOS: check line of sight from soldier to soldier using specified position/level/stance. Removed SoldierAtGridNoToSoldierLineOfSightTest function. Reverted r8112 fix: for tanks use default LOS pos. Minor code improvements, wa...
---------------------
r1661
Code cleanup, formatting.
---------------------
r1660
Red, Black AI: don't start retreat/rush attack if another tactical order is active.
---------------------
r1659
Play USE_WIRE_CUTTERS sound when repairing wire fence. Play Sounds\Misc\Fortification1.ogg .. FortificationN.ogg sound when doing fortification action.
---------------------
r1658
Red, Black AI: stop retreating if current spot is safe. Black AI: start retreating only if morale < MORLE_CONFIDENT. SpotDangerLevel: also check Water and CorpseWarning for danger level = 1.
---------------------
r1657
Use tactical order code for rush attacks and retreats. Minor code improvements and warnings fixes.
---------------------
r1656
Use SOLDIER_DOING_FORTIFICATION flag instead of usMultiTurnAction to show fortification icon on merc's portrait. Renamed bOverTurnAPS to sTacticalUnused. Renamed sMTActionGridNo to iTacticalUnused. Renamed usMultiTurnAction to ubTacticalTur...
---------------------
r1655
Moved flanking flag SOLDIER_EXTRA_FLANKING from usSoldierFlagMask to TACTICAL_FLAG_EXTRA_FLANKING in flags.ubTacticalFlags.
---------------------
r1654
Red AI: don't start flanking if another tactical order is active. Change type of ubTacticalFlags to UINT8.
---------------------
r1653
Minor code improvements.
---------------------
r1652
Reworked flanking code to use bTacticalOrder.
---------------------
r1651
SOLDIERTYPE: renamed bRTPCombat to bSuppressionShock.
---------------------
r1650
Removed OLDSOLDIERTYPE_101 class.
---------------------
r1649
Added enum for tactical order types. SOLDIERTYPE: formatting, added comments.
---------------------
r1648
Flanking: minor code cleanup.
---------------------
r1647
Removed SNIPER order. Disabled options: AI_SNIPER_RESTRICT_TO_ELITE, AI_SNIPER_MIN_RANGE, AI_SNIPER_CHANCE, AI_SNIPER_CHANCE_WITH_SR.
---------------------
r1646
ManSeesMan: also call SetNewSituation if opponent's level is different.
---------------------
r1645
ManSeesMan: only call SetNewSituation if location is different to reduce frequency of AI re-evaluation.
---------------------
r1644
Red, Black AI; improved code to reserve APs to go prone/hide after shooting. Only allow radio animation on initial red alert
---------------------
r1643
Improved code for militia/enemy artillery strike, added small chance for smoke shells on low progress.
---------------------
r1642
HandleSight: check if soldier can see hidden corpse and make it visible (only for player team or militia team, if WE_SEE_WHAT_MILITIA_SEES_AND_VICE_VERSA = TRUE). Skill Menu: check if can drag corpse before adding it to menu. Added support ...
---------------------
r1641
Press ESC to close skills menu. Press ESC to stop dragging. Minor code improvements.
---------------------
r1640
Only load StructureMove.xml file if it exists, to allow compatibility with stock 1.13 and mods.
---------------------
r1639
r8870 Improved feature: structures can be dragged. Which ones is defined in a new xml (by Flugente)
---------------------
r1638
When assigning bNextAction, also clear usNextActionData if not used. When switching to bNextAction, clear iNextActionSpecialData since we don't need it anymore.
---------------------
r1637
CancelAIAction: clear next action data. TurnBasedHandleNPCAI, RTHandleAI: clear next action data before making decisions.
---------------------
r1636
Don't show "no clothes item in xml" to allow using new camo palette without defining all new clothes in XML Fixed compiler warnings.
---------------------
r1635
Minor code cleanup.
---------------------
r1634
Lua: minor code improvements.
---------------------
r1633
Fix compiler warnings.
---------------------
r1632
Check full item size (with attachments) when trying to put item into gun sling.
---------------------
r1631
PopupAttachmentInfo class: added missing initializations in constructor. DragSelection class: added missing initialization in constructor. GenerateRandomEquipment: fixed alcohol item check. Fixed some warnings.
---------------------
r1630
BuildString class: added missing assignment operator. MERCPROFILEGEAR class: added missing copy constructor. WORLDITEM class: added missing copy constructor. CheckForGunJam: fixed min/max reliability limits. Fixed some warnings.
---------------------
r1629
ClosestReachableDisturbance: - don't skip opponents if knowledge on last found opponent is HEARD_3_TURNS_AGO - only check noise locations if soldier haven't seen opponents recently and closest disturbance is not reachable or noise is closer...
---------------------
r1628
CalcBestShot: - check max aim only of complex AI not allowed or if solder is sniper/marksman and not in close combat. - sniper/marksman prefer shot with max CTH instead of best hit rate - prone soldier prefers max CTH instead of best hit r...
---------------------
r1627
Allow building sandbags with shovel on any terrain where filled sandbag can be placed. Improved code for building fortifications with shovel.
---------------------
r1626
Allow creating fortification with shovel if there is full sandbag in inventory. When creating fortification with shovel, first use full sandbags from inventory, them use empty sandbags.
---------------------
r1625
Making fortification with shovel requires empty sandbag in inventory, which get used in the process. Removing fortification creates filled sandbag on the ground. EXTRA_ITEMS option: add shovel and empty sandbags to some of enemy soldiers.
---------------------
r1624
Disabled retrieving sandbag item when removing fortification.
---------------------
r1623
Red, Black AI: allow using wire cutter for garrison soldier if rush attack active.
---------------------
r1622
Don't play USE_WIRE_CUTTERS sound for fortification actions. Play PICKING_SOMETHING_UP sound when finishing fortification action. Fix problem with entering certain sectors.
---------------------
r1621
Don't play COOL quote when doing fortification actions.
---------------------
r1620
Allow fortification actions in diagonal direction when action spot is directly near soldier.
---------------------
r1619
Improved fortification code, fixed various fortification related bugs. Soldier can use shovel to build fortification without sandbags, only on grass/dirt surface.
---------------------
r1618
Uncover spy if dragging someone.
---------------------
r1617
Repair fences: - use AP_USEWIRECUTTERS for AP cost - correctly calculate AP when soldier needs turning to start repairing fence - disable repair cursor when soldier is prone
---------------------
r1616
Disabled multi turn actions, all fortification actions are instant and use wire cutter code. Fortification actions cost AP_USEWIRECUTTERS. Fixed AP calculation for wire cutter and fortification cursor when soldier needs to turn first. Show ...
---------------------
r1615
ClosestReachableDisturbance: fixed bug with using stored closest reachable opponent. Improved code to repair structures. Improved code to store original structure for structures that can be swapped (use tile database instead of checking the...
---------------------
r1614
Use toolkit to repair wire fences instead of wire cutters. Using toolkit to repair wire fences takes 5-15 status points.
---------------------
r1613
Soldier structure: use InitializeExtraData() to initialize all added extra data that is not saved. ClosestReachableDisturbance: in realtime, check only closest opponent if Slow PC options is enabled.
---------------------
r1612
ClosestReachableDisturbance, ClosestReachableFriendInTrouble: improved code, store found friend/opponent in the first loop if successfully passed all checks.
---------------------
r1611
ClosestReachableDisturbance, ClosestReachableFriendInTrouble: always check stored friend/opponent first, then check other soldiers.
---------------------
r1610
ClosestReachableDisturbance, ClosestReachableFriendInTrouble: improved AI optimization code.
---------------------
r1609
AI speed optimization: lower max search range when searching for items in realtime or if complex AI not allowed
---------------------
r1608
AI speed optimization: - remember last reachable opponent (for 1-5 turns), ignore other opponents except closest known, if complex AI not allowed - when complex AI not allowed, ignore opponent if farther away than closest reachable - rememb...
---------------------
r1607
Allow breaking AI with ESC key after 1 second.
---------------------
r1606
Suspicion counter: bonus if opponent previously saw this spy uncovered.
---------------------
r1605
Improved gbSeenOpponents code, use special value for uncovered opponents.
---------------------
r1604
Improved check for gbSeenOpponents[]
---------------------
r1603
Improved code for unintended hits: reduce chance to hit enemy with distance.
---------------------
r1602
NCTH: limit max deviation only when shooting at visible target.
---------------------
r1601
DamageSoldierFromBlast: - improved check for various types of explosives - heavy weapons skill provides DAMAGE_TO_TANKS_PERCENT_BONUS against tanks only when using rocket launcher - heavy weapons skill provides HW_DAMAGE_PERCENT_BONUS when...
---------------------
r1600
Red, Black AI: allow longer autofire for tanks fore better suppression.
---------------------
r1599
Fixed SOLDIER_TAKEN_LARGE_HIT, SOLDIER_TAKEN_HIT flags for vehicles/tanks.
---------------------
r1598
EXTRA_ITEMS option fix: chance to give wire cutters to elite/regular soldiers.
---------------------
r1597
Enabled REPAIR_WIRE_FENCES option.
---------------------
r1596
New option REPAIR_WIRE_FENCES (FALSE by default) allows repairing cut fences using wire cutters.
---------------------
r1595
Red AI: - improved code for cutting fence for flanking - added NewOKDestination check when finding spot to shorten path
---------------------
r1594
EXTRA_ITEMS option: added chance to equip soldier with wirecutters. Red, Black AI: - soldier can try to cut fence when flanking if he cannot find next flanking spot - soldier can cut fence with wirecutters if it allows him to shorten path ...
---------------------
r1593
Red AI: - radio operator may decide to jam frequencies if team is attacking and there are radio activated bombs in sector and RADIO_OPERATOR_JAMMING_BLOCKSRADIOBOMBS = TRUE - radio operator may decide to use listening mode if RADIO_OPERATOR...
---------------------
r1592
Increased penalty for boxers for tiles with blood and marbles. New AI action: AI_ACTION_HANDLE_ITEM.
---------------------
r1591
Medic AI: added code to drag wounded friend into safe place.
---------------------
r1590
New AI action: AI_ACTION_CANCEL_DRAG. IsActionAffordable: added support for missing AI actions. AI: - stop dragging before deciding anything - use IsActionAffordable() check for AI_ACTION_DRINK_CANTEEN and AI_ACTION_USE_DRUG
---------------------
r1589
BecomeSpotter: only show messages for player team. Red, Black AI: medic can use smoke grenade to cover himself and wounded friend before starting healing. Added more debug info to medic/first aid AI.
---------------------
r1588
Re-enabled using radio for calling artillery or reinforcements during player interrupt. If player is ordering artillery strike during interrupt, 1 wait turn is added.
---------------------
r1587
Enemy role icon: use color code to indicate radio operator status - red for jamming, blue for listening, purple for scanning.
---------------------
r1586
AI_ACTION_USE_SKILLL improved code, check is usActionData is defined, default ubID = NOBODY New AI functions: TeamHasJammingRadioOperator, TeamCanOrderArtilleryStrike. CalcBestThrow: team needs radio operator with active scanning to determi...
---------------------
r1585
Red AI shooting code: optimization for big battles.
---------------------
r1584
Red AI: allow shooting code at least once every turn and every time soldier moves at new tile.
---------------------
r1583
Fixed critical bug in FindNearbyDarkerSpot()
---------------------
r1582
Reload when in safe situation: - chance 25% - check safe spot
---------------------
r1581
Red AI: try to reload gun when in peaceful situation and have less than 1/2 of magazine.
---------------------
r1580
Red AI: - removed second CheckIfShotPossible() call - only use reloading before suppression fire if weapon is autofire capable and can swap clips
---------------------
r1579
AI: - fixed CanNPCAttack check - when trying to step back to deploy mortar, check if we can reach the spot and have enough APs - use reverse movement when trying to step back to deploy mortar
---------------------
r1578
Improved r8658: check weapon magazine size and chance to say phrase when using gun.
---------------------
r1577
Re-enabled r8658: If a gun has a magazine size < 5, the 'out of ammo' soundfile is only displayed with a chance of CHANCE_SAY_ANNOYING_PHRASE. This should make using guns with tiny magazine sizes less annoying. (by Flugente)
---------------------
r1576
AI Artillery strike (for militia team and enemy team): - try to find first mortar shell item instead of using hardcoded id = 140 - at low progress level, use tear gas shells to make artillery strikes less devastating - at high progress leve...
---------------------
r1575
Red AI: - reload before suppression fire less often in dangerous situation, also check AP_MINIMUM to allow reloading before suppression fire check - use CanNPCAttack() check only for sniper and suppression fire
---------------------
r1574
GetBestAoEGridNo: - check valid opponent - use general Knowledge and location functions - allow SEEN_THIS_TURN and HEARD_THIS_TURN knowledge
---------------------
r1573
CanUseSkill: cannot use artillery and reinforcements skills during interrupt. IsJamming, IsScanning: don't turn off radio as these functions can be used by AI. New AI function: TeamHasListeningRadioOperator() TeamHasScanningRadioOperator us...
---------------------
r1572
Added small chance for enemy soldiers to carry signal smoke grenade. AI soldiers can attack with red smoke grenade if there is artillery strike active or to scare opponents. AI will not use red smoke grenades underground and will not throw ...
---------------------
r1571
Improved code for first time sector description (moved message code to HandleTacticalEndTurn).
---------------------
r1570
Improved first time sector description: only show when there is selected active merc.
---------------------
r1569
New tags in SectorNames.xml: <szFirstTimeDescription>, <szFirstTimeDescription1>, <szFirstTimeDescription2>, <szFirstTimeDescription3> - show sector description message when entering sector for the first time, 1..3 are used for underground ...
---------------------
r1568
HandleGotoNewGridNo: use standard grenades (smoke grenade, tear gas grenade, mustard gas grenade, molotov) if possible to determine damage to soldier moving through tile. If grenade is not found, first search for hand grenade of needed type...
---------------------
r1567
ADD_SMOKE_AFTER_EXPLOSION option: use first found smoke hand grenade if SMOKE_GRENADE is incorrect item.
---------------------
r1566
Improved code for AI to search for grenades of various types.
---------------------
r1565
Boxers: PUNCH_APS_REDUCTION reduces APs for attack when using <BrassKnuckles> item. Don't allow ninja kick animation if using punch weapon.
---------------------
r1564
DetermineMovementMode: improved reverse mode check (don't change stance, use WALKING instead of RUNNING).
---------------------
r1563
AI: when deciding using reverse movement mode, check if current spot or movement spot can be seen or attacked by enemy, or if soldier is under attack or there is fresh corpse nearby.
---------------------
r1562
SoldierGotHitExplosion: lowered explosion power requirement for flyback animation to 40
---------------------
r1561
Re-enabled roof collapse animation.
---------------------
r1560
FindAmmoToReload: added assert messages to indicate that searching attached weapon failed. DecideAction: initialize bWeaponMode = WM_NORMAL to prevent FindAmmoToReload from crashing. AI reverse movement: check that reverse movement is possi...
---------------------
r1559
Experimental feature: use alt movement mode when moving for 1-2 tiles backwards or sideways. DetermineMovementMode: replace RUNNING with WALKING when using reverse movement mode. Red AI: - alt movement mode for retreat - alt movement mode w...
---------------------
r1558
Improved suppression calculation on the edge of the roof: allow check from tile not on a roof to tile on flat roof.
---------------------
r1557
Improved suppression calculation on the edge of the roof.
---------------------
r1556
Use full suppression when target is on the edge of the roof. OCTH: only allow min cth 1% when not aiming at head and not shooting beyond weapon range.
---------------------
r1555
Suppression: restored 1/3 chance for buckshot.
---------------------
r1554
Suppression: - removed 1/3 chance for buckshot - improved calculation for damage reduction for buckshot - removed pMapElement->ubAdjacentSoldierCnt > 0 check since ubAdjacentSoldierCnt seems to not work correctly - improved calculation of n...
---------------------
r1553
CalcBestShot: improved hit rate calculation, take into account possible options INCREASE_AIMING_COSTS, FIRST_AIM_READY_COST_DIVISOR. OCTH: sniper with sniper rifle halves SHOT_HEAD_PENALTY, marksman with sniper rifle, rifle or assault rifle...
---------------------
r1552
CalcBestThrow: - improved AI code to avoid hitting friends with grenades - correctly set usGrenade for mortar attacks CheckTossGrenadeSpecial: fixed incorrect fragments range calculation.
---------------------
r1551
Added a nullpointer check to a DDraw call, gets rid of one FIXME. (by Asdow)
---------------------
r1550
ProcessStatChange: lowering skill progress chance from stat delta cannot make it lower than 1.
---------------------
r1549
VR r2559 fix: climbing related AI deadlocks (by anv)
---------------------
r1548
r8881: Changed the way the STI file for CTH indicator is loaded to prevent the game from constantly loading and unloading the graphics file from the disk every time the function gets called. Now it's only done once per the lifetime of the g...
---------------------
r1547
Women get badguy battlesound sets 6-8.
---------------------
r1546
Use more battlesounds for female bodytypes.
---------------------
r1545
r8863 (by Fugente): - Fix: assignment not displayed consistently in personnel page - Fix: bizarre function
---------------------
r1544
r8868 fix (by silversurfer): - when USE_XML_SQUADNAMES was TRUE, the squad box was shifted upwards over the column headers, causing clipping issues - when READ_PROFILE_DATA_FROM_XML was TRUE, the game would still read profile data from prof...
---------------------
r1543
r8871 fix: animation loops until new order given (by Flugente)
---------------------
r1542
r2479 fix: NPC go to grid script properly interrupts cowering (by anv) CalcBestSHot: only try to suppress alive and conscious human targets. DecideActionRed: disable stealth and reverse movement mode earlier.
---------------------
r1541
r8875 Fix: Re-enabled the condition check for mercs to enter tactical screen from map screen. Someone removed it, which made it possible to enter tactical with no mercs in the sector. (by silversurfer)
---------------------
r1540
CalcBestShot: fixed bug for stance change check.
---------------------
r1539
Improved friendly fire AI code.
---------------------
r1538
r8869 fix: nullpointer access (by Flugente)
---------------------
r1537
r8841 fix: when failing to apply a gasmask to another soldier, the message still states success (by Flugente) r8839 Don't check whether an explosion damaging a room pisses of civilians if there is no room to begin with (by Flugente) r8835 f...
---------------------
r1536
r8843 (by Flugente) - Fix: wrong face displayed on insurance website - Chg: no insurance payout on suspicious deaths (no enemy presence during merc death, or merc died from friendly fire)
---------------------
r1535
r8846 fix: mercs staffing a facility for global propaganda cause mine income to drop to 0% (by Flugente)
---------------------
r1534
r8855 fix: dragging soldiers is frequently canceled (by Flugente) CalcMorale: improved code.
---------------------
r1533
r8816 Fix: crash after heli landing in UB (by Asdow) Fix: unnecessary town initialization in UB (by Asdow)
---------------------
r1532
NCTH: tweak distance based first shot aiming penalty. OCTH: tweak increase max distance based first shot penalty.
---------------------
r1531
Fix: compiler warnings
---------------------
r1530
r8813: minor code cleanup (by sun_alf)
---------------------
r1529
r8812: Minor code cleanup. Critical gun fail: show explosion animation if bVisible == -1
---------------------
r1528
Bigmaps lockbusting fix: removed incorrect type cast (by Franimus). Don't show names of inactive mercs if cursor is on target (to prevent names appearing when using ALT+scroll for setting burst length).
---------------------
r1527
Do not show extended status for inactive mercs when multi selection enabled.
---------------------
r1526
Lowered chance for unintended hits. Show names of inactive mercs using dark gray color when ALT pressed or new ingame option TOPTION_ALWAYS_SHOW_INACTIVE enabled. Show extended status for inactive mercs: sniper, spotter, dragging, dragged, ...
---------------------
r1525
New tag <shotAnimation> in AmmoTypes.xml allows defining custom shot animation. r8115 fix: negative values for ExplosionSoundID or AltExplosionSoundID in ExplosionData.xml cause a game crash, even though negative values are intended (by Flu...
---------------------
r1524
Enemy health color: show adrenaline and rush attack using same color.
---------------------
r1523
Spreading fire: - do not spread fire on roof - ignore rain if in building under roof
---------------------
r1522
Complex AO: - only for ENEMY_TEAM - reduced max combatants to 40 - only in turnbased mode
---------------------
r1521
Added small chance for critical gun jam if weapon is in bad status (but not overheated).
---------------------
r1520
Smoke effect for gun shots: - requires ammoflag 8 - only for merc bodytypes - only for guns
---------------------
r1519
Added small chance for weapon to critically fail when jamming while highly overheated.
---------------------
r1518
AI: - sniper/marksman can use wisdom drug to improve CTH - sniper/marksman can use vision drug if under attack and cannot see enemy
---------------------
r1517
AI soldiers will use drugs sometimes if available. Play sound when drinking alcohol (Sounds\Misc\Alcohol1.ogg, Alcohol2.ogg, ...) EXTRA_ITEMS: add chance for enemy to have various drugs.
---------------------
r1516
Show drunk status for enemy soldiers using health text color.
---------------------
r1515
AI: drink from canteen if low on breath. ApplyCanteen: display no AP message only for player mercs. EXTRA_ITEMS: Randomly add canteen to AI.
---------------------
r1514
AI: improved retreat code.
---------------------
r1513
Suppression: - lowered AP to react when prone - only cower when reached cowering shock level - deduct AP when prone and react - unready weapon if prone and react
---------------------
r1512
Rush attack start: add adrenaline effect.
---------------------
r1511
Increased MAXATTACHMENTS to 60000 for Aimnas to work. Minor code improvements and warnings fixes. Project update.
---------------------
r1510
GenerateProsString, GenerateConsString: don't use overheating for gun descriptions. GetHelpTextForItem: use GetGunAccuracy. DrawItemUIBarEx: use GetGunOverheatDisplayPercentage to draw gun temperature. GetGunAccuracy: - start lowering accur...
---------------------
r1509
Path AI tweaks.
---------------------
r1508
Allow complex AI calculations only when there are no more than 64 combatants in sector. Allow small chance of unintended hit for prone/cowering persons. AICheckWeOutnumberPublic: change to friends >= enemies + 5. AICheckWeOutnumber: additio...
---------------------
r1507
HourlyLarryUpdate: - initialize usTemptation for every soldier - all facility types including AMBIENT can trigger addictions
---------------------
r1506
Improved code to update scope mode when changing stance. CalcBestShot: allow shooting HeavyGun in standing stance if not twohanded or alt weapon holding is disabled. GetBPCostPer10APsForGunHolding: also check twohanded and standing stance ...
---------------------
r1505
VR r2370: fixed hourly alcohol/drug update - drug items were being used up without applying drug effects, preventing Larry profile swap and background related drunkenness (by anv)
---------------------
r1504
Improved code for unintended hits.
---------------------
r1503
NCTH: modify effective suppression range depending on weapon recoil. HearNoise: don't randomize noise location if opponent is seen publicly. CalcBestShot: limit return fire code to this turn, consider only previous attacker.
---------------------
r1502
Switch from alt weapon holding when changing stance in realtime. NCTH: limit effective suppression distance when shooting in alt weapon holding mode.
---------------------
r1501
NCTH: - limit max shown cursor aperture - limit max bullet deviation, depending on weapon range - limit ground shots
---------------------
r1500
Structure damage: improved code.
---------------------
r1499
DamageStructure: fix possible division by zero.
---------------------
r1498
Improved code to create fire on grass from tracers.
---------------------
r1497
Guns can damage structures: - mostly light structures (wood, light metal) can be damaged - chance is higher when using AP ammo - chance is higher when using high power ammo - when using tracer ammo, there's a small chance to create fire whe...
---------------------
r1496
Travel time improvements: - negative backgrounds work for foot travel - for foot travel, use lowest value - for vehicle/air travel, use highest value - no bonus for ranger when flying in helicopter
---------------------
r1495
When tracer bullet hits ground, theres a chance that fire will be created if there is grass on this tile. Spreading fire code: - check that Molotov (item 979) is fire explosive item. - removed light creation as it's now handled in SpreadEf...
---------------------
r1494
UIHandleNewBadMerc: - randomly create admin, regular or elite - create soldier at interface level Slip on blood: improved code. VaporizeCorpse: spread blood only if fExplode = true. RemoveBlood: correctly remove blood on specified level. Up...
---------------------
r1493
CalcBestThrow: - use smoke launchable if not found non smoke - limit safety margin to DAY_VISION_RANGE / 2
---------------------
r1492
Added r7783, r7788 (by silversurfer).
---------------------
r1491
Restored AI decision delay when recruiting new troops, less AI waiting on higher levels.
---------------------
r1490
Interrogate prisoner: don't change reinforcement pool when unlimited reinforcements enabled. EvaluateQueenSituation: - allow recruiting when pool size drops below QUEEN_POOL_INCREMENT_PER_DIFFICULTY_LEVEL, this should result in more stable ...
---------------------
r1489
VR r2348 fix - loading .jpc.7z with a single image would cause exception as file was not considered open (by anv) Show tooltips for all soldiers. Allow tooltips for bloodcats, bugs, tanks and robots in debug mode.
---------------------
r1488
Halved chance to slip on blood.
---------------------
r1487
Update soldier morale when changing inventory.
---------------------
r1486
NWSS: - new tag in AmmoStrings.xml: <NWSSCaliber> - new tags in Weapons.xml: <ubNWSSCase>, <ubNWSSLast>, <szNWSSSound>
---------------------
r1485
Hotkeys for quick transformations: Shift+O - transform scope Shift+L - transform flashlight Shifr+Y - transform laser
---------------------
r1484
Only allow opportunity attack when boxing is active and boxer is in RED/BLACK status.
---------------------
r1483
Black AI: improved code for sidearm using. CalcBestShot: always check if can shoot at target seen by another soldier.
---------------------
r1481
Don't allow chain reaction for items on the ground with ubVolatility = 0. Lowered chain reaction bonus chance for items on the ground.
---------------------
r1480
[F] key should correctly show CTH for different types of attacks: - gun - launcher - grenade - thrown knife - punch - toss item
---------------------
r1479
Stab/Steal/Punch attacks: reduce defender rating if defender is blind or cannot see attacker after turning (only for human bodytypes).
---------------------
r1478
Scale tactical ambients and sector steady ambients with general effects volume. Minor code improvements.
---------------------
r1477
First decay light effects and then decay smoke effects, because fire can create light. Dynamic creation of light effects for fire and signal smoke. Fixed/improved code to decay light effects so that ubDuration works correctly. Note: <ubRadi...
---------------------
r1476
New tag in CivGroupNames.xml: CustomSide, allows to set custom side for civilian group using tag Side.
---------------------
r1475
Red AI: when soldier is being bandaged, turn to closest known threat, crouch if not crouched and wait.
---------------------
r1474
Do not show icons on big portraits.
---------------------
r1473
No cowering effect in water.
---------------------
r1472
Combined all standard interrupt checks into one function CanInterrupt(). Reset SOLDIER_TAKEN_LARGE_HIT flag at the end of each turn. Tank uses smoke grenade for cover if he is under attack, has health < max health - 20 and haven't seen enem...
---------------------
r1471
When shooting at swimming soldier, allow aiming at head and torso. Zombie AI: - CalcMorale() - set default aiming location as AIM_SHOT_RANDOM
---------------------
r1470
More zombie raise sounds. More water splash sounds.
---------------------
r1469
Localized messages for item moving assignment. ClosestReachableDisturbance: - zombies do not attack vehicles - improved code to prefer not dying enemies
---------------------
r1468
TurnSoldierIntoCorpse: fixed damage to items dropped by MILITIA_TEAM. GetCorpseAtGridNo: check if sBaseGridNo is out of bounds. ClosestReachableDisturbanceClosestKnownOpponent, ClosestKnownOpponentID: boxers should not ignore dying opponent...
---------------------
r1467
Improved noise volume bonus when dragging something. Improved dragging sound: any number of sounds supported.
---------------------
r1466
Fixed translation bug.
---------------------
r1465
Improved dragging sound. Fixed grenade pin sound for signal smoke.
---------------------
r1464
Mercs can drag corpses and people (by Flugente). Play sound when dragging something. Mercs always make movement noise when dragging. Movement noise is louder if soldier is dragging something. Disabled showing trait distance when selecting s...
---------------------
r1463
r8482 fix: boxing exception to covert behaviour only works between 2 boxers (by Flugente) Minor AI code improvements.
---------------------
r1462
CheckNPCDestination: improved code. FindBestPath: allow SEEKENEMY to move into deep water. UIPlotPath: disabled code to ignore person at destination to fix endless clock when moving to invisible opponent. ClosestReachableDisturbance: when i...
---------------------
r1461
Improved CheckNPCDestination check - compare danger levels.
---------------------
r1460
Added CheckNPCDestination function for common checks for: - gas - deep water - light at night - north spot - door nearby - explosive structure nearby - bomb nearby - red smoke danger
---------------------
r1459
HandleFlashLights: use HandleSight for soldier only if he is not dying.
---------------------
r1458
RandomFriendWithin: more checks for target spot, improved code. RandDestWithinRange: more checks for target spot, improved code.
---------------------
r1457
LegalNPCDestination: only avoid locations near doors in green mode. Improved AI location searching routines, added LegalNPCDestination checks. FindFlankingSpot: removed edge of the map check.
---------------------
r1456
Added random chance to create fire when explosion damages burnable object (grass, cloth, furniture). Randomized chance to spread fire. Don't add light effects when spreading fire on roof.
---------------------
r1455
Fixed Russian translation. Increased volume for water splash sound.
---------------------
r1454
Only normal, stun and flashbang explosives create water explosion. Increase max force when throwing items into water (because of no bouncing). Play sound when item hits water.
---------------------
r1453
Removed DEBUG_ATTACKBUSY define from debug version. Added TOPIC_GAME to registered topics. StructureHit: check water level. OBJECT_DETONATE_ON_IMPACT(): check fExplodeOnImpact only for explosives.
---------------------
r1452
InternalDoMercBattleSound: don't try to play sound if file not exists.
---------------------
r1451
Fixed LOS bug introduced in r1204.
---------------------
r1450
Disabled warnings for missing options TAUNT_VOICE and TAUNT_VOICE_SHOW_INFO. Improved creation of smoke and lights effects after explosion. Add light effect when signal smoke is created.
---------------------
r1449
FindTossSpotInDirection: also check one tile farther to throw smoke grenade. Improved Russian translation.
---------------------
r1448
New option TAUNT_VOICE (FALSE by default): if true, will play sound file instead of showing text. New option TAUNT_VOICE_SHOW_INFO (FALSE by default): if true, will show debug info when playing voice taunt. TAUNT_INFORM_ABOUT: check that op...
---------------------
r1447
Doubled canteen drink effect for restoring breath.
---------------------
r1446
SSA: fixed ambient in tropical sectors.
---------------------
r1445
New option in game settings: "Slow PC" disables complex AI calculations to speed up enemy turn. AnyCoverAtSpot: fixed cover cache code. GetItemVisionRangeBonus, GetItemPercentTunnelVision, GetItemHearingRangeBonus: improved code.
---------------------
r1444
Updated tooltip for toggling artificial merc light.
---------------------
r1443
Disable interrupt if soldier was suppressed this turn. Penalty to watch decision if soldier cannot interrupt. Penalize seek/help if target too far: - only when in town or underground - only if number of known opponents is less than 10 - 2 *...
---------------------
r1442
Fix deadlock when executing AI_ACTION_STOP_COWERING for soldiers.
---------------------
r1441
AI: improved AI_ACTION_STOP_COWERING.
---------------------
r1440
StandardInterruptConditionsMet: allow interrupt if not cowering CalcInterruptDuelPts: penalty if soldier was suppressed this turn, penalty if soldier taken large hit CalcMorale: - also make civilians more aggressive - limit AI morale if no ...
---------------------
r1439
When giving AI boxer dusters, make them undroppable.
---------------------
r1438
Reworked taser code: - take into account taser status - randomize breath damage 50-150% - head attack +50% breath loss, legs attack -50% breath loss - apply bodybuilder resistance for taser attacks
---------------------

zww
or
oooo

“ja2_7609+AI 中文版更新:r1942”有3条评论

  1. kn007 says:

    大佬更新的这个,我都没玩过

    1. zwwooooo says:

      @kn007 这个太老了,骨灰级别才能继续玩。(顺便测试评论)

      1. kn007 says:

        @zwwooooo 测试一下看看

发表评论

昵称 *

网址

B em del U Link Code Quote