1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-26 22:57:00 +02:00
Commit Graph

1316 Commits

Author SHA1 Message Date
Andrey Filipenkov
cfa22c33ad use rpath properly 2022-09-24 15:55:17 +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
Andrii Danylchenko
b4d3445559
Merge pull request #971 from kambala-decapitator/fix-warnings
Fix most project warnings
2022-09-22 16:05:32 +03:00
Andrey Filipenkov
c9c79887a7 remove unused variables 2022-09-22 11:54:10 +03:00
Andrey Filipenkov
143b0983e6 fix enum value 2022-09-22 11:54:09 +03:00
Andrey Filipenkov
1d57c40740 wrap && conditions in parentheses when near || 2022-09-22 11:54:09 +03:00
Andrey Filipenkov
3616827aad use default implementation of special methods 2022-09-22 11:54:09 +03:00
Andrey Filipenkov
aae1d4fed5 fix variable type in for-in loops 2022-09-22 11:54:09 +03:00
Andrey Filipenkov
a1cf120ea6 add missing virtual destructors 2022-09-22 11:54:09 +03:00
Andrey Filipenkov
7e6ed0583c disable all scripting code when configuring without scripting modules 2022-09-21 19:31:42 +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
DjWarmonger
5e2d87abd7
Update AI/Nullkiller/Goals/ExecuteHeroChain.cpp
Co-authored-by: Andrey Filipenkov <decapitator@ukr.net>
2022-09-14 16:23:13 +02:00
Tomasz Zieliński
931f4af2df typo 2022-09-14 15:24:39 +02:00
nordsoft
c24fc89fe3 Lambda decltype on compile time instead of runtime 2022-09-14 12:08:20 +03:00
Tomasz Zieliński
40585a66c0 Style, commend - requested 2022-09-11 11:31:28 +03:00
Tomasz Zieliński
1649cf2bb9 misc comments 2022-09-11 11:31:27 +03:00
Tomasz Zieliński
6ae3b77d80 AI will not wait to conwuer fort if possible 2022-09-11 11:31:27 +03:00
Tomasz Zieliński
f0bb97b0d2 AI will actually attack all heroes when possible - and win the game eventually :) 2022-09-11 11:31:27 +03:00
Tomasz Zieliński
b52faad4c7 + Stack speed is valuable
+ Hero movement is also very valuable
2022-09-11 11:31:27 +03:00
Tomasz Zieliński
a83753a7d2 AI will now pick Prisons if possible 2022-09-11 11:31:27 +03:00
Tomasz Zieliński
cbf2a1b7cc AI will consider Pandora Box as a valuable object - good for every occasion! 2022-09-11 11:31:27 +03:00
Tomasz Zieliński
faa6ca401e Fixed duplicated value 2022-09-11 11:31:27 +03:00
Tomasz Zieliński
f4de5453c6 + AI will consider free slot (or lack of it) for creature reward from a bank
+ AI might use banks for resources other than gold
2022-09-11 11:31:27 +03:00
Nordsoft91
aaa07e4d2e New terrain support - part 1 (#755)
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Soar Qin
188607b05f Replace cotire with CMake builtin precompiled headers support (Requires CMake version >= 3.16) 2022-06-17 17:20:08 +03:00
Soar Qin
c87df8e704
Fix warnings/errors on MSVC (#753)
* Fix warnings/errors on MSVC
1. update googletest to tag release-1.11.0 to make googletest and
   googlemock compile on MSVC2022.
2. set gtest_force_shared_crt to ON in test cmake project to make tests
   compile on MSVC.
3. add /wd4251 and /wd4275 to MSVC compile flags to ignore DLL related
   warnings for class exports.
4. fix some other warnings and errors while compiling on MSVC2022.
2022-06-11 18:45:34 +03:00
Andrii Danylchenko
31c9d6e28d Fix performance issue related to TurnInfo construction 2022-06-06 09:47:37 +03:00
Konstantin
8fc14369a4
CMake presets. (#744)
* CI: use single build action
* CMake: use imported targets
* CI: do not build boost for linux
* CMake: add FORCE_BUNDLED_MINIZIP option
* linux: use external minizip and fuzzylite
* CMake: add presets
* .gitignore: ignore cmake build dirs
* github: use cmake presets
2022-05-26 08:55:20 +03:00
Konstantin
c6b198ce14
Warning fix (I moved C++17 and CI to another branch) (#739)
* clang warning fixes
* use CMake 3.10 due to MXE CI does not have 3.13 yet

Co-authored-by: Konstantin <rilian@niisi.ras.ru>
2022-05-19 15:14:50 +03:00
Andrii Danylchenko
6da233c387 NullkillerAI: fix build analyser when town has no upgrade for creature 2022-05-01 10:26:07 +03:00
Andrii Danylchenko
56a1984aa8 Remove extra non-printable characters 2022-04-27 09:22:18 +03:00
val-gaav
8baa97acd3 Update VCAI.cpp 2022-04-26 15:08:02 +03:00
val-gaav
7466839182 Update AIGateway.cpp 2022-04-26 15:08:02 +03:00
Andrii Danylchenko
fa9a420f99 Fix a few crashes 2022-04-17 09:10:53 +03:00
Andrii Danylchenko
02b2f35143 Nullkiller: fix crash 2022-03-05 15:51:03 +02:00
Dmitry Orlov
ea2931c6ea Fix: Get rid of 'Tile is not visible' error message 2022-01-30 12:31:07 +02:00
Andrii Danylchenko
84948820b2 exchange window move single stacks buttons 2022-01-03 15:13:46 +02:00
Andrey Filipenkov
af6d666778 use high_resolution_clock instead of steady_clock 2021-11-23 11:56:06 +03:00
Andrey Filipenkov
fc064b1c45 replace boost::chrono with std::chrono 2021-11-23 10:23:55 +03:00
Andrii Danylchenko
27b3a88dda Replace App Veyor 2021-08-21 09:32:52 +03:00
Andrii Danylchenko
b00a1dee28 Fix build 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
79d06bbaa6 Nullkiller: fix merge conflicts 2021-07-26 21:02:50 +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
ae67ef027a Nullkiller: fix old VCAI new lines 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
3480f17a68 Nullkiller: fix defence 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
1f83569868 Nullkiller: fix defence 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
b5b9619147 Nullkiller: fix build 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
0d5ae20e64 Nullkiller: improved citadel priority 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
673d908c40 Nullkiller: fix crash because of incorrect memory management 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
92ac78f87d Nullkiller: fix crash when game ends 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
07b6b0605c Nullkiller: blind fix for unit tests to compile 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
4f51d3c929 Nullkiller: fix android 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
0705ee595a Nullkiller: object clusterizer 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1d4a349c2c Nullkiller: fix build 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
c7d35dcc6f Nullkiller: disable decomosition for now. Very slow 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
1349eff201 Nullkiller: android fixes 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
223a52b3d1 Nullkiller: Try to join behavior and goal and see what come out of it. 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
5344df51c6 Nullkiller: capture guarded artifacts and other fixes 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1fd838a5b9 Nullkiller: stabilisation 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
8e4ca10365 Nullkiller: fix build 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
6682485395 Nullkiller: fix build 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
506ecc2ea7 Nullkiller: fix android build 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
9d020be63b Nullkiller: fix priority of townhall 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
b7b615ec70 Nullkiller: stabilisation fixes 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
de2361650b Nullkiller AI: add Analyzers folder, add BuildingBehavior 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
af9261d428 NullkillerAI: Added movement cost by hero role. New priority engine looks more or less stable. 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
66ed1a2901 Nullkiller AI: add strategical value fuzzy variable 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
e6eb9ccc03 Nullkiller: dismising and hiring hero in order to defend town 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
f44c3f2aaf Nullkiller: improve handling of enemy hero value 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
6faac5aeca Nullkiller: improve artifact value evaluation 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
682707e4f1 Nullkiller: fix build and warnings 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
ada76a5603 Nullkiller: fix file headers, move fuzzy config to ai folder 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
1d561b9882 Nullkiller: fixes for partly visible objs 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
28b77e0b79 Nullkiller: rename fuzzy logic to .txt 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
bcf8db3d05 Nullkiller: startup scripts 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
531d0af95b ai fixes for android 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
14adf1d108 AI: implement hero skills evaluator 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
01975e339b Nullkiller: android build fixes 2021-07-26 21:02:50 +03:00
Andrii Danylchenko
3744125270 Nullkiller: armed heros prefer armed targets 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
04bf6f536d Nullkiller: temporary hacks to allow army buying 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
8961f1c803 AI: fix hero exchange logic, allow splitting weakest-fastest creature, refactoring 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
87f1079c60 nullkiller&herochain stabilisation 2021-07-26 21:02:50 +03:00