Child variables of structures are now marked red in the editor, implying that they need to be initialized. I don’t think this changed how child variables actually function, it is just obnoxious and makes the initialize warning kinda unusable.
Something like this:
“card.status” is pre-initialized, but “dmg_max” is parsed in from an external json, alongside a thousand possible other things. If a structure child is defined by a variable, as in the first action, then the editor does not care at all that this could be an uninitialized variable. So why is this marked as an error in the second case?
I think this matters since, at least to me, a big usecase for structures is to automatically load variables into object by parsing them from json files. Anything could be in that json, but the engine now require to initialize every possible variable you could load in? If your main game object can have a thousand different child variables but only ever needs 2 or 3 per instance then it makes no sense to initialize all these variables for each instance of the object. It feels like the engine even acknowledges this usage by having the “child exists” condition that was used in the above example, allowing you to check for variables without auto initializing them.
So is all this a bug or intended? Do we need to initialize every possible child variable now? Again it’s only visual but I’d much prefer if this worked like before, as my project is now flooded with red because of this change:

