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
e50f586d8b
Stabilization
2024-01-19 14:21:13 +02:00
Ivan Savenko
9af7c63a26
Fix build
2024-01-19 13:56:05 +02:00
Ivan Savenko
d5c4478816
Remove most of non-const access to VLC entities
2024-01-19 13:54:49 +02:00
Ivan Savenko
bd5682ecc3
Merge remote-tracking branch 'vcmi/master' into develop
2024-01-19 13:49:54 +02:00
Ivan Savenko
bb670cfb82
Merged accurate shot bonus into death stare bonus
2024-01-13 15:55:07 +02:00
Alexander Wilms
f3277b7953
Define each identifier in a dedicated statement
2024-01-10 00:22:23 +00:00
Ivan Savenko
6c8a587ac9
Better diagnostics of ID requests that require type, such as addInfo
2024-01-08 21:32:10 +02:00
Ivan Savenko
18227cba00
Implemented better error-reporting for issues commonly encountered by
...
modders
2024-01-07 22:35:22 +02:00
Ivan Savenko
2d8692c142
Throw "resource not found" instead of crashing on invalid query
2024-01-04 23:58:28 +02:00
Ivan Savenko
3b66701ffe
Ignore illegal 'index' entries in mods
2024-01-04 23:52:01 +02:00
Ivan Savenko
ef5686634d
Removed no longer used code
2024-01-04 23:48:58 +02:00
Ivan Savenko
bb6179d05e
Merge pull request #3391 from vcmi/master
...
Merge master -> develop
2023-12-25 13:00:17 +02:00
Ivan Savenko
6a357aaea6
Fix empty names for mods without set name (e.g. core mod)
2023-12-17 19:44:45 +02:00
kirby1
5888a20920
Add OpenBSD defines
2023-12-14 10:29:42 +03:00
Ivan Savenko
c0572b061a
Fix compile on FreeBSD
2023-12-10 19:17:24 +02:00
Ivan Savenko
c717bb5504
Always convert mod ID to lower case before using it
2023-11-19 20:44:28 +02:00
Ivan Savenko
76956cfe3a
Merge pull request #3188 from IvanSavenko/remove_identifier_implicit_int_conversion2
...
Remove implicit conversion of identifier to integer
2023-11-16 17:26:32 +02:00
Ivan Savenko
d1a4e84255
Show message about mods that failed to load on opening main menu
2023-11-15 17:57:40 +02:00
Ivan Savenko
13763cad8e
Remove few more implicit conversions
2023-11-15 15:55:19 +02:00
Ivan Savenko
eb167d94a6
Mod compatibility check is now in a separate class and not part of
...
ModHandler
2023-11-08 21:27:05 +02:00
Ivan Savenko
ad3c870fb6
Remove serialization of VLC, remove unused code
2023-11-08 21:27:05 +02:00
Ivan Savenko
3016014543
Merge pull request #3110 from IvanSavenko/mod_compat_fix
...
Mod compatibility fixes
2023-10-29 14:30:04 +02:00
Ivan Savenko
feae8b6ae4
Do not allow loading new objects into another mod namespace
2023-10-26 15:32:46 +03:00
Ivan Savenko
c202f58a15
Account for conflicts (and reverse-conflicts) when loading mods
2023-10-24 14:01:20 +03:00
Ivan Savenko
3880ea58b9
Merge branch 'josch/dos2unix' into develop
2023-10-22 18:39:03 +03:00
Ivan Savenko
3867e512f7
Merge pull request #3064 from IvanSavenko/bonus_metaidentifier
...
Type-safe bonus system
2023-10-22 18:34:12 +03:00
Ivan Savenko
b0a67a66e4
Merge pull request #3092 from IvanSavenko/compatibility_mods
...
Better support for compatibility mods
2023-10-22 18:02:45 +03:00
Ivan Savenko
31cf3442af
Update docs
2023-10-22 16:55:19 +03:00
Ivan Savenko
36a1d6c415
Removed remaining integer bonus subtypes from configs
2023-10-22 16:55:19 +03:00
Ivan Savenko
910ad50417
Fix client & server compilation
2023-10-22 16:54:48 +03:00
Ivan Savenko
7e034814c1
Partially revert "Translation" type changes to avoid breaking mods
2023-10-22 16:51:08 +03:00
Ivan Savenko
adf58fa834
Hide not installed translation mods to languages other than selected one
2023-10-22 00:07:21 +03:00
Ivan Savenko
b50ebba1ba
Added mod type "Compatibility" that is hidden in launcher
2023-10-21 23:55:20 +03:00
Ivan Savenko
b2c336de0d
JsonNode now uses std::variant internally. Fixes crash on deserialize
2023-10-21 20:41:58 +03:00
Johannes Schauer Marin Rodrigues
a1a5bc28c2
convert line endings from CRLF (Windows) to LF (Linux/Unix)
...
Mixed line endings cause problems when exporting patches with
git-format-patch and then trying to "git am" a patch with mixed and
non-matching line endings. In such a situation git will fail to apply
the patch.
This commit runs the dos2unix tools on the remaining files with CRLF
(\r\n) line endings to convert them to line-feeds (\n) only.
Files that are Windows specific like *.vcxproj and *.props files were
not converted.
Closes : #3073
2023-10-19 16:23:21 +02:00
nordsoft
98fde9ab1d
Add string IDs in map editor
2023-09-28 14:38:31 +02:00
Nordsoft91
c803b57c33
Merge pull request #2889 from Nordsoft91/mod-compatibility-check
...
Proper mod compatibility check logic
2023-09-26 19:29:46 +02:00
Ivan Savenko
8210a2cafd
Added list of all identifiers from base game
2023-09-26 15:55:27 +03:00
nordsoft
2a3e371caf
Remove any modification of enabled mods during game loading
2023-09-24 23:34:46 +02:00
nordsoft
61141a0406
Fix gcc compiling
2023-09-23 01:10:45 +02:00
nordsoft
dce1ac1538
Redesign mod incompatibility message
2023-09-23 00:32:48 +02:00
nordsoft
4691907f9c
Show root mods only
2023-09-21 22:28:29 +02:00
nordsoft
a05f8339ae
Proper mod compatibility check system
2023-09-21 04:31:08 +02:00
Ivan Savenko
f39fbe5151
Merge pull request #2757 from IvanSavenko/filesystem_refactor
...
Filesystem refactor - part 1
2023-09-07 10:51:02 +03:00
Ivan Savenko
12c4f8d18c
Fixed serialization of PlayerColor in json
2023-09-04 22:22:24 +03:00
Ivan Savenko
7e27ac7073
IdentifierStorage is now separate handler in VLC
2023-09-04 18:56:16 +03:00
Ivan Savenko
c8a6cd74cc
Additional checks for invalid access to IdentifierStorage
2023-09-04 18:56:16 +03:00
Ivan Savenko
6a260a60cf
Fix resource creation
2023-09-04 18:22:34 +03:00
Ivan Savenko
0f88b8969b
Removed some usages of std string as resource path
2023-09-04 18:22:34 +03:00
Ivan Savenko
6f0108e462
Use ResourcePath for referencing texts and json's
2023-09-04 18:22:34 +03:00
Ivan Savenko
823ffa7a07
Always use ResourcePath for referencing images and animations
2023-09-04 18:22:34 +03:00
nordsoft
8040cafb3d
Code review tweaks
2023-09-01 15:17:46 +04:00
nordsoft
15037b782f
Fix assert
2023-09-01 04:39:32 +04:00
nordsoft
e9ba1d73d1
Support partial versions
2023-09-01 04:36:53 +04:00
nordsoft
ea7ab9d5ed
Migrate launcher to vcmi versions
2023-09-01 04:12:41 +04:00
nordsoft
93f14c984d
Fix compatibility check with patch version
2023-08-28 17:49:13 +04:00
nordsoft
925bde68ff
Fix compatibility check with game version
2023-08-28 17:43:33 +04:00
nordsoft
0a6ea63b09
Revert "Add compatibility with minor version"
...
This reverts commit 6e7b13fcbe
.
2023-08-28 17:41:00 +04:00
nordsoft
6e7b13fcbe
Add compatibility with minor version
2023-08-28 16:21:46 +04:00
Ivan Savenko
e54287ea5d
Converted remaining identifier to new system
2023-08-25 13:38:02 +03:00
Ivan Savenko
62cd8b12d4
Converted several namespace enums to enum class
2023-08-25 13:38:02 +03:00
Ivan Savenko
d0b3319f6a
Merge remote-tracking branch 'vcmi/beta' into develop
2023-08-18 15:08:23 +03:00
Ivan Savenko
62fddca21e
Split massive CModHandler class/file into multiple parts:
...
- IdentifierStorage is now a separate handler in VLC
- Renamed ModHandler::Incompatibility exception to ModIncompatibility
- Extracted ModScope namespace from ModHandler
- Extracted ModUtilities namespace from ModHandler
- Split CModHandler.cpp on per-class basis
- Replaced some direct members with unique_ptr to reduce header includes
2023-07-30 22:17:47 +03:00
Ivan Savenko
8ea7e91189
moved mod-related files to new directory
2023-07-30 20:38:32 +03:00