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

153 Commits

Author SHA1 Message Date
Ivan Savenko
a6dead7725 Fixed loading of text strings for hota quests 2024-04-22 13:49:17 +03:00
Andrii Danylchenko
3939c4b9d3 NKAI: stability fixes and regression 2024-04-20 14:32:58 +03:00
Andrii Danylchenko
ed76d8a652 NKAI: allow multiple tasks to be executed from one calculation 2024-04-14 16:46:05 +03:00
Andrii Danylchenko
fd0dd7441a
Merge pull request #3700 from vcmi/object-graph
NKAI: parallel capture objects
2024-04-01 12:59:08 +03:00
Andrii Danylchenko
728f673763 NKAI: remove static ai field 2024-03-31 21:11:25 +03:00
Andrii Danylchenko
ca7c91e766
Merge pull request #3677 from vcmi/object-graph
Object graph
2024-03-29 20:39:56 +02:00
Andrii Danylchenko
d6f1a5c2b3 NKAI: parallel capture objects 2024-03-29 20:39:03 +02:00
Evgeny Malygin
25125f96da
Fix: licenses, pragma guards, StdInc 2024-03-29 07:48:52 +02:00
Andrii Danylchenko
30d9daf62c NKAI: improve boat handling by object graph, a set of fixes 2024-03-28 13:39:15 +02:00
Andrii Danylchenko
b236384356 NKAI: graph add battle layer 2024-03-02 15:54:05 +02:00
Ivan Savenko
45c971a405 Replace throws() with nothrow 2024-02-14 12:07:07 +02:00
Alexander Wilms
678cacbd25 Remove more redundant virtual specifiers
`grep -nr "virtual " | grep -v googletest | grep " override" | grep -v overriden > ../redundant_virtual.txt`

```python
import os

with open("../redundant_virtual.txt") as f:
    for line in f:
        print()
        line: str = line.strip()
        print(line)
        tmp = line.split(":",2)
        file = tmp[0].strip()
        code = tmp[-1].strip()
        print(file)
        print(code)
        new_code = code.replace("virtual ", "", 1)
        # https://superuser.com/a/802490/578501
        command = f"export FIND='{code}' && export REPLACE='{new_code}' && ruby -p -i -e \"gsub(ENV['FIND'], ENV['REPLACE'])\" {file}"
        os.system(command)
```
2024-02-13 15:21:30 +01:00
Alexander Wilms
522cb571b3 Remove redundant virtual specifiers
`grep -nr virtual | grep -v googletest | grep override > ../redundant_virtual.txt`

```python
import os

with open("../redundant_virtual.txt") as f:
    for line in f:
        print()
        line: str = line.strip()
        print(line)
        tmp = line.split(":")
        file = tmp[0].strip()
        code = tmp[-1].strip()
        print(file)
        print(code)
        new_code = code.replace("virtual ", "", 1)
        # https://superuser.com/a/802490/578501
        command = f"export FIND='{code}' && export REPLACE='{new_code}' && ruby -p -i -e \"gsub(ENV['FIND'], ENV['REPLACE'])\" {file}"
        os.system(command)
```
2024-02-10 20:46:13 +01:00
Ivan Savenko
2e4895766a Implemented tracking of objects destroyed by players 2024-01-31 01:37:33 +02:00
Ivan Savenko
0c07384293 Refactoring of serialization versioning handling
- Removed 'version' field from serialize() method
- Handler classes - Binary(De)Serializer now have 'version' field
- Serialization versioning now uses named enum

Save compatibility with 1.4.X saves should be intact
2024-01-20 20:34:51 +02:00
Ivan Savenko
a15366f5a5 Make IObjectInterface::cb non-static 2024-01-19 13:55:21 +02:00
Ivan Savenko
d5c4478816 Remove most of non-const access to VLC entities 2024-01-19 13:54:49 +02:00
nordsoft
fadf086e61 Fix review comments 2023-10-12 13:30:01 +02:00
nordsoft
5b10b457cf Fix code review suggestions 2023-10-11 00:47:19 +02:00
nordsoft
bb238f9b72 New quests work 2023-10-10 23:44:29 +02:00
nordsoft
1460541ee5 New limiter based quests 2023-10-10 23:44:29 +02:00
Andrii Danylchenko
ebe155fa95 NKAI: mana recovery 2023-09-30 10:37:36 +03:00
Ivan Savenko
e54287ea5d Converted remaining identifier to new system 2023-08-25 13:38:02 +03:00
Ivan Savenko
17d3d663ee Converted creature ID and spell ID to new form 2023-08-25 13:38:02 +03:00
Ivan Savenko
87957e74c1 Replaced boost::thread_specific_ptr with thread_local 2023-08-23 16:32:29 +03:00
Andrii Danylchenko
b19ac01bf9 Fuzzy rework, added more defence and gather army routines 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
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
Konstantin
86f5d6de69 vcmi: modernize headers 2023-04-30 13:35:54 +03:00
Andrii Danylchenko
d347db4c16 Fix hero count calculation for resourceful ai mod 2023-04-22 14:47:31 +03: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
Konstantin
22dd97ad18 vcmi: use entilites when possible part 1 2023-04-04 23:02:54 +03:00
Konstantin
5366f9190e vcmi: reduce boost::lexical_cast usage 2023-03-09 16:36:46 +03:00
Andrii Danylchenko
8b0c7b6601 NKAI improve defence and some fixes 2023-03-07 20:10:58 +02:00
Ivan Savenko
aeb653c919 Fix typos 2023-03-07 00:06:58 +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
388ed88b5d All artifact strings now pass 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
5da407e822 All spell texts are now passed through translator 2023-01-20 15:18:36 +02:00
Ivan Savenko
3219e322ae Fixed all non-silenced gcc/clang warnings 2022-12-07 18:05:47 +02:00
Andrii Danylchenko
e9c725181c NKAI: fix retreat logic 2022-10-15 15:15:12 +03:00
Andrii Danylchenko
153cccdf46 NKAI: hire retreated hero 2022-10-14 12:00:56 +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
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
Andrii Danylchenko
02b2f35143 Nullkiller: fix crash 2022-03-05 15:51:03 +02: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
b4241670ba Nullkiller: rename VCAI to AIGateway 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
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
3d91f2e988 Fix defence crashes and hangs 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
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
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
dec723b4be Nullkiller: android fixes 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
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
6682485395 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
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
400967904b Nullkiller AI: stabilization of build and prioritization fixes 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
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
2798dcd6c5 Nullkiller: remove PRI* print macroses 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
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
01975e339b Nullkiller: android build fixes 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
8961f1c803 AI: fix hero exchange logic, allow splitting weakest-fastest creature, refactoring 2021-07-26 21:02:50 +03:00
AlexVinS
dd046e60be Quick fix for https://bugs.vcmi.eu/view.php?id=3041 2021-07-26 21:02:50 +03:00