Ivan Savenko
5f052165fe
Fix missing names for some threads
2025-03-02 14:33:11 +00:00
Ivan Savenko
dda48b3693
Fix build
2025-03-02 14:33:11 +00:00
Ivan Savenko
64ac14fa06
Remove boost::thread from cmakelists
2025-03-02 14:33:11 +00:00
Ivan Savenko
948abfb04c
AI now uses std::thread, added custom thread interruption logic
2025-03-02 14:33:11 +00:00
Ivan Savenko
844dfb1604
Removed usage of boost::thread from vcmi, except for AI
2025-03-02 14:33:11 +00:00
Ivan Savenko
3d205e0291
Remove CThreadHelper class, final usage replaced with tbb
2025-03-02 14:33:11 +00:00
Ivan Savenko
0536c55b9d
Merge pull request #5494 from IvanSavenko/cpp_compat
...
Fix potential compatibility with C++20 / C++23 mode
2025-03-02 16:32:43 +02:00
Ivan Savenko
a8a6be7ac1
Fix potential compatibility with C++20 / C++23 mode
...
This fixes several issues with compatibility with C++20. C++23 was also
tested, but apparently it does not have any additional breaking changes
compared to C++20 (or we don't have those).
VCMI still uses C++17 as before - goal is only to make potential
transition easier.
There were 2 cases that are deprecated in C++20 that we use:
- Floating point operations on enums are deprecated
- `this` can no longer be captured when using default capture by value
`[=]`
Both of those should now be replaced with code that works fine in both C+
+17 and in C++20 mode
2025-03-02 14:11:48 +00:00
Ivan Savenko
f348e20a63
Merge pull request #5487 from IvanSavenko/game_engine_2
...
Reduce number of global variables
2025-03-02 12:43:16 +02:00
Ivan Savenko
272943f38a
Merge pull request #5491 from IvanSavenko/threading
...
Use tbb thread pool instead of custom one for RMG
2025-03-02 12:42:54 +02:00
Ivan Savenko
06be6b909c
Fix build, reduce includes of CConsoleHandler
2025-03-01 21:16:41 +00:00
Ivan Savenko
dd1b877449
Replace several more globals with locals
2025-03-01 21:16:41 +00:00
Ivan Savenko
782362e5ce
Remove console global
2025-03-01 21:16:41 +00:00
Ivan Savenko
e5a095a237
Remove main menu global. Now accessed via GameInstance
2025-03-01 21:16:41 +00:00
Ivan Savenko
d3de0d525f
Removed GameEngine::curInt member
...
- event processing is now initiated by GameEngine instead of weird chain
engine -> player interface -> engine
- introduced GameEngineUser interface (implemented by GameInstance) to
remove mutual depedency between GameEngine and GameInstance (some
technically still remains for now, in form of some free functions)
2025-03-01 21:16:40 +00:00
Ivan Savenko
a4587c0e65
Add basic docs on vcmi threads
2025-03-01 21:16:03 +00:00
Ivan Savenko
33468f21ff
Remove custom implementation of threadpool from rmg in favor of TBB
2025-03-01 21:16:03 +00:00
Ivan Savenko
f06e707108
Merge pull request #5488 from Laserlicht/boost
...
replace some boost functions with std
2025-03-01 23:15:01 +02:00
Ivan Savenko
b0de99fe89
Merge pull request #5478 from heroesiiifan/translation
...
develop - add greek, japanese, norwegian; harmonize
2025-03-01 23:14:28 +02:00
Ivan Savenko
0d4d004516
Merge pull request #5489 from IvanSavenko/changelog_february
...
Initial changelog for 1.7.0
2025-03-01 23:13:51 +02:00
Ivan Savenko
924c1cb3f5
Initial changelog for 1.7.0
2025-02-28 16:31:20 +00:00
Ivan Savenko
1097a80c1e
Merge pull request #5414 from IvanSavenko/bonus_icons
...
[1.7] Configurable icons for bonuses
2025-02-28 17:58:02 +02:00
Ivan Savenko
a3dbb5748c
Fix build
2025-02-28 14:59:00 +00:00
Ivan Savenko
35fc7f7f03
Use new URL for 1.7 mods
2025-02-28 14:51:33 +00:00
Ivan Savenko
07a46ed03b
Configurable icons for bonuses
...
It is now possible for mods (e.g. vcmi extras) to provide custom icons
for bonuses subtypes or for custom bonuses values without requiring
hardcoded check in vcmi.
All existing hardcoded checks have been removed.
Bonuses config json from mods is now actually loaded.
2025-02-28 14:51:32 +00:00
Ivan Savenko
8f074490a7
Merge branch 'master' into 'develop'
2025-02-27 21:15:42 +00:00
Ivan Savenko
dfda6d2626
Merge pull request #5484 from vcmi/beta
...
Merge beta -> master
2025-02-27 16:08:20 +02:00
Ivan Savenko
a8d8b64882
Merge pull request #5483 from IvanSavenko/release_167
...
Preparation for release 1.6.7
2025-02-27 15:11:14 +02:00
Ivan Savenko
da0943db99
Download counter for 1.6.7
2025-02-27 10:15:23 +00:00
Ivan Savenko
cad6ea5402
Update Ukrainian translation
2025-02-27 10:15:23 +00:00
Ivan Savenko
f04cac4101
Fix format string
2025-02-27 10:15:23 +00:00
Ivan Savenko
c60954932d
Fix build on newest MSVC
2025-02-27 10:15:23 +00:00
Ivan Savenko
0e4a4ae5aa
Merge pull request #5482 from IvanSavenko/changelog_167
...
Changelog for 1.6.7
2025-02-27 12:14:34 +02:00
Ivan Savenko
5a59789371
Changelog for 1.6.7
2025-02-27 09:50:40 +00:00
Ivan Savenko
398c0e318c
Merge pull request #5480 from GeorgeK1ng/czech-update
...
[1.6.7] Czech update + English formatting
2025-02-27 11:39:12 +02:00
Ivan Savenko
5a5ec55dac
Merge pull request #5481 from IvanSavenko/ai_crash_fix
...
[1.6.7] Invalidate pathfinder cache on dismissing a hero
2025-02-27 11:36:53 +02:00
Ivan Savenko
a075ac1ad1
Merge pull request #5468 from Laserlicht/lobby_aspect_ratio
...
[1.6.7] make lobby 4:3 aspect ratio & fixes
2025-02-26 17:20:53 +02:00
Ivan Savenko
f4f89d1536
Invalidate pathfinder cache on dismissing a hero
2025-02-26 14:47:00 +00:00
Ivan Savenko
1e020a3b56
Merge pull request #5476 from IvanSavenko/hotfix
...
[1.6.7] Fixes for reported issues
2025-02-25 19:38:16 +02:00
Ivan Savenko
5a813feaa6
Merge pull request #5475 from IvanSavenko/lobby_fix_2
...
[1.6.7] Better fix for lobby room crash
2025-02-25 18:56:50 +02:00
Ivan Savenko
b67096db82
Merge pull request #5477 from IvanSavenko/version_bump_167
...
Bump version to 1.6.7
2025-02-25 18:56:15 +02:00
Ivan Savenko
e7fbe2d387
Fix build
2025-02-25 16:55:58 +00:00
Ivan Savenko
d1b13a0fe4
Add check for mod compatibilty
2025-02-25 16:19:15 +00:00
Ivan Savenko
3d69a35dcb
Bump version to 1.6.7
2025-02-25 15:34:22 +00:00
Ivan Savenko
420f358599
Avoid crash on having unsupported campaigns in map list
2025-02-25 15:29:09 +00:00
Ivan Savenko
e4a719fb7e
Fix corrupted pixels on town building animations in mods
2025-02-25 15:28:45 +00:00
Ivan Savenko
e720d06e79
Add logging for failure to extract file from .zip, with check for Windows
...
260 path length limit
2025-02-25 15:28:07 +00:00
Ivan Savenko
b372cc84e9
Avoid crash if object has same name as on provided in compatiblity
...
identifiers field
2025-02-25 15:26:16 +00:00
Ivan Savenko
e2e83b392b
Merge pull request #5467 from IvanSavenko/brotherhood_fix
...
[1.6.7] Fix Brotherhood displaying Thieves Guild UI on click instead of Tavern
2025-02-25 16:50:18 +02:00
Ivan Savenko
b304788722
Merge pull request #5464 from Laserlicht/statistic_fixes
...
[1.6.7?] Statistic window fixes
2025-02-25 16:50:09 +02:00
Ivan Savenko
d772521d59
Merge pull request #5460 from Laserlicht/setting
...
[1.6.7?] Add settings
2025-02-25 16:49:48 +02:00
Ivan Savenko
2a9cd0c0d6
Merge pull request #5470 from kambala-decapitator/fix-android-conan
...
[conan] fix building libiconv for Android
2025-02-25 16:49:39 +02:00
Ivan Savenko
42878af3a6
Better fix for lobby room crash
...
Always use TCP connection when connecting to self-hosted lobby room.
Effectively reverts 1.6.6 change for lobby connections. Single-player
connections still use intra-process pseudo connection
Main problem is various side effects caused by changing order of
operations. For example, client may inform lobby about joining the room
before server finishes startup, which was not possible before.
2025-02-25 14:05:56 +00:00
Ivan Savenko
a6a929eb95
Revert "Fix crash on attempting to connect newly created lobby room"
...
This reverts commit f42d4dc758 .
2025-02-25 14:01:49 +00:00
Ivan Savenko
b6dd4460de
Fix Brotherhood displaying Thieves Guild UI on click instead of Tavern
2025-02-23 14:46:04 +00:00
Ivan Savenko
bc90f4f4aa
Merge pull request #5461 from Laserlicht/touch_improve
...
[1.6.7?] Improve touch motion
2025-02-22 20:58:28 +02:00
Ivan Savenko
0d6f6a20f0
Merge pull request #5466 from IvanSavenko/sdl_crash_fix
...
[1.6.7] Possible fix for crash on attempt to free sdl surface in worked thread
2025-02-22 20:57:30 +02:00
Ivan Savenko
ebb294e9dd
Merge pull request #5465 from IvanSavenko/lobby_connect_fix
...
[1.6.7] Fix crash on attempting to connect newly created lobby room
2025-02-22 20:51:15 +02:00
Ivan Savenko
10871308cb
Merge pull request #5459 from XCOM-HUB/patch-2
...
Update swedish.ts (beta)
2025-02-22 20:49:56 +02:00
Ivan Savenko
1bc7c13204
Possible fix for crash on attempt to free sdl surface in worked thread
2025-02-22 17:16:18 +00:00
Ivan Savenko
f42d4dc758
Fix crash on attempting to connect newly created lobby room
2025-02-22 14:20:45 +00:00
Ivan Savenko
319d90cbb4
Merge pull request #5419 from IvanSavenko/game_engine
...
[1.7] Rename and reorganize global variables in client
2025-02-21 22:41:54 +02:00
Ivan Savenko
cbcd48aabb
Fix build
2025-02-21 18:51:27 +00:00
Ivan Savenko
645b95ba02
Renamed LibClasses * VLC to GameLibrary * LIBRARY
2025-02-21 16:54:56 +00:00
Ivan Savenko
156de5b17e
Added GameInstance class
...
- available as global GAME
- integrates LOCPLINT (CPlayerInterface)
- integrates CGI->mh (CMapHandler)
- integrates CSH (CServerHandler)
2025-02-21 16:54:06 +00:00
Ivan Savenko
ffd37a8fa8
Removed CGI in favor of VLC. Map handle is for now global variable
2025-02-21 16:53:14 +00:00
Ivan Savenko
f657e85305
Integrated CClientState into GameEngine class
2025-02-21 16:53:14 +00:00
Ivan Savenko
cacceda950
Renamed CGuiHandler to GameEngine
...
- class CGuiHandler is now called GameEngine to better describe its
functionality
- renamed global GH to more clear ENGINE
- GH/ENGINE is now unique_ptr to make construction / deconstruction
order more clear and to allow interface / implementation split
- CGuiHandler.cpp/h is now called GameEngine.cpp/h and located in root
directory of client dir
2025-02-21 16:53:13 +00:00
Ivan Savenko
0c5a560c80
Merge pull request #5456 from IvanSavenko/sonar_fix
...
[1.7] Fixes for multiple new issues from Sonar
2025-02-21 18:52:23 +02:00
Ivan Savenko
2362c6da21
Fixes for multiple new issues from Sonar
2025-02-21 15:57:39 +00:00
Ivan Savenko
0548f325e4
Merge branch 'master' into 'develop'
2025-02-21 13:59:34 +00:00
Ivan Savenko
c687ab17fb
Merge pull request #5453 from altiereslima/develop
...
Update Portuguese Translation
2025-02-20 16:33:55 +02:00
Ivan Savenko
df7507912f
Merge pull request #5455 from vcmi/beta
...
Merge beta -> master
2025-02-20 16:33:40 +02:00
Ivan Savenko
81424ceadc
Merge pull request #5443 from XCOM-HUB/patch-2
...
Update swedish.json (develop)
2025-02-20 16:33:15 +02:00
Ivan Savenko
b2642bb7d7
Merge pull request #5422 from IvanSavenko/disposed_heroes_fix
...
[1.7] Do not allow heroes banned for player as starting heroes
2025-02-20 16:33:04 +02:00
Ivan Savenko
57f16be9a6
Merge pull request #5417 from IvanSavenko/hota_h3m
...
[1.7] Support for loading HotA 1.7.X maps and campaigns
2025-02-20 16:32:49 +02:00
Ivan Savenko
9c6be97445
Merge pull request #5411 from IvanSavenko/hw_accel_prep
...
[1.7] SDL access cleanup and encapsulation
2025-02-20 16:32:39 +02:00
Ivan Savenko
d4cdf7ed7b
Merge pull request #5146 from GeorgeK1ng/beta
...
[1.7] Added Inno Setup Installer files
2025-02-20 16:31:52 +02:00
Ivan Savenko
ad68773f81
Merge pull request #5451 from IvanSavenko/changelog_166
...
Changelog for 1.6.6
2025-02-20 15:54:56 +02:00
Ivan Savenko
9e3921be5e
Merge pull request #5452 from IvanSavenko/release_166
...
Preparation for 1.6.6 release
2025-02-20 15:49:08 +02:00
Ivan Savenko
ca8ae56965
Merge pull request #5454 from IvanSavenko/university_fix
...
Fix corrupted image of university
2025-02-20 15:43:58 +02:00
Ivan Savenko
2c351f1b1b
Changelog for 1.6.6
2025-02-20 13:39:15 +00:00
Ivan Savenko
bf0fbeca54
Merge pull request #5444 from IvanSavenko/launcher_import
...
[1.6.6] Attempt to fix one more possible import failure on Android
2025-02-20 15:10:53 +02:00
Ivan Savenko
00767b51c7
Merge pull request #5450 from IvanSavenko/secskill_update
...
[1.6.6] Update status window on receiving secondary skill
2025-02-20 15:10:31 +02:00
Ivan Savenko
05e8542a79
Fix corrupted image of university
2025-02-20 13:09:38 +00:00
Ivan Savenko
b2ea076a42
Preparation for 1.6.6 release
2025-02-19 18:00:08 +00:00
Ivan Savenko
6256e65dd4
Merge pull request #5449 from dydzio0614/polish-translation-fix
...
[1.6.6] Update polish translation
2025-02-19 19:38:14 +02:00
Ivan Savenko
28e80cb437
Merge pull request #5448 from GeorgeK1ng/czech_update
...
[1.6.6] Updated Czech translation
2025-02-19 19:38:04 +02:00
Ivan Savenko
f419a1ba2c
Merge pull request #5447 from IvanSavenko/ukrainian
...
[1.6.6] Update Ukrainian translation
2025-02-19 19:37:43 +02:00
Ivan Savenko
3c88d8a2c3
Merge pull request #5446 from IvanSavenko/stable_fix
...
[1.6.6] Fix visiting of Stables in Castle after visiting adventure map stables on the same week
2025-02-19 19:37:29 +02:00
Ivan Savenko
e51ff53ee1
Merge pull request #5445 from IvanSavenko/event_fix
...
[1.6.6] Hide events from Alt overlay
2025-02-19 19:37:18 +02:00
Ivan Savenko
811df5f8c1
Update status window on receiving secondary skill to update hero stats
2025-02-19 17:36:02 +00:00
Ivan Savenko
c59f6ca309
Update Ukrainian translation
2025-02-18 17:09:27 +00:00
Ivan Savenko
0ed42f8946
Merge pull request #5438 from Laserlicht/portmaster-build
...
[1.6.6] portmaster support
2025-02-18 16:42:27 +02:00
Ivan Savenko
fb0cd28482
Merge pull request #5440 from XCOM-HUB/patch-1
...
Update swedish.json (beta)
2025-02-18 16:40:34 +02:00
Ivan Savenko
085409bea9
Stables in Castle will now check for and give same bonuses as map stable
2025-02-18 14:35:52 +00:00
Ivan Savenko
e5332fb61a
Hide events from Alt overlay
2025-02-18 14:34:14 +00:00
Ivan Savenko
5eaa12d902
Perform check for magic header only after copying to internal dir
2025-02-18 14:33:23 +00:00
Ivan Savenko
2030ae0803
Merge pull request #5441 from Laserlicht/ger
...
[1.6.6] update german
2025-02-17 23:25:23 +02:00
Ivan Savenko
aef04236b9
Merge pull request #5430 from Laserlicht/context
...
[1.6.6] Context menu for modlist
2025-02-17 12:38:09 +02:00