Andrii Danylchenko
b1ca663eb6
Fuzzy rework
2023-07-31 22:01:10 +03:00
Andrii Danylchenko
38a98387e4
Temp fix for blocked in garrison ai.
2023-07-31 22:01:10 +03:00
Ivan Savenko
85262cf4f5
Moved CGameState files into a separate directory
2023-06-26 17:15:59 +03:00
Ivan Savenko
08cfbe79cf
Added encapsulation for movement points access
2023-06-25 17:42:36 +03:00
Ivan Savenko
ebc7a82c2e
Converted pathfinder enum's to enum class
2023-06-21 15:38:57 +03:00
Ivan Savenko
f78470a301
Fix build
2023-06-21 14:55:25 +03:00
Ivan Savenko
bd4d2788ed
Split pathfinder into multiple smaller files
2023-06-21 13:46:09 +03:00
Ivan Savenko
87fcfa4add
Removed excessive pathfinder includes
2023-06-21 12:00:44 +03:00
Ivan Savenko
6aedb99117
Cleaned up IShipyard interface
2023-06-16 17:59:10 +03:00
Ivan Savenko
acac42291e
Remove excessive CMap.h includes
2023-05-31 23:18:38 +03:00
Andrii Danylchenko
0829593356
NKAI: composite pathfinder actions and fix for guarded bordergate
2023-05-07 09:15:37 +03:00
Konstantin
86f5d6de69
vcmi: modernize headers
2023-04-30 13:35:54 +03:00
Andrii Danylchenko
fbc9a32ad8
#2018 - fix shipyard usage for NKAI, allied shipyard should work now
2023-04-22 18:42:36 +03:00
Andrii Danylchenko
d347db4c16
Fix hero count calculation for resourceful ai mod
2023-04-22 14:47:31 +03:00
nordsoft
0a28262c15
Merge remote-tracking branch 'upstream/develop' into boats
...
# Conflicts:
# AI/VCAI/Pathfinding/AINodeStorage.cpp
2023-04-19 02:22:19 +04:00
nordsoft
37027ad17f
Fix AI boat logic
2023-04-18 18:33:44 +04:00
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
Andrii Danylchenko
34abc9f82d
NKAI: disallow using allied shipyard
2023-04-02 10:04:10 +03:00
Andrey Filipenkov
3602645a30
improve iterating over EPathfindingLayer
2023-03-20 11:35:19 +03:00
Andrii Danylchenko
fa9e1d2d83
NKAI: fix crash
2023-03-12 16:31:15 +02:00
Andrii Danylchenko
4bf570763a
NKAI: improve neutral town priority handling, reduce priority of objects like star axis
2023-03-12 16:31:15 +02:00
Ivan Savenko
05a1d7c6e3
All text for factions/towns/building are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
fa6f7513e8
All heroes-related strings are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
eb20a4b208
Merge remote-tracking branch 'vcmi/develop' into warnings_fix
2022-12-23 14:40:45 +02:00
Andrii Danylchenko
56bf8ec2c4
#1228 - prevent second AI activation on AI defeat due to wrong EndTurn packet
2022-12-14 22:13:26 +02:00
Andrii Danylchenko
01980f4310
Small optimization of NKAI pathfinder
2022-12-10 22:08:16 +02:00
Ivan Savenko
8dcecdc235
Fix deprecation warning
2022-12-09 14:16:23 +02:00
Andrii Danylchenko
233b850daf
NKAI: a few crash/hang fixes
2022-11-07 13:58:20 +02:00
Andrii Danylchenko
ebf4854801
Battle AI: add some comments + refactoring
2022-10-23 11:41:03 +03:00
Andrii Danylchenko
eeea01d778
NKAI: namespace
2022-10-04 08:40:14 +03:00
Andrii Danylchenko
2434fe3f6f
NK: fix AI speed
2022-10-01 13:49:27 +03:00
DjWarmonger
58a3abb643
Merge pull request #963 from vcmi/terrain-rewrite
...
Terrain rewrite
2022-09-29 18:24:05 +02:00
Andrii Danylchenko
878aabd4d6
Merge pull request #981 from kambala-decapitator/fix-analyzer-warnings
...
Fix Clang Analyzer warnings
2022-09-29 19:23:24 +03:00
Tomasz Zieliński
f386f42166
Merge remote-tracking branch 'origin/develop' into terrain-rewrite
...
# Conflicts:
# lib/Terrain.cpp
# lib/Terrain.h
# lib/battle/CBattleInfoEssentials.cpp
# lib/rmg/ObstaclePlacer.cpp
# lib/rmg/RiverPlacer.cpp
2022-09-27 07:50:17 +02:00
Tomasz Zieliński
fd63cb6109
and here
2022-09-25 08:07:22 +02:00
Andrey Filipenkov
659be89a01
remove setting values that are never read
2022-09-24 16:52:38 +03:00
Andrey Filipenkov
ff635edc0b
wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
...
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00
Tomasz Zieliński
a5077245a8
Merge remote-tracking branch 'origin/develop' into terrain-rewrite
...
# Conflicts:
# lib/Terrain.cpp
# lib/Terrain.h
2022-09-23 20:01:13 +02:00
Andrey Filipenkov
c9c79887a7
remove unused variables
2022-09-22 11:54:10 +03:00
Andrey Filipenkov
1d57c40740
wrap && conditions in parentheses when near ||
2022-09-22 11:54:09 +03:00
Andrey Filipenkov
a1cf120ea6
add missing virtual destructors
2022-09-22 11:54:09 +03:00
Tomasz Zieliński
494b0f0226
First version that compiles
2022-09-21 11:34:23 +02:00
DjWarmonger
7ba271edf1
Rotation rebase2 ( #912 )
...
* Instead of [x][y][z] coordinates, map will be stored as [z][x][y].
* Nullkiller AI can get it too.
* Use boost::multi_array instead of nested vectors
* In MapHandler too
* Rotate foreach algorithms, too
* VCAI gets rotated, too
2022-09-18 17:39:10 +03:00
Nordsoft91
aaa07e4d2e
New terrain support - part 1 ( #755 )
...
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Andrii Danylchenko
31c9d6e28d
Fix performance issue related to TurnInfo construction
2022-06-06 09:47:37 +03:00
Andrii Danylchenko
fa9a420f99
Fix a few crashes
2022-04-17 09:10:53 +03:00
Andrey Filipenkov
fc064b1c45
replace boost::chrono with std::chrono
2021-11-23 10:23:55 +03:00
Andrii Danylchenko
d47564955e
Nullkiller: fix/refactor temporary bonus nodes, fix gather army quest completion
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
70ed3f55a5
Nullkiller: replace a hack with temporary bonus node concept
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3fa7e0976f
Nullkiller: update / fix build, core changes required for Nullkiller AI
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
b4241670ba
Nullkiller: rename VCAI to AIGateway
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
87a8c776c9
Nullkiller: reduce memory usage for x86
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
7184364bcb
Nullkiller: disable logging and fix tbb build
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
bc95e4b935
Fix tbb build
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1aa81530cb
Nullkiller: cancel heavy decomposition on shipyards
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
9a203b8af9
Nullkiller: parallel object clusterization, stabilization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
66843b22d3
Nullkiller: async hero chain calculation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
0265de77fa
Nullkiller: fix crash, refactor
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
fb3cda666f
Nullkiller: tbb and hero chain calculation optimization and parallel cpathfinder initialization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
0ffc7c3b94
Nullkiller: turn limit for main heroes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
4c01a8eec4
Nullkiller: fix a few crashes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3d91f2e988
Fix defence crashes and hangs
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3dc76cfe35
Nullkiller: fix crash when buy army through pathfinder
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
45942cfbbe
Nullkiller: stabilization, fix memory leaks
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
7e88819105
Nullkiller: fix crash and freeze
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
80df879489
Nullkiller: stabilization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
f2c26d7553
Nullkiller: thread interuption point
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3822d788e8
Nullkiller: allow buy army through pathfinder
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
f0ceaf5852
Nullkiller: improve perofrmance of AI pathfinding
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
cf4484e071
Nullkiller: stabilization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e385c83a88
Nullkiller - rewrite decomposition, decomposition cache, morale management
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
35a1167f3d
Nullkiller: refactoring and stabilization of gather army & clusterization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1fdf0de75d
Nullkiller: clusterization fixes, heroes clusterization for additional mains in case of locked heroes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
645c393e25
Nullkiller: fix freeze on accessing guarded object
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
5bfe71c8f3
Nullkiller: small optimization of AIPathfinder for big maps
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3e9bf9b662
Nullkiller: try to fix build
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
32fb465823
Nullkiller: stabilization+clasterization improvements+fuzzy fear
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
75b8ee74fa
Nullkiller: stabilisation after refactoring
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1806dd8447
Nullkiller: remove AIhelper + refactoring
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
f832a8b3cd
Nullkiller: calibration and small behavior fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
37f49f2ac5
Nullkiller: stabilization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
dec723b4be
Nullkiller: android fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e95ccda5de
Nullkiller: various fixes for town portal and other
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1a69a43f09
Nullkiller: fix border gate and garrison bypassing when owned
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
cebb5b296b
Nullkiller: fix priorities after refactoring
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
33b499976a
Nullkiller: fixes for keymaster
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
8f8c5ca255
Nullkiller: initial decomposition
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
af0dcf97c4
Nullkiller: initial cleanup of unused code
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1fd838a5b9
Nullkiller: stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
c10c1cab2c
Nullkiller: fix build
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
9c14ccab8f
Nullkiller: fixes after first 5 autotesting maps
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
df78e3243b
Nullkiller: stabilisation, improve gather army
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
17a960e850
Nullkiller: gold preasure and turn variables for priority evaluation. Tweaking building behavior
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
a39fa51e14
Nullkiller AI: basic hill fort support and hero chain reworked to start from stronger army
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
400967904b
Nullkiller AI: stabilization of build and prioritization fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
eea5cb7f0b
Nullkiller AI: further stabilisation, implement staged hero chain (first with limit 0 turns then 1 turn)
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
6bebb766a6
Nullkiller AI: new prioritization engine stabilization
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
b261734905
Nullkiller AI: new prioritization engine
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
84e5e6ac17
Nullkiller: rework defence a bit
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1096f2e9e6
Nullkiller: town portal fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
a2ac19e4ec
Nullkiller: defence behavior
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
642f3a3fa4
Nullkiller: fix a few freezes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
2798dcd6c5
Nullkiller: remove PRI* print macroses
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
fdd5be1e40
Nullkiller: fix build and some warnings
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e3c87fb58d
Nullkiller: stabilisation and fixes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
5fe2630c64
Nullkiller: rework prioritization, add hero roles, skills and other variables
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
4bf653f596
AI: danger hitmap using visible enemy heroes
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
286d084445
Nullkiller: better tracing and hero locking for hero chain
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
ffa626dc2f
AI: add ExecuteChain goal
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
37434dc4cf
AI: hero chain stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3ffcef30f6
AI: add army cost
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
f44eaf8132
AI: inefective chain cancellation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
0e328ab3c2
AI: hero chain stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3a0d9fe14e
AI: adding towns and dwellings to hero chain
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e838e70165
ai fix town portal to occupied town
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
774f531c4e
hero chain stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
62e5366a08
AI: rough hero chain stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
fa39279c82
Nullkiller - rough stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
eee145c486
Nullkiller: rough implementation of capture objects and recruit hero behaviors
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
a88181acd7
AI: separate hero chain recalculation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
c1e521a544
Nullkiller - rough stabilisation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
9d70b28c9b
AI: hero chain basic logic
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1e4a086bb1
AI pathfinding loss evaluation
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
0bff5f9eb6
AI pathfinding shared storage
2021-07-26 21:02:50 +03:00
Andrii Danylchenko
be4f803d4a
Nullkiller: copy VCAI
2021-07-26 21:02:50 +03:00