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

1784 Commits

Author SHA1 Message Date
Andrii Danylchenko
4e83deca92 BattleAI: fix waited attack calculation 2024-07-22 20:39:33 +03:00
Andrii Danylchenko
33e0eeaa8a BattleAI: fix dragon breath 2024-07-22 20:39:32 +03:00
Ivan Savenko
37cf788079
Merge pull request #4317 from IvanSavenko/split_townhandler
Split CTownHandler into smaller chunks
2024-07-22 17:42:48 +03:00
Ivan Savenko
4aa73b40c9 Split CTownHandler into smaller chunks 2024-07-21 18:21:48 +00:00
Andrii Danylchenko
683c363946 NKAI: whirlpool 2024-07-21 17:20:54 +03:00
Ivan Savenko
550540f8ab
Merge pull request #4316 from IvanSavenko/crashfixes
Crashfixes
2024-07-21 16:15:28 +03:00
Ivan Savenko
1c522c49b6 Fix possible crash on trying to move to invalid battlefield hexes 2024-07-20 18:28:13 +00:00
Ivan Savenko
1aa391fdf8 Split CGeneralTextHandler file into 1 file per class form
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes

Moved without changes:
Languages.h           -> texts/Languages.h
MetaString.*          -> texts/MetaString.*
TextOperations.*      -> texts/TextOperations.*

Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
                      -> texts/CLegacyConfigParser.*
                      -> texts/TextLocalizationContainer.*
                      -> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
