139f41c9b2
Implement STACK_EXPERIENCE_GAIN_PERCENT bonus
...
Suggested on Discord
- implements STACK_EXPERIENCE_GAIN_PERCENT that modifies stack
experience received by units after combat
- removed "EXPERIENCE" primary skill. Changes to experience are now
applied through separate netpack
2025-06-02 21:21:20 +03:00
cc6f65d8da
Resolve Sonar issues in server code
2025-05-27 22:02:13 +03:00
1666a5a7e5
Prefer dynamic_cast to unsafe static_cast, fix Sonar
2025-05-23 14:17:43 +03:00
aa9b13b66a
Statistics is now managed as part of CGameHandler
2025-05-23 14:17:42 +03:00
af20b39fe6
Reduce non-const access to gamestate on server
2025-05-23 14:17:25 +03:00
8255a4b9ae
CGameHandler no longer inherits CGameInfoCallback, reduce direct access
...
to gamestate
2025-05-23 14:17:25 +03:00
550d4d76eb
Merge pull request #5730 from IvanSavenko/rewardable_creature_fix
...
Fix handling of creatures in configurable town buildings
2025-05-21 13:51:43 +03:00
07662a070f
Merge pull request #5724 from IvanSavenko/randomization
...
Better randomization logic
2025-05-21 13:50:28 +03:00
323231fc30
Merge pull request #5720 from SoundSSGood/artifact-charges
...
Charged artifacts
2025-05-21 13:49:14 +03:00
95ce9ce509
Fix handling of creatures in configurable town buildings
...
- Fixed removal of partial stacks of creatures
- It is now possible to give units via town building, but only if
visitor has slots to take them
2025-05-20 22:36:20 +03:00
cc274c4d34
GameRandomizer is now in lib, add implementation
2025-05-19 18:51:42 +03:00
54a46b77a9
Extract library entity randomization logic to separate class
2025-05-19 18:51:42 +03:00
ed8ba52ed8
Merge pull request #5722 from IvanSavenko/wandering_month_fix
...
Fix crash on spawning wandering monsters on new month
2025-05-19 14:44:58 +03:00
57f0c5f50c
Fix crash on spawning wandering monsters on new month
2025-05-18 11:05:13 +03:00
e85b1d4c1c
suggested changes
2025-05-17 19:01:04 +02:00
051381d4db
Docs
2025-05-17 15:06:09 +02:00
456525109e
Replaced undescriptive bool true/false with more clear enum for
...
absolute/relative change via netpacks
2025-05-16 17:21:39 +03:00
a13806a0df
Fix build
2025-05-15 16:58:16 +03:00
4d4da0454f
map objects hierarchy now uses IGameInfoCallback
2025-05-14 18:33:20 +03:00
6f20235d07
Merge CPrivilegedInfoCallback into CGameInfoCallback
2025-05-14 13:42:20 +03:00
716da918f8
Completely remove IGameCallback class
...
- CClient now inherits directly from CPrivilegedInfoCallback, like
IGameCallback did before. However CClient no longer needs dummy
implementation of IGameEventCallback
- CGObjectInstance hierarchy now uses CPrivilegedInfoCallback for
callback. Actual events can only be emitted in calls that receive
IGameEventCallback pointer, e.g. heroVisit
- CGameHandler now inherits directly from both CPrivilegedInfoCallback
and IGameEventCallback as it did before via IGameCallback
2025-05-14 13:39:41 +03:00
35644da2b7
Reogranize callback-related classes on 1 file = 1 class basis
2025-05-12 22:07:09 +03:00
0e2ea99283
Implemented option to emulate H3 seer hut full-army quest bug
2025-05-07 19:16:58 +03:00
283adc37d7
Unit stack rebalancing rework
...
- CStackInstance::count is now private with accessor methods
- CStackInstance::experience renamed to totalExperience and now stores
total stack experience (multiplied by stack size) to reduce rounding
errors
- CStackInstance::totalExperience is now private with accessors methods
- stack experience is now automatically reallocated on stack management
- Removed buggy BulkSmartRebalanceStacks pack, that mostly duplicates
BulkRebalanceStacks
- Renamed BulkSmartSplitStack to BulkSplitAndRebalanceStack to drop
unclear "smart" in name
- Reworked split-and-rebalance logic to correctly reallocate stack
experience
2025-05-01 18:18:30 +03:00
4d57a8ed36
Prefer to pass CGameState as reference instead of pointer
2025-04-27 14:57:31 +03:00
ce436bd63e
Fix regressions in combat
2025-04-27 14:57:31 +03:00
6d65641a43
Gamestate is now passed as shared pointer
2025-04-27 14:57:30 +03:00
0ada2a5ebd
Map objects now use shared_ptr (game)
2025-04-27 14:57:30 +03:00
4609a83fc1
ArtInfoWindow on client. Lib side
2025-04-05 18:02:04 +02:00
2b286378e8
Remove logic for banks in 1.5 format
2025-03-19 08:02:39 +00:00
2fdf40e7a9
Remove connection pointer from CPack
2025-03-03 10:46:00 +00:00
a8e84c55f6
Fix some of the new warnings from sonarcloud
2024-10-11 10:45:29 +00:00
c0f5c7c0ea
Replace pointer with reference in pack apply functions
2024-10-07 14:59:46 +00:00
48fb58e7a0
Replace few more pointers with references, remove manual delete call
2024-10-07 14:59:14 +00:00
ee831c06e7
Reduced usage of CPack, replaced with CPackForServer where applicable
2024-10-07 14:59:14 +00:00
f6f6f98580
Merge pull request #4699 from SoundSSGood/backpack-arts-sorting
...
Backpack artifacts sorting
2024-10-07 17:55:42 +03:00
a826b88641
Merge branch 'develop' into spell
2024-10-07 12:55:23 +02:00
e22d15b1d8
manageBackpackArtifacts
2024-10-02 12:45:50 +03:00
d929bfb9d1
rename; introduce factor
2024-09-28 15:05:13 +02:00
5b2aa4dc71
swapping spells
2024-09-28 00:34:25 +02:00
857b2e9a35
spell replacement works
2024-09-27 23:52:33 +02:00
a9327b3fa3
netpacks
2024-09-27 22:47:22 +02:00
b9ae7f1138
CMap put move and remove artifact method
2024-09-23 23:30:38 +03:00
bff2e064fc
Wait for queries generated by town building visit to end before visiting
...
next building
2024-09-16 19:32:39 +00:00
39a2c29c97
Removed creatureBank flag from battle, battles now receive BattleLayout
...
struct that defines how units are placed in combat
2024-09-12 12:11:18 +00:00
6179521364
Merge pull request #4556 from IvanSavenko/town_building_visit
...
Implemented explicitly visitable town buildings, e.g. hota mana vortex
2024-09-05 17:21:21 +03:00
7466d7452d
vcmiscrolls
2024-09-05 15:51:45 +03:00
b09d9d501b
Pass pointer to actual caller in showBlockingDialog callWith
...
Fixes activation of all rewardable buildings in town on blocking dialog
answer
2024-09-04 15:14:56 +00:00
d34b4a141e
Split map object visit from town building visit. Removes side effects
...
from building visit
2024-09-04 14:54:09 +00:00
327ff01471
Implemented explicitly visitable town buildings, e.g. hota mana vortex
...
Added flag `manualHeroVisit` flag to town building. If this flag is set,
then building will only be activated on click and will not give its
effect on hero recrutiment, hero visit, or new day.
This allows implementing changes to Mana Vortex from HotA
2024-09-03 16:31:07 +00:00