Ivan Savenko
f8724b9558
Reworked mod handling in Launcher in order to unify code with lib
2024-11-26 13:55:46 +00:00
Ivan Savenko
4945370fe3
Implemented validation of preset - removal of non-existing mods,
...
addition of newly installed mods
2024-11-26 13:55:46 +00: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
Ivan Savenko
c57120f0dd
Initial support for mod presets system
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
a58d48e03d
Merge pull request #4980 from IvanSavenko/hero_randomization_fix
...
Fix Orrin as starting hero on some maps
2024-11-25 14:28:55 +02:00
Ivan Savenko
eb14eff13c
Merge pull request #4975 from Laserlicht/third_upgr_8th_dwelling
...
third upgrade for 8th dwelling
2024-11-25 13:46:36 +02:00
Ivan Savenko
5aa0a0d5b8
Merge pull request #4966 from vcmi/speciall_secondary_skill
...
Add "special" property for secondary skills
2024-11-25 13:44:59 +02:00
Ivan Savenko
72fcf4473a
Merge pull request #4962 from Laserlicht/prism_breath_fix
...
prism attack fix
2024-11-25 13:41:57 +02:00
Ivan Savenko
7d8b753971
Merge pull request #4951 from IvanSavenko/sonar_fix
...
Fix several new issues detected by SonarCloud
2024-11-25 13:39:56 +02:00
Ivan Savenko
6544f6d6a6
Merge pull request #4944 from IvanSavenko/market_fix
...
Fixes for configurable markets support
2024-11-25 13:39:20 +02:00
Ivan Savenko
1116c18af5
Fix Orrin as starting hero on some maps
...
Fixes a bug that led to Orrin being replaced with a different randomly
selected hero on maps where starting hero is not generated in town, but
pre-placed on map
2024-11-24 20:05:34 +00:00
Laserlicht
b29d7e8cfd
third upgrade for 8th dwelling
2024-11-24 17:57:49 +01:00
Tomasz Zieliński
9e6cd9b94d
Add "special" property for secondary skills
2024-11-23 12:37:30 +01:00
Tomasz Zieliński
6bdb10444f
New type of zone - "sealed"
2024-11-23 12:19:25 +01:00
Tomasz Zieliński
e5b151991b
Fix duplicated offroad connections
2024-11-23 10:43:14 +01:00
Tomasz Zieliński
c8e3458dfb
Handle connections by unique id
2024-11-23 10:07:34 +01:00
Tomasz Zieliński
c8fcc6ffca
Fix broken roads to portals or gates by the lower zone border
2024-11-23 08:25:55 +01:00
Laserlicht
3c4064e09d
prism attack fix
2024-11-23 02:10:01 +01:00
Tomasz Zieliński
f95bb58433
Implement curved paths for all road node objects
2024-11-22 09:28:37 +01:00
Xilmi
65f2d0c44e
Merge remote-tracking branch 'upstream/develop' into develop
2024-11-21 23:14:03 +01:00
Tomasz Zieliński
9277c5f4e7
Fixed main issue with custom path routing
2024-11-21 22:30:21 +01:00
Tomasz Zieliński
855ab0f0e9
First attempt to enforce curved paths
2024-11-21 22:00:24 +01:00
Ivan Savenko
aef6b0cc00
Fix several new issues detected by SonarCloud
2024-11-20 16:06:38 +00:00
Ivan Savenko
f59834afe1
Fixes for configurable markets support
...
- string "speech" can now be translated
- removed "title" string, VCMI will now use object name instead
- moved configuration of all "markets" into a separate json file
- added schema for validation of market objects
- removed serialization of translated strings from University
2024-11-20 15:45:13 +00:00
Ivan Savenko
03273ed324
Merge pull request #4943 from IvanSavenko/levelup_fix
...
Fix possible crash on levelup when hero can only levelup banned skills
2024-11-20 14:38:43 +02:00
Ivan Savenko
a7a9f5d777
Fix possible crash on levelup when hero can only levelup banned skills
2024-11-19 14:39:40 +00:00
MichalZr6
f823b8addf
Following review
2024-11-19 10:57:20 +01:00
MichalZr6
ab1f1d6d99
Fix crash on miniHillFort popup window
2024-11-19 10:53:16 +01:00
MichalZr6
7e2cad158a
HillFort fix
2024-11-19 10:53:16 +01: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
86517ab1c0
Merge pull request #4926 from Kuxe/fix_mingw_date_formatting_error
...
Fix MinGW date formatting error
2024-11-18 13:09:36 +02:00
Ivan Savenko
43117396bd
Merge pull request #4923 from Kuxe/mingw_compilation_fix
...
MinGW debug compilation error fix 'too many sections'
2024-11-18 12:57:02 +02:00
Ivan Savenko
dfe6e04464
Implemented semi-transparent spell effects
2024-11-17 19:48:16 +00:00
Ivan Savenko
0c4eb5156b
Put imprisoned heroes back to prison
2024-11-17 18:07:28 +00:00
Ivan Savenko
51c5536b50
Banned skills known by hero now have non-zero selection chance
2024-11-17 17:55:09 +00:00
Ivan Savenko
c82db9d574
Fix crash on rearranging troops on non-owned hero
2024-11-17 17:38:54 +00:00
Ivan Savenko
56ee307b3a
Extend AI garrison troop removal logic to all RoE campaigns to emulate
...
H3 logic
2024-11-17 17:38:54 +00:00
Ivan Savenko
4ccce20eda
War machines factory are now never guarded by default
2024-11-17 17:38:54 +00:00
Joakim Thorén
1fc04f5ea8
Updated out-of-date comment
2024-11-17 00:14:54 +01:00
Joakim Thorén
db93f776c6
Fix MinGW date formatting error, see https://sourceforge.net/p/mingw-w64/bugs/793/ . Workaround is to replace %F with %Y-%m-%d and %T with %H:%M:%S, should produce the same output as before per https://en.cppreference.com/w/cpp/io/manip/put_time
2024-11-17 00:02:13 +01:00
Joakim Thorén
dc1908ad2a
Use -Wa,-mbig-obj instead of -Og to retain debuggability in SerializerReflection.cpp and IGameCallback.cpp files
2024-11-16 22:46:27 +01:00
Joakim Thorén
89d7776775
fix compilation error due to 'too many sections' for MinGW debug builds on Windows
2024-11-16 22:41:05 +01:00
Ivan Savenko
4ae81cbac0
Add missing field to serialization
2024-11-16 16:23:02 +00:00
Ivan Savenko
227e403e88
Fix crash on advancing to 3rd scenario of Birth of Barbarian campaign -
...
spellbook removal was not working correctly when hero does not keeps his
spells
2024-11-16 16:22:43 +00:00
Ivan Savenko
a4ef45c4f8
Move list of war machines in war machine factory to config
2024-11-16 15:32:52 +00: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
Laserlicht
0f94f35dcf
code review
2024-11-14 00:34:39 +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
Xilmi
31d4517f17
Merge remote-tracking branch 'upstream/develop' into develop
2024-11-12 14:31:31 +01:00
SoundSSGood
b32ec8607c
tradable grail
2024-11-10 21:48:54 +02:00
SoundSSGood
ea14760e6c
fix for fused artifacts creation
2024-11-10 17:06:39 +02:00
SoundSSGood
ef46a87e69
ask assemble artifact dialog fix
2024-11-10 16:50:58 +02:00
krs
54f8f2c636
Remove CCreatureHandler::loadBonuses
2024-11-10 15:10:38 +02:00
Xilmi
2786797a4e
Fixed incompatibility with latest merge
...
Incompatibility fix
2024-11-07 17:37:18 +01:00
Xilmi
e60a565942
Merge remote-tracking branch 'upstream/develop' into develop
2024-11-07 15:24:19 +01:00
Xilmi
a70f5de8c6
Merge remote-tracking branch 'upstream/develop' into develop
2024-11-07 14:35:13 +01:00
Ivan Savenko
733b1b339c
Remove broken automatic addition of dependency for wog maps
2024-11-07 12:08:28 +00:00
Ivan Savenko
c3c5f73a63
Restore save compatibility with 1.5
2024-11-07 12:08:08 +00:00
Ivan Savenko
b9ff192a91
Fix regressions from previous PR
2024-11-07 12:07:45 +00:00
Ivan Savenko
697d63d2b8
Reworked and fixed gendered hero sprites on adventure map
2024-11-07 10:39:23 +00:00
Ivan Savenko
8cd19f639f
Added validation of flaggable objects
2024-11-07 10:39:23 +00: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
Ivan Savenko
e7bea6c3b8
Merge pull request #4852 from IvanSavenko/remove_vlc_entities_serialization
...
Remove remaining pointers to VLC entities from serializer
2024-11-06 22:01:11 +02:00
Ivan Savenko
a2c2b28dfe
Merge pull request #4859 from IvanSavenko/map_encoding_fix
...
Fix selection of encoding from maps
2024-11-06 22:00:59 +02:00
Ivan Savenko
ee88cfa150
Fix selection of encoding from maps
...
Fixes typo from previous PR
2024-11-01 13:40:29 +00: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
Ivan Savenko
e45be3c5e6
Merge pull request #4850 from IvanSavenko/object_descriptions
...
Implemented optional descriptions for market map objects
2024-10-31 16:58:14 +02:00
Ivan Savenko
6056d385ed
Always load json configs from mod that references it
...
This should fix rather common problem with mods, where two unrelated mods
accidentally use same file name for a config file, leading to very unclear
conflict since this result in a file override.
Now all config files referenced in mod.json are loaded specifically from
filesystem of mod that referenced it. In other words, it is no longer
possible for one mod to override config from another mod.
As a side effect, this allows mods to use shorter directory layout, e.g.
`config/modName/xxx.json` can now be safely replaced with `config/
xxx.json` without fear of broken mod if there is another mod with same
path to config. Similarly, now all mods can use `config/translation/
language.json` scheme for translation files
Since this is no longer a problem, I've also simplified directory layout
of our built-in 'vcmi' mod, by moving all files from `config/vcmi`
directory directly to `config` directory.
- Overrides for miscellaneous configs like mainmenu.json should works as
before
- Images / animations (png's or def's) work as before (and may still
result in confict)
- Rebalance mods work as before and can modify another mod via standard
`modName:objectName` syntax
2024-10-31 14:49:11 +00:00
Ivan Savenko
0969871835
Merge branch 'develop' into mechanical_bonus
2024-10-31 15:14:51 +02:00
Ivan Savenko
e714a02063
Merge pull request #4849 from IvanSavenko/map_encoding
...
Better handling of encoding detection for maps and campaigns
2024-10-31 15:07:36 +02:00
Xilmi
63097968d3
Merge remote-tracking branch 'upstream/develop' into develop
2024-10-31 12:29:37 +01:00
Laserlicht
452762cd78
change datetime format
2024-10-30 23:23:56 +01:00
Ivan Savenko
d39dad6cb4
Fix build
2024-10-30 17:03:48 +00:00
Ivan Savenko
a39469d165
Add save compatibility
2024-10-30 16:57:03 +00:00
Ivan Savenko
c4481f3797
Remove logic for serialization of VLC entities
2024-10-30 16:48:19 +00:00
Ivan Savenko
01d787fb5a
Removed remaining cases of serialization of VLC entities
2024-10-30 16:48:18 +00:00
Ivan Savenko
c1e125b186
Remove CStack::type pointer to VLC entity
2024-10-30 16:47:02 +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
Ivan Savenko
dd7d190a58
Implemented optional descriptions for market map objects
...
It is now possible to define description of an object with 'market'
handler that will be shown on right-clicking the object.
Similarly, added description to right-click popup to Hill Fort.
2024-10-30 13:20:21 +00:00
Ivan Savenko
f8b1f40abb
Merge pull request #4348 from MichalZr6/hill_fort_changes
...
Hill Fort unavailable upgrade and status bar new messages
2024-10-30 14:00:35 +02:00
Ivan Savenko
22f517686d
Better handling of encoding detection for maps and campaigns
...
Now VCMI will use either preferred language or install language to load
maps and campaigns that are part of "core" mod, or, in other words -
placed in Maps directory of H3 data (like most of manually downloaded
maps and campaigns are)
If game data is in English, then game can safely use encoding of player-
selected language (such as Chinese) to load maps. After all, both GBK
and all Win-125X encoding are superset of ASCII, so English map will
always load up correctly.
Maps that are part of a mod still use mod language as before - it is up
to mod maker to correctly set up mod language.
2024-10-30 11:54:35 +00:00
Ivan Savenko
f12119f86c
Merge pull request #4812 from SoundSSGood/secSkillPlace
...
[Hota] SeafaringAcademy. Initial PR
2024-10-30 13:33:39 +02:00
Ivan Savenko
88a9890b56
Merge pull request #4837 from godric3/map-editor-set-hero-patrol-radius
...
Possibility to set hero patrol radius in map editor
2024-10-30 13:32:25 +02:00
Ivan Savenko
c1c9e2e4f0
Merge pull request #4820 from kdmcser/softDenpendency
...
add support for soft dependencies
2024-10-30 13:31:46 +02:00
godric3
9e9f118b09
another attempt of using CGHeroInstance::NO_PATROLLING
in map editor
2024-10-29 21:41:42 +01:00
godric3
ed087b7a5b
Use max ui32 value instead of -1 for NO_PATROLLING
2024-10-29 18:34:02 +01:00
Andrzej Żak
42738e20a4
Update lib/mapObjects/CGHeroInstance.h
...
Co-authored-by: Andrey Filipenkov <kambaladecapitator@gmail.com>
2024-10-29 08:26:31 +01:00
godric3
da5bae301a
try to fix build, use plain -1
in place of CGHeroInstance::NO_PATROLLING
2024-10-28 22:46:48 +01:00
godric3
56efb82b2e
try to fix build, separate definition of NO_PATROLLING in CGHeroInstance
2024-10-28 21:49:25 +01:00
godric3
394812c02a
try to fix build, use inline constexpr
2024-10-28 20:58:36 +01:00
SoundSSGood
1fcd750774
suggested changes
2024-10-28 21:58:35 +02:00
godric3
a9e04428c8
Possibility to set hero patrol radius in map editor
2024-10-28 18:30:30 +01:00
Xilmi
ffd8758017
Merge remote-tracking branch 'upstream/develop' into develop
2024-10-28 17:49:08 +01:00