Ivan Savenko
f8c1d217d4
Moved main loop to game engine class
2025-03-12 13:33:12 +00:00
Ivan Savenko
222b73bbcd
Simplify library initialization
2025-03-12 13:33:12 +00:00
Ivan Savenko
f7305fd1c2
Merge pull request #5540 from GeorgeK1ng/campaign_sets
...
Make campaign sets modable
2025-03-12 14:56:10 +02:00
Ivan Savenko
e5d476d9c4
Merge pull request #5538 from IvanSavenko/fix_cannonyard
...
Fixes for crashes
2025-03-12 14:55:42 +02:00
Ivan Savenko
a0e4db98b0
Merge pull request #5533 from Laserlicht/fixes_dev
...
multiple fixes
2025-03-12 14:55:12 +02:00
Ivan Savenko
d870a7b742
Merge pull request #5527 from Laserlicht/subtitle_disable
...
setting to disable subtitle
2025-03-12 14:53:59 +02:00
Ivan Savenko
e96ca4363b
Merge pull request #5521 from XCOM-HUB/patch-1
...
Update swedish.json (develop)
2025-03-12 14:52:26 +02:00
Ivan Savenko
ccfd99b316
Merge pull request #5520 from heroesiiifan/_translate_add
...
add romanian and bulgarian
2025-03-12 14:52:04 +02:00
Ivan Savenko
4df077ca1b
Merge pull request #5513 from AlexSnowLeo/develop
...
Update Mods/vcmi/Content/config/russian.json
2025-03-12 14:51:26 +02:00
Ivan Savenko
4e440e19a7
Fix build
2025-03-11 19:23:56 +00:00
Ivan Savenko
ee39aebdaa
Try to fix remaining crashes with innoextract on Android
2025-03-11 16:22:41 +00:00
Ivan Savenko
dff37ce81f
Fix freeze if AI initiates large number of async requests during turn
2025-03-11 14:58:26 +00:00
Ivan Savenko
e273263334
Fix possible crash on accessing Cannon Yard from HotA
2025-03-11 13:41:14 +00:00
Ivan Savenko
ee5cddb52c
Merge pull request #5518 from Laserlicht/fix_upgrade_all
...
[develop] fix crash, when no cost for upgrade
2025-03-08 19:21:13 +02:00
Ivan Savenko
eba3a26fca
Merge pull request #5357 from GeorgeK1ng/main_menu_1.7
...
[1.7] Main menu improvements
2025-03-08 19:20:55 +02:00
Ivan Savenko
1594be94ef
Merge pull request #5499 from IvanSavenko/lib_ptr
...
Remove most of usages of ConstTransitivePtr
2025-03-08 19:20:43 +02:00
Ivan Savenko
99c6ca7e70
Fix build
2025-03-08 16:11:59 +00:00
Ivan Savenko
62cb5412ff
CGameState::map is now a private, unique_ptr with accessors
2025-03-08 14:05:14 +00:00
Ivan Savenko
b6026084ea
StartInfo in gamestate now use unique_ptr
2025-03-08 14:04:51 +00:00
Ivan Savenko
82506d5eff
Removed ConstTransitivePtr from StackLocation
2025-03-08 14:04:51 +00:00
Ivan Savenko
a061ed04de
Remove usage of ConstTransitivePtr from CTown
2025-03-08 14:04:51 +00:00
Ivan Savenko
4a6a8f9496
Merge pull request #5496 from IvanSavenko/std_thread
...
Replace boost::thread with std::thread
2025-03-08 16:03:55 +02:00
Ivan Savenko
04f690b951
Merge pull request #5498 from IvanSavenko/netlag_prep
...
Minor refactoring of GameHandler to help with antilag support
2025-03-08 16:03:29 +02:00
Ivan Savenko
62165bd378
Merge pull request #5506 from IvanSavenko/regressions
...
Fix bonus icon loading
2025-03-08 16:03:14 +02:00
Ivan Savenko
d023a8af68
Merge pull request #5514 from Laserlicht/text_overflow
...
[develop] fix text overflow
2025-03-08 16:02:32 +02:00
Ivan Savenko
9b2fdd433e
Update swedish.ts (develop) ( #5458 )
2025-03-08 16:01:05 +02:00
Ivan Savenko
9b30016e92
Merge pull request #5507 from Laserlicht/fix_rightButtonDrag
...
[develop] fix rightButtonDrag edge case
2025-03-08 15:59:30 +02:00
Ivan Savenko
bbbfb59a71
Merge pull request #5515 from kdmcser/chinese
...
update Chinese translation
2025-03-08 15:59:11 +02:00
Ivan Savenko
9160f564bf
Fix loading of new format of mod repository
2025-03-05 13:42:36 +00:00
Ivan Savenko
9ed41d3d5c
Add schema for validation of bonus type defininitions
2025-03-05 13:42:18 +00:00
Ivan Savenko
6a828e09b9
Rename bonus instance schema to prevent name clash
2025-03-05 13:05:44 +00:00
Ivan Savenko
2fdf40e7a9
Remove connection pointer from CPack
2025-03-03 10:46:00 +00:00
Ivan Savenko
9f713a0914
Rename int3::valid to isValid for consistency
2025-03-03 10:46:00 +00:00
Ivan Savenko
0ead6a50b5
Clarify TryMoveHero netpack fields
2025-03-03 10:46:00 +00:00
Ivan Savenko
0200e871c3
Code cleanup
2025-03-02 20:39:41 +00:00
Ivan Savenko
a31788b874
Replace thread spawning with tbb pool for adventure AI
2025-03-02 19:24:24 +00:00
Ivan Savenko
219eea86ff
Better handling of AI shutdown
2025-03-02 14:33:11 +00:00
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