RobustToolbox icon indicating copy to clipboard operation
RobustToolbox copied to clipboard

IncludeDataField doesn't work with nullable fields if the mapping has other data

Open DrSmugleaf opened this issue 4 months ago • 1 comments

Leaving the fields for SpriteSpecifier.Rsi out of a mapping that has other data leads to this error for example:

Robust.Shared.Serialization.InvalidMappingException: Expected sprite-node
   at Robust.Shared.Serialization.TypeSerializers.Implementations.SpriteSpecifierSerializer.Robust.Shared.Serialization.TypeSerializers.Interfaces.ITypeReader<Robust.Shared.Utility.SpriteSpecifier.Rsi,Robust.Shared.Serialization.Markdown.Mapping.MappingDataNode
>.Read(ISerializationManager serializationManager, MappingDataNode node, IDependencyCollection dependencies, SerializationHookContext hookCtx, ISerializationContext context, InstantiationDelegate`1 instanceProvider) in SpriteSpecifierSerializer.cs:line 68

DrSmugleaf avatar Aug 15 '25 01:08 DrSmugleaf

Is this true for all data defs, or specific to sprite specifiers? Because they use a SpriteSpecifierSerializer, not the normal data definition serializers, which is pretty uncommon for data definitions, so its quite possible that this issue is related to that.

ElectroJr avatar Oct 14 '25 07:10 ElectroJr