Ivan Savenko
2a193effcc
Merge branch 'master' into 'develop'
2024-01-25 16:23:13 +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
24d25730ad
Changed checks for null with checks for hasValue
2024-01-20 16:41:10 +02:00
Ivan Savenko
6e629a6a5f
split getBonusLocalFirst into two distinct method:
...
- const method getFirstBonus that returns single matching bonusToString
- non-const method getLocalBonus that returns bonus from current node
2024-01-19 13:56:06 +02:00
Ivan Savenko
a32ef673f7
Merge pull request #3482 from IvanSavenko/extend_hota_bonuses
...
Extend hota bonuses
2024-01-15 13:47:13 +02:00
Ivan Savenko
0d0d3d8c80
Renamed speed -> getMovementRange, remove misleading default parameter
2024-01-14 17:14:36 +02:00
Ivan Savenko
5565b55bb0
Fixed handling of SPELL_AFTER_ATTACK without addInfo field
2024-01-14 17:13:33 +02:00
Ivan Savenko
fc6a9924ee
FIRST_STRIKE now supports ranged / melee subtypes, BLOCKS_RETALIATION
...
will properly block FIRST_STRIKE
2024-01-13 16:54:06 +02:00
Ivan Savenko
bb670cfb82
Merged accurate shot bonus into death stare bonus
2024-01-13 15:55:07 +02:00
Ivan Savenko
f6e0f46040
Merge pull request #3467 from dydzio0614/hota-fixes
...
Fix HotA creature abilities (add bonuses allowing implementing them)
2024-01-12 21:55:18 +02:00
M
9ee526d202
Fixes from code review
2024-01-11 21:10:22 +01:00
M
3a83de5e70
Simplified code a bit
2024-01-10 23:56:32 +01:00
M
bf7c6a4c3f
Extract method for death stare / accurate shot, fix translation key
2024-01-10 23:23:10 +01:00
Dydzio
3c95f92c59
Update documentation
2024-01-07 21:22:10 +01:00
Dydzio
5dac8e2bbf
Extract spell layers processing into separate method
2024-01-07 21:05:55 +01:00
Dydzio
310802ed87
Second version of spell layers bonus extension
2024-01-07 20:48:03 +01:00
Dydzio
bb925e4cb0
First version of sea witch / sorceress ability
2024-01-07 19:27:32 +01:00
Dydzio
b32c7beb05
Make one common handler for death stare and accurate shot
2024-01-06 18:26:13 +01:00
Ivan Savenko
cf47fbb729
Merge pull request #3435 from IvanSavenko/bugfixing
...
[1.4.3] Bugfixing
2024-01-06 13:06:07 +02:00
Ivan Savenko
c828ccf5f4
Fix transmutation bonus activation
2024-01-05 19:39:38 +02:00
Ivan Savenko
296310e32e
Fix check for opponent side for mana drain
2024-01-05 17:56:00 +02:00
Ivan Savenko
b5307948c5
Fix crash on summon guardians ability
2024-01-05 15:47:25 +02:00
Ivan Savenko
edb2ecd751
Fix possible overflow errors on leveling up beyond int64_t limit
...
- added separate giveExperience method instead of weird changePrimSkill
- experience is now always used in form of int64_t
- max supported level reduced from 201 to 197 to fit into int64_t
- fixed undefined behavior in experience calculation
2024-01-04 23:57:36 +02:00
Ivan Savenko
ceea341bb0
Fix crash on attempt to dereference invalid subtype in bonus
2024-01-04 23:54:35 +02:00
Dydzio
7283a4861e
Initial version of ACCURATE_SHOT implementation
2024-01-04 22:27:51 +01:00
Dydzio
7cf7543747
Configurable ferocity bonus
2024-01-01 21:16:38 +01:00
Dydzio
898b8f3c71
Add initial version of Ferocity ability (for Ayssids)
2024-01-01 19:58:32 +01:00
Ivan Savenko
85de3143ff
Fixed Genie spellcasting logic to account for spell immunities
2023-12-24 01:13:19 +02:00
Ivan Savenko
a7c838036d
Workaround to avoid crash on invalid bonus
2023-12-10 16:32:43 +02:00
Ivan Savenko
9a52131c82
Use battle side instead of player color for fire shield damage formula
2023-12-09 18:48:53 +02:00
Ivan Savenko
6b81012f31
Use variant identifier in netpacks where applicable
2023-11-08 14:00:23 +02:00
Ivan Savenko
86a3806bec
MetaString refactor to eliminate integer usage for identifiers
...
- entity names are now stored and serialized as text ID's
- added helper methods for convenience to get entities names to
metastring
2023-11-07 22:47:10 +02:00
Ivan Savenko
184f5a72cc
Use toEntity/toXXX methods in Identifier instead VLC objects access
2023-11-03 16:03:29 +02:00
Ivan Savenko
10e50548e7
Converted Component class to use VariantIdentifier instead of int
2023-11-02 12:00:04 +02:00
Ivan Savenko
7107b3202f
Merge pull request #3069 from SoundSSGood/artifact-location-id
...
ArtifactLocation now use ID for artHolder identification
2023-11-01 14:41:36 +02:00
SoundSSGood
7e6ab5e87b
fix test & fix build & suggested changes
2023-10-29 17:46:14 +02:00
SoundSSGood
3c5527a222
ArtifactLocation now use ID for artHolder identification part3
2023-10-29 17:46:13 +02:00
SoundSSGood
ab2f6abb87
ArtifactLocation now use ID for artHolder identification part2
2023-10-29 17:46:13 +02:00
Alexander Wilms
5cbc75d3b7
Merge remote-tracking branch 'upstream/develop' into develop
2023-10-29 13:35:37 +00:00
Ivan Savenko
e2cffd4c7b
Merge pull request #3118 from rilian-la-te/glamor-slight-bonus-fixes
...
Small bonus fixes
2023-10-29 15:23:07 +02:00
Ivan Savenko
720a404e20
Merge pull request #3121 from vcmi/fix-fight-in-dwelling
...
BattleAI: fix freeze fighting in dwelling
2023-10-29 15:22:47 +02:00
Andrii Danylchenko
3025785839
BattleAI: fix freeze fighting in dwelling
2023-10-29 09:29:57 +02:00
Konstantin
f6b03201db
BattleAction: handle obstacle for standing units
2023-10-28 18:34:11 +03:00
Alexander Wilms
cc8cc11da3
server/battles/BattleFlowProcessor.cpp: Called C++ object pointer is null
...
Null pointers should not be dereferenced
2023-10-27 23:40:55 +00:00
Ivan Savenko
5cbf5031ea
move SetStackEffect to a separate file
2023-10-24 01:27:52 +03:00
Ivan Savenko
5523f05284
Moved ArtifactLocation to a separate file
2023-10-23 19:02:28 +03:00
Ivan Savenko
b88a8da4e8
Split off some netpack structures into separate files
2023-10-23 13:59:15 +03:00
Ivan Savenko
ac925bb786
Renamed new types for consistency with code style
2023-10-22 16:55:19 +03:00
Ivan Savenko
80e6485965
MetaIdentifier now uses std::variant internally
2023-10-22 16:55:19 +03:00
Ivan Savenko
b394158dc9
Bonus Source ID now uses metaidentifier
2023-10-22 16:55:18 +03:00