Andrii Danylchenko
3502e30fe5
Merge pull request #4296 from vcmi/build-take-into-account-7lvl-creatures
NKAI: take into account 7lvl creature cost when we consider what reso…
2024-07-19 21:34:25 +03:00
Ivan Savenko
2020d96070
Merge pull request #4071 from IvanSavenko/fix_rng_syncronization
[1.6] Fix potential desync if client uses different stdlib with different random number generators
2024-07-19 13:08:09 +03:00
Andrii Danylchenko
e9e5948d61 NKAI: take into account 7lvl creature cost when we consider what resources we need 2024-07-18 20:24:24 +03:00
Andrii Danylchenko
37dc2a38e8 NKAI: reduce double army loss cases 2024-07-18 13:38:25 +03:00
Andrii Danylchenko
7571fb7046 NKAI: fix gosolo when human is lead by gosolo AI + multiplayer 2024-07-17 17:09:04 +03:00
Ivan Savenko
1072356002
Merge pull request #4268 from IvanSavenko/pathnode_reduce
Reduce size of CGPathNode and AIPathNode
2024-07-17 13:08:05 +03:00
Ivan Savenko
63bcf7d83c Replaced most of usages of CRandomGenerator with vstd::RNG in library 2024-07-16 13:13:07 +00:00
Ivan Savenko
60a51e98de Remove usage of std::function from CRandomGenerator 2024-07-16 13:13:07 +00:00
Ivan Savenko
04a81fee87 Reduce size of CGPathNode and AIPathNode 2024-07-15 07:49:04 +00:00
Andrii Danylchenko
6f5710e809
Merge pull request #4110 from vcmi/rewardables
NKAI: rewardables
2024-07-14 09:02:37 +03:00
Ivan Savenko
6b8f94e6e7 Merge remote-tracking branch 'vcmi/master' into develop 2024-07-11 17:43:44 +00:00
Xilmi
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
Ivan Savenko
e42285c2f1
Merge pull request #4240 from IvanSavenko/bugfixing
[1.5.4] Bugfixing
2024-07-09 14:32:24 +03:00
Tomasz Zieliński
5eabadd7db Use vstd 2024-07-09 06:50:00 +02:00
Tomasz Zieliński
bfa93be765 Limit predicted damage / loses to actual stack health 2024-07-09 06:39:41 +02:00
Ivan Savenko
7445e950ba Replace uint64_t with signed type to prevent overflow on substraction 2024-07-08 20:52:11 +00:00
Andrii Danylchenko
1be36e1ad4 NKAI: rewardables 2024-07-07 21:58:39 +03:00
Ivan Savenko
b5c36958a9 Workaround for very slow boat summon tests 2024-07-04 19:56:01 +00:00
Ivan Savenko
41ed7e2e10 Added TODO's for potential optimizations that I've discovered 2024-07-04 07:59:50 +00:00
Ivan Savenko
075582910a Less CPU intensive version of ExplorationHelper::scanMap method 2024-07-04 07:53:25 +00:00
Ivan Savenko
73fdd12581 Use optimized container without dynamic memory allocations 2024-07-03 21:15:40 +00:00
Ivan Savenko
1468abb8a0 Remove excessive copies of large objects 2024-07-03 21:14:22 +00:00
Ivan Savenko
95d8e447b2 Remove access to text translation system from AI 2024-07-03 21:13:55 +00:00
Ivan Savenko
40f17d654d Use containers with pre-allocations to improve pathfinding speed 2024-07-03 18:06:56 +00:00
Ivan Savenko
24b77b0972 Remove access to hero name translation 2024-07-03 17:01:38 +00:00
Alexander Wilms
02e429e973 Fix typos using https://github.com/crate-ci/typos
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
Alexander Wilms
820b1b446e Fix typo: TowmPortalFinder -> TownPortalFinder 2024-06-23 22:40:15 +02:00
Ivan Savenko
3bea383b59 Merge branch 'vcmi/beta' into 'vcmi/develop' 2024-06-21 12:58:36 +00:00
Ivan Savenko
0e4be8c776 Fix crash on sieging Citadel or Castle 2024-06-19 19:59:06 +00:00
Ivan Savenko
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
Andrii Danylchenko
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
Ivan Savenko
8e68c7dcd8
Merge pull request #4144 from vcmi/fix-4139
#4139 - attempt to fix crash on portal probbing
2024-06-18 12:07:24 +03:00
Ivan Savenko
b7efa6c8cc Fixed potential thread races in Battle AI 2024-06-17 16:15:19 +00:00
Ivan Savenko
431b2865a4 Review fixes 2024-06-17 09:43:22 +00:00
Andrii Danylchenko
cd4aaf93ee #4139 - attempt to fix crash on portal probbing 2024-06-16 11:58:15 +03:00
Ivan Savenko
e699941a39 Disable logic that seems to be leading to thread races 2024-06-12 18:17:23 +00:00
Ivan Savenko
e32b6bd807 Fix potentially uninitialized members 2024-06-12 18:10:38 +00:00
Ivan Savenko
b4c6906471 Merge branch 'vcmi/beta' into 'vcmi/develop' 2024-06-11 19:22:23 +00:00
Ivan Savenko
9c05e80315 Fix Admiral's Hat whirlpool immunity. Reduce usage of
convertFromVisitablePos
2024-06-11 14:31:11 +00:00
Ivan Savenko
b8beb4fb13 Fixes for various minor issues detected by Sonar Cloud 2024-06-01 11:48:30 +00:00
Andrii Danylchenko
7bf047ff18 #4066 - fix exploration 2024-06-01 13:13:51 +03:00
Andrii Danylchenko
9728413742 NKAI: fix dead end cancellation 2024-06-01 12:25:23 +03:00
Ivan Savenko
df83fa33a1 Merge branch 'vcmi/master' into 'vcmi/develop' 2024-05-31 09:34:21 +00:00
Ivan Savenko
5d6470e527
Merge pull request #4025 from IvanSavenko/shared_ptr_lib
[1.6] Use shared_ptr for library entities
2024-05-30 19:14:06 +03:00
Ivan Savenko
5ecb527252
Merge pull request #3997 from IvanSavenko/serialization_refactor
[1.6] Serialization refactor
2024-05-30 19:13:21 +03:00
Andrii Danylchenko
02ea497951 NKAI: speedup exploration a bit 2024-05-22 22:49:11 +03:00
Andrii Danylchenko
820f0e0c1a NKAI: port exploration from VCAI 2024-05-20 23:50:13 +03:00
Andrii Danylchenko
5b7e355953
Merge pull request #4009 from vcmi/nkai-exploration
NKAI: port exploration from VCAI
2024-05-20 23:44:12 +03:00
Andrii Danylchenko
1388fb1493 NKAI: port exploration from VCAI 2024-05-20 22:43:23 +03:00
Ivan Savenko
ffe14fc1fc
Merge pull request #4022 from vcmi/master
Merge master -> beta
2024-05-20 18:09:51 +03:00
Ivan Savenko
8931121d2e
Merge pull request #3995 from IvanSavenko/old_projects_remove
[1.6] Remove old project files
2024-05-19 15:44:32 +03:00
Ivan Savenko
9bfe000724 Added semi-workaround method for network thread shutdown:
Currently closing game while network thread is waiting for something is
very bug-prone, since network thread may resume during shutdown and
access partially destroyed client state.

Now if exit has been requested, the very first step would be semi-
graceful shutdown of network thread (via exception throwing). This may
in theory skip some cleanup in non-RAII code, but since game is shutting
down this does not matters much.

