a43c3fcb31
Restore save compatibility with 1.6
2025-04-27 14:57:31 +03:00
966468f3fa
Fix and simplify game saving / loading
2025-04-27 14:57:31 +03:00
f9989d9152
Cleanup serializer/deserializer code
2025-04-27 14:57:31 +03:00
93b18ee94b
Fix some issues detected by Sonar & code review, fix build
2025-04-27 14:57:31 +03:00
586620a290
Basic code review, remove unused code from serializers
2025-04-27 14:57:31 +03:00
d34b47bb20
Remove pointers from artifacts
2025-04-27 14:57:31 +03:00
4ed13409c2
Remove serialization of raw pointers from serialization
2025-04-27 14:57:31 +03:00
8ec3e5210a
Remove no longer needed support for gamestate vectors serialization
2025-04-27 14:57:31 +03:00
63d00b080e
Removed pointer to army from StackInstance
2025-04-27 14:57:30 +03:00
2ca1748e96
Artifact instances are now owned solely by CMap
2025-04-27 14:57:30 +03:00
417ea6451a
Remove ConstTransitivePtr from hero and town instances
2025-04-27 14:57:30 +03:00
eb3b51a6cf
Remove save compatibility with 1.5.X
2025-03-18 11:35:15 +00:00
ab45c58e26
Use small_vector for bonus list to reduce allocations
2024-12-21 14:43:08 +00:00
ccb42deba4
Fix deserialization of int64 values
2024-11-29 16:55:30 +00:00
c4481f3797
Remove logic for serialization of VLC entities
2024-10-30 16:48:19 +00:00
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