01396b62b7
Extracted handling of type ID's from serializer into a separate class
2024-08-26 19:48:46 +00:00
232a759db7
Remove type registration from library pack applying
2024-08-26 19:48:46 +00:00
97f1a310df
Fix miscellaneous issues discovered by Sonar
2024-08-12 18:26:30 +00:00
48c92711f2
Fixed deserialization of new artifacts (and possibly some other objects)
...
Was broken in my previous PR, since pointer graph serialization was
enabled by default, leading to deserializationFix triggering on netpack
apply.
Cleaned up / clarified code
2024-07-29 18:19:15 +00:00
31738e8f90
Always track already serialized pointers to avoid infinite recursion on
...
sending complex objects
2024-07-20 18:29:41 +00:00
8754e0ebb3
Code formatting and cleanup
2024-05-17 17:10:29 +00:00
69e33e406d
Try to minimize dll linkage usage
2024-05-17 13:09:45 +00:00
2ed355952c
Added proper serialization for unordered_map
2024-05-16 19:03:04 +00:00
42f7a48fa4
Simplified integer serialization code
2024-05-16 18:53:49 +00:00
84bc6c42db
Added 'Serializeable' base class for classes serializeable by pointer
2024-05-16 18:40:59 +00:00
cce3f1cb2d
Implemented compact serialization of integer numbers
2024-05-15 19:50:01 +00:00
87eac164e6
Implemented string deduplication for serializer
...
Every unique string will now be serialized only once.
Reduces save size by ~20%
2024-05-15 19:49:59 +00:00
5b182c31df
Add 'hasFeature' method for convenience
2024-05-15 19:49:34 +00:00
9c334f54fe
Fix: 9 typos
...
Signed-off-by: RoboSchmied <github@roboschmie.de >
2024-03-28 03:03:44 +01:00
d143f53d7e
using deque for hero's backpack storage
2024-03-07 18:16:21 +02:00
ea48257100
Fix SonarCloud issues
...
Replace the use of "::value" with "std::is_abstract_v" and similar issues
2024-03-02 14:08:03 +01:00
03fcfe3392
Use std::byte in serializer
2024-02-02 13:09:12 +02:00
9f3655c41b
Minor code cleanup
2024-01-20 23:26:04 +02:00
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
ea1f05d15a
Stabilization
2024-01-19 13:55:22 +02:00
60ffb81b33
Replaced remaining placeholder code with callbacks
2024-01-19 13:55:22 +02:00
a15366f5a5
Make IObjectInterface::cb non-static
2024-01-19 13:55:21 +02:00
2c4cad7d9c
Slight simplification of bonus system node class
2024-01-19 13:54:49 +02:00
f3277b7953
Define each identifier in a dedicated statement
2024-01-10 00:22:23 +00:00
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
0842f5afee
Removed remaining usages of std::vector<bool>
2023-11-15 15:55:18 +02:00
301ac2457a
Cleanup
2023-11-13 17:48:55 +02:00
a6f37b7cd7
Fixed few more memory leaks in client
2023-11-13 16:27:15 +02:00
20ef3a69e7
Fix most of memleaks discovered by valgrind
2023-11-13 16:27:15 +02:00
5c810df36f
Reorganized types registration code
2023-11-11 00:39:08 +02:00
4a7fa9bf8c
Simplified CTypeList class
2023-11-08 22:05:36 +02:00
4e654a7e6e
Better names
2023-11-08 21:27:05 +02:00
2cc8b5baeb
Fix map startup
2023-11-08 21:27:05 +02:00
c7676bde53
Serialize Enitity classes by their ID
2023-11-08 21:27:05 +02:00
f8a7f6e5a7
Remove remaining boost::mpl usages
2023-11-08 21:27:05 +02:00
b2c336de0d
JsonNode now uses std::variant internally. Fixes crash on deserialize
2023-10-21 20:41:58 +03:00
4d08a131d3
Reorganization of boost filesystem usage
...
- Removed (most of) boost filesystem namespace usings
- Replaced boost::filesystem::fstream with std::fstream and different
constructor that should be available on any plaftorm
2023-07-28 19:12:04 +03:00
21a39f0b01
Removed boost::iostreams in favor of std::stream / boost::filesystem
2023-07-28 19:12:04 +03:00
e9a90a8cbf
Serializer: serialize small bitsets (32 bits)
2023-05-05 21:30:45 +03:00
86f5d6de69
vcmi: modernize headers
2023-04-30 13:35:54 +03:00
54eb550eb9
vcmi: remove unused functions now
2023-04-17 00:43:13 +03:00
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
0d35606a44
vcmi: use std::variant
2023-04-17 00:43:13 +03:00
8dcb041917
vcmi: use std::any
2023-04-17 00:43:13 +03:00
25783066e8
vcmi: use std::any_cast
2023-04-17 00:43:13 +03:00
2c2c2c8fe0
Slight tweaking of logging of h3m edge cases
2023-04-15 17:20:38 +03:00
644f0f4b32
Removed ARRAY_COUNT in favor of std::size
2023-04-12 01:04:26 +03:00
8661496f6c
vcmi: modernize lib/serializer
2023-02-12 21:23:00 +03:00
8c481dff46
Fix incorrect templates for mines in HoTA
2022-10-08 12:42:10 +03:00
ff635edc0b
wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
...
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00