This logic applies to:
- shutting down while network thread is waiting for dialogs
- shuttind down while network thread waiting for animations in combat
2024-05-18 11:04:10 +00:00
Ivan Savenko
f3de2cfe1c Removed broken & unused serialization of player interface and AI 2024-05-17 16:35:53 +00:00
Ivan Savenko
7461df161c lib now uses shared_ptr for entities. Removed manual memory management. 2024-05-17 15:04:05 +00:00
Ivan Savenko
eb67e04ccb Remove old and unmaintained codeblocks project 2024-05-17 10:44:57 +00:00
Ivan Savenko
3f6eb13ee0 Delete old and unmaintained msvc project files 2024-05-17 10:44:11 +00:00
Ivan Savenko
cba49a9952 Fix gcc-14 build 2024-05-17 10:10:06 +00:00
Ivan Savenko
721b15d9de Merge branch 'vcmi/master' into 'vcmi/develop' 2024-05-17 08:26:37 +00:00
Ivan Savenko
84bc6c42db Added 'Serializeable' base class for classes serializeable by pointer 2024-05-16 18:40:59 +00:00
Laserlicht
560923fc1f
show cheating problem message only once per AI 2024-05-15 12:50:51 +02:00
Laserlicht
e9b2159c0a
hint about disabled cheats for nullkiller 2024-05-15 00:18:14 +02:00
DjWarmonger
560d53a07c
Merge pull request #3960 from vcmi/fix-3941
#3941 - recruit hero when no heroes
2024-05-13 11:30:11 +02:00
Andrii Danylchenko
98afd43969 #3941 - recruit hero when no heroes 2024-05-12 21:10:31 +03:00
Andrii Danylchenko
98a78b3386 #3930 - fix usage of wrong variable 2024-05-12 18:04:23 +03:00
Ivan Savenko
30e0a16ee9 Fix some 'new' issues reported by Sonar Cloud 2024-05-06 15:33:30 +00:00
Andrii Danylchenko
157443c1df #3876 - allow to embark after battle for AI pathfinder 2024-05-05 13:52:57 +03:00
Ivan Savenko
be54836401
Merge pull request #3849 from IvanSavenko/fix_vcai_crash
Fix possible crash on AI attempting to build building in town
2024-04-28 19:48:23 +03:00
Ivan Savenko
8fa615a8f7 Fix possible crash on AI attempting to build building in town 2024-04-28 12:53:10 +03:00
Andrii Danylchenko
f1d7151a93 #3842 - fix negative link cost because of bonuses 2024-04-28 09:11:15 +03:00
Andrii Danylchenko
39e19f79f4 Fix #3754, #2316 2024-04-27 13:57:50 +03:00
Andrii Danylchenko
afa766c763 #3824 - fix cluster unlock 2024-04-27 10:57:30 +03:00
Andrii Danylchenko
6e641dbdea #3824 - fix empty army with only commander issues 2024-04-26 23:18:20 +03:00
Andrii Danylchenko
b4abb3a56c
Merge pull request #3814 from vcmi/fixes
NKAI: fix patrolling heroes never retreat and town danger evaluation
2024-04-23 18:52:47 +03:00
Ivan Savenko
62d15ed23c
Merge pull request #3820 from IvanSavenko/bugfixing
Bugfixing
2024-04-23 13:03:36 +03:00
Ivan Savenko
1b6d6c3f5e Disable broken visitation of external markets for VCAI 2024-04-22 15:46:51 +03:00
Ivan Savenko
a6dead7725 Fixed loading of text strings for hota quests 2024-04-22 13:49:17 +03:00
Ivan Savenko
a46e022421 Fixed format string 2024-04-22 13:48:56 +03:00
Ivan Savenko
438ec08d72 AI will only ignore garrisons in 'Steadwick Fall' mission (H3 logic) 2024-04-22 11:14:58 +03:00
Ivan Savenko
e8e4446886 Simplify NKAI settings loading code 2024-04-22 11:14:58 +03:00
Ivan Savenko
20f323d83c Added 'useTroopsFromGarrisons' option to NKAI 2024-04-22 11:14:57 +03:00
Ivan Savenko
21dff9413e
Merge pull request #3786 from IvanSavenko/instant_movement
Instant movement
2024-04-22 11:08:00 +03:00
Ivan Savenko
1b469036a3
Merge pull request #3784 from dydzio0614/quick-dwellings-visit
Add handling for yes/no dialogs that can be safely skipped by player
2024-04-22 11:06:40 +03:00
Andrii Danylchenko
390136e536 NKAI: fix patrolling heroes never retreat and town danger evaluation 2024-04-21 14:23:58 +03:00
Andrii Danylchenko
7aff0e63fc NKAI: fix parallel access to object graph 2024-04-21 12:27:58 +03:00
Andrii Danylchenko
0935f931fa BattleAI: fix bypassing 2-hex moat 2024-04-20 15:28:57 +03:00
Andrii Danylchenko
70fad45316
Merge pull request #3770 from vcmi/nkai-multitask
NKAI: allow multiple tasks to be executed from one calculation
2024-04-20 15:21:11 +03:00
Andrii Danylchenko
3939c4b9d3 NKAI: stability fixes and regression 2024-04-20 14:32:58 +03:00
Ivan Savenko
d5a2ad1be8 Allow sending requests to move across multiple tiles at once 2024-04-20 12:28:50 +03:00
Andrii Danylchenko
50432b9614
Merge pull request #3782 from Alexander-Wilms/typo
Fix typo: preasure -> pressure
2024-04-18 13:19:12 +03:00
Dydzio
19453aab41 Add handling for yes/no dialogs that can be safely skipped by player 2024-04-17 01:08:27 +02:00
Alexander Wilms
e70411bf1a Fix typo: preasure -> pressure 2024-04-16 21:10:49 +00:00
Alexander Wilms
7d925b3689 Fix typo: Preasure -> Pressure 2024-04-16 21:10:15 +00:00