39a2c29c97
Removed creatureBank flag from battle, battles now receive BattleLayout
...
struct that defines how units are placed in combat
2024-09-12 12:11:18 +00:00
48b0a222a0
Merge pull request #4570 from kdmcser/crash_fix
...
fix Ballista Bank Mod auto combat crash
2024-09-12 14:16:41 +03:00
312403962b
Update BattleExchangeVariant.cpp
...
fix.compile error
2024-09-11 11:39:03 +08:00
bb759dc2b8
fix compile error
2024-09-11 01:43:30 +08:00
58cdbccf21
Update AI/BattleAI/BattleExchangeVariant.cpp
...
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com >
2024-09-10 15:29:11 +08:00
c5b598b277
fix Ballista Bank Mod auto combat crash
2024-09-08 01:05:03 +08:00
f9442208da
BattleAI: avoid standing in moat
2024-09-03 13:02:58 +03:00
39e5ba32f6
Merge pull request #4530 from IvanSavenko/town_fortifications
...
Support for configurable town fortifications
2024-08-31 13:59:40 +03:00
c3e76f19e1
Add workaround for very common crash in BattleAI
2024-08-30 12:25:55 +00:00
644d6f4529
Merge pull request #4507 from vcmi/fix-battle-ai
...
Battle AI: fix firewall, fix haste spellcast evaluation for waits and…
2024-08-30 14:36:05 +03:00
36c1ed670f
Support for configurable town fortifications
...
Removed most of hardcoded checks for fort level or for presence of fort/
citadel/castle buildings.
It is now possible to define which parts of town fortifications are
provided by town buildings
Configuration for H3-like fortifications is provided in
buildingsLibrary.json and will be used automatically by mods as long as
mods have buidings named "fort", "citadel" and "castle".
Alternatively, mods can separately define:
- hitpoints of walls (shared value for all sections)
- hitpoints of central, upper and lower towers (separate values)
- presence of moat
- shooters for each tower (separate values)
2024-08-28 19:42:14 +00:00
897bc65e64
Merge pull request #4508 from kaja47/dead-code-must-die
...
remove never used code in CBonusSystemNode
2024-08-26 19:11:03 +03:00
3d39963a1c
Merge branch 'master' into 'develop'
2024-08-26 14:01:00 +00:00
ed36b1a882
Battle AI: fix casting Implosion when it kills target stack, fix casting summon elementals
2024-08-26 16:58:27 +03:00
d55996cc46
Battle AI: fix firewall, fix haste spellcast evaluation for waits and movements, allow location spells
2024-08-26 11:31:00 +03:00
462c79e190
remove never used code in CBonusSystemNode
...
Method CBonusSystemNode::getAllBonuses have 'root' parameter which is never
set to anythig else than nullptr. This patch removes the parameter and all
code that depends on it as preparatory work for further bonus system
optimization.
2024-08-25 14:15:21 +02:00
ff8a745a50
BattleAI: optional simulation depth
2024-08-21 23:27:42 +03:00
22de88ad68
BattleAI: count wait correctly for fast creatures
2024-08-21 22:18:41 +03:00
337f99942b
BattleAI: remove boost for archers while moving as actual stack may be small
2024-08-21 22:18:41 +03:00
bc80532f29
BattleAI: improve movement towards unreachable
2024-08-21 22:18:40 +03:00
26609d7a4f
BattleAI refactoring
2024-08-21 22:18:40 +03:00
8cdfa26fb5
BattleAI: fix bait for archers when need to go long way
2024-08-21 22:18:40 +03:00
b3fc6743d9
BattleAI: better retaliation calculation
2024-08-21 22:18:40 +03:00
f0448acaa3
TBB is now a dependency of lib. Implemented multithreaded xBRZ scale
2024-08-17 15:25:26 +00:00
d09fb07362
Use throwing ::at to prevent undefined behavior
2024-08-15 13:14:51 +00:00
fe115c6917
Fix possible crash on trying to move to invalid battlefield hexes
2024-08-15 13:13:59 +00:00
49c5f650f7
Merge pull request #4437 from IvanSavenko/battle_sides
...
Unified handling of battle sides ID's
2024-08-14 18:37:05 +03:00
5c7c4a7810
Merge pull request #4443 from IvanSavenko/fix_sonar
...
Fix miscellaneous issues discovered by Sonar
2024-08-14 17:12:27 +03:00
cd6d55fe75
Do not try to shoot at 2nd hex of wide creatures
2024-08-14 10:38:59 +00:00
97f1a310df
Fix miscellaneous issues discovered by Sonar
2024-08-12 18:26:30 +00:00
2a05fbdd50
Unified handling of battle sides ID's
...
- Replaced BattleSide namespace-enum with enum class
- Merged two different BattleSide enum's into one
- Merged BattlePerspective enum into BattleSide enum
- Changed all places that use integers to represent battle side to use
BattleSide enum
- Added BattleSideArray convenience wrapper for std::array that is
always 2-elements in size and allows access to its elements using
BattleSide enum
2024-08-11 20:54:44 +00:00
9ffd6368d4
Add visual logger for battle interface
2024-08-10 10:54:20 +03:00
51b8bc9fc3
BattleAI: fix shhoters waiting and reduce strength of our loss affecting decissions
2024-08-04 17:50:19 +03:00
801e919e7e
BattleAI: fix ap calculation in exchange variant
2024-08-03 20:35:20 +03:00
9edb0afff8
BattleAI: fix dragonbreath retaliation
2024-07-28 14:41:32 +03:00
da46d5d01b
BattleAI: take into account defender dragon breath and other mutitarget attacks
2024-07-22 20:39:33 +03:00
4e83deca92
BattleAI: fix waited attack calculation
2024-07-22 20:39:33 +03:00
33e0eeaa8a
BattleAI: fix dragon breath
2024-07-22 20:39:32 +03:00
1c522c49b6
Fix possible crash on trying to move to invalid battlefield hexes
2024-07-20 18:28:13 +00:00
63bcf7d83c
Replaced most of usages of CRandomGenerator with vstd::RNG in library
2024-07-16 13:13:07 +00:00
60a51e98de
Remove usage of std::function from CRandomGenerator
2024-07-16 13:13:07 +00:00
6b8f94e6e7
Merge remote-tracking branch 'vcmi/master' into develop
2024-07-11 17:43:44 +00:00
98415e98da
Spellcasting-bug-fix
...
Fixed a bug that prevented the AI from using spells when attacking an enemy settlement that has towers.
The bug was caused by noticing how greatly effective spells would be against towers but not being able to actually target them.
By skipping invalid targets, this no longer is an issue.
2024-07-10 14:36:35 +00:00
02e429e973
Fix typos using https://github.com/crate-ci/typos
...
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
3bea383b59
Merge branch 'vcmi/beta' into 'vcmi/develop'
2024-06-21 12:58:36 +00:00
0e4be8c776
Fix crash on sieging Citadel or Castle
2024-06-19 19:59:06 +00:00
a9cf322f61
Merge pull request #4161 from vcmi/fix-4142
...
#4142 - sometimes Battle AI wants to attack unit which is behind a lo…
2024-06-19 21:28:58 +03:00
fc32078a3a
#4142 - sometimes Battle AI wants to attack unit which is behind a lot of obstackles and other units
2024-06-18 20:03:07 +03:00
b7efa6c8cc
Fixed potential thread races in Battle AI
2024-06-17 16:15:19 +00:00
eb67e04ccb
Remove old and unmaintained codeblocks project
2024-05-17 10:44:57 +00:00