Commit Graph
2578 Commits
Author SHA1 Message Date
Ivan Savenko f74cd32147 Moved weekly income bonus for AI to game settings 2024-11-26 18:43:25 +00:00
Ivan Savenko 4180ea9523 Merge pull request #4274 from Xilmi/develop
Rule based AI
2024-11-26 18:32:58 +02:00
Ivan Savenko 3fb26a9775 Merge pull request #4983 from IvanSavenko/fix_freeze_on_cancel
Fix freeze on closing server before starting the game
2024-11-26 18:11:45 +02:00
Ivan Savenko ba9e3dca9d Mod management rework, part 1
- Replaced CModInfo class with constant ModDescription class
- Simplified mod loading logic
- Extracted some functionality from ModHandler into separate classes for
future reuse by Launcher
2024-11-26 13:55:46 +00:00
Xilmi b750937588 Merge remote-tracking branch 'upstream/develop' into develop 2024-11-25 18:49:45 +01:00
Ivan Savenko 14a3c6ad14 Fix freeze on closing server before starting the game
Fixes possible freeze that seems to be caused by client shutting down
socket before sending its final LobbyClientDisconnected packet, leading
to server not processing disconnection of host correctly, which in turn
causes client to wait server shutdown forever.

Looks like regression from #4722

- Fixes #4912 and its duplicates
2024-11-25 17:31:20 +00:00
Xilmi 65f2d0c44e Merge remote-tracking branch 'upstream/develop' into develop 2024-11-21 23:14:03 +01:00
Ivan Savenko aef6b0cc00 Fix several new issues detected by SonarCloud 2024-11-20 16:06:38 +00:00
Ivan Savenko f0a71c9e21 Merge pull request #4935 from IvanSavenko/misc_fixes2
Miscellaneous fixes for reported issues
2024-11-18 13:29:05 +02:00
Ivan Savenko 877d11d4c0 Merge pull request #4920 from kdmcser/fix_attack_crash
fix crash:  spell before attack kill defender will lead to crash
2024-11-18 12:56:37 +02:00
Ivan Savenko c82db9d574 Fix crash on rearranging troops on non-owned hero 2024-11-17 17:38:54 +00:00
kdmcser 7cb8ca174e fix crash: defender is killed by spell before attack, but attacker still do attack action 2024-11-17 01:00:23 +08:00
Ivan Savenko c3b63a1bef Merge pull request #4857 from Laserlicht/delete
Delete saves / random maps
2024-11-16 17:28:23 +02:00
Laserlicht b23c69b9d6 code review 2024-11-15 20:26:56 +01:00
Ivan Savenko 7be44278d7 Merge pull request #4892 from SoundSSGood/artifact-related-fixes
Artifact related fixes
2024-11-13 20:58:37 +02:00
SoundSSGood ef46a87e69 ask assemble artifact dialog fix 2024-11-10 16:50:58 +02:00
kdmcser 77d14d095f delete error message since grail will go to last branch 2024-11-10 10:52:00 +08:00
kdmcser e12b72a839 merge changes 2024-11-09 17:37:06 +08:00
kdmcser 5f4a5228ce Merge branch 'develop' into artifact_sort_fix 2024-11-09 17:34:43 +08:00
kdmcser 8d58066f69 fix artifact sort by slot crash 2024-11-09 17:24:14 +08:00
kdmcser 17dd8ffb48 fix artifact sort by slot crash 2024-11-09 16:54:47 +08:00
Xilmi a70f5de8c6 Merge remote-tracking branch 'upstream/develop' into develop 2024-11-07 14:35:13 +01:00
Laserlicht 0e5711f8bf Merge branch 'develop' into delete 2024-11-06 23:28:57 +01:00
Ivan Savenko e9690c8c54 Merge branch 'develop' into autosave_name 2024-11-06 22:06:12 +02:00
Laserlicht b06efa2d13 delete folder 2024-11-01 01:16:01 +01:00
Laserlicht 164aac4db2 refresh list 2024-11-01 00:52:19 +01:00
Laserlicht 1f0847660b possibility to delete unsupported saves 2024-10-31 21:57:20 +01:00
Laserlicht 452762cd78 change datetime format 2024-10-30 23:23:56 +01:00
Ivan Savenko a39469d165 Add save compatibility 2024-10-30 16:57:03 +00:00
Ivan Savenko 01d787fb5a Removed remaining cases of serialization of VLC entities 2024-10-30 16:48:18 +00:00
Ivan Savenko d3af9f1c67 Removed pointer to VLC entity from CStackBasicDescriptor 2024-10-30 16:47:02 +00:00
Ivan Savenko c98ac01e7a Replaced public artType member of ArtifactInstance with getter 2024-10-30 16:47:01 +00:00
Ivan Savenko 04ca8aca9f Update tests 2024-10-30 16:22:12 +00:00
Ivan Savenko 08fbcd5239 TerrainTile now uses identifiers instead of pointers to VLC 2024-10-30 16:22:11 +00:00
Xilmi ffd8758017 Merge remote-tracking branch 'upstream/develop' into develop 2024-10-28 17:49:08 +01:00
DjWarmonger 59a15c5ff0 Merge pull request #4790 from kodobi/bugfix/fix-incorrect-battlefield-while-attacking-town-without-fort
Fix battle setup for sieges without forts
2024-10-28 08:38:14 +01:00
Xilmi 5d6877e06d Merge remote-tracking branch 'upstream/develop' into develop 2024-10-20 00:49:17 +02:00
kodobiandDydzio 3c56769b2a Update server/battles/BattleProcessor.cpp
Co-authored-by: Dydzio <dydzio0614@users.noreply.github.com>
2024-10-17 15:21:06 +02:00
kodobi c576438a95 Fix battle setup for sieges without forts
- Update the if statement in BattleProcessor::SetupBattle to allow
  obstacles in battlefields during sieges without forts.
- Ensure towns without forts use the native battlegrounds.
- Refactor variable name from curB to currentBattle for clarity.
2024-10-17 14:54:01 +02:00
Ivan Savenko c25aef8f48 Merge pull request #4766 from SoundSSGood/fused-artifacts
Fused artifacts
2024-10-16 15:08:20 +03:00
Ivan Savenko 604e3b5c67 Merge pull request #4763 from IvanSavenko/herohandler_split
Split CHeroHandler.cpp/.h into 1 file per class
2024-10-14 19:05:48 +03:00
Ivan Savenko 678e6b47f8 Merge pull request #4756 from IvanSavenko/sonar_fixes
Fix some of the new warnings from sonarcloud
2024-10-14 18:16:41 +03:00
Ivan Savenko 10ad0fc760 Split CHeroHandler.cpp/.h into 1 file per class
All parts of CHeroHandler.cpp are now in lib/entities/hero
Adjusted includes to use new paths
No functionality changes
2024-10-13 14:01:09 +00:00
SoundSSGood d4d3ddf685 fused artifacts 2024-10-12 16:43:04 +03:00
Xilmi 533806df6d Merge remote-tracking branch 'upstream/develop' into develop 2024-10-11 19:07:56 +02:00
Ivan Savenko 115439f16a Fix town events not actually giving offered creatures 2024-10-11 15:01:18 +00:00
Ivan Savenko a8e84c55f6 Fix some of the new warnings from sonarcloud 2024-10-11 10:45:29 +00:00
Xilmi 61fba1fedd Merge remote-tracking branch 'upstream/develop' into develop 2024-10-10 17:23:39 +02:00
Ivan Savenko 3dd4fa2528 Reduce usage of pointers to VLC entities
Final goal (of multiple PR's) is to remove all remaining pointers from
serializeable game state, and replace them with either identifiers or
with shared/unique pointers.

CGTownInstance::town and CGHeroInstance::type members have been removed.
Now this data is computed dynamically using subID member.

VLC entity of a town can now be accessed via following methods:
- getFactionID() returns ID of a faction
- getFaction() returns pointer to a faction
- getTown() returns pointer to a town

VLC entity of a hero can now be accessed via following methods:
- getHeroTypeID() returns ID of a hero
- getHeroClassID() returns ID of a hero class
- getHeroType() returns pointer to a hero
- getHeroClass() returns pointer to a hero class
2024-10-10 12:28:08 +00:00
Ivan Savenko 81f0222c68 Merge pull request #4741 from IvanSavenko/serialize_local_state
Serialize local state of player interface
2024-10-10 15:03:14 +03:00