Is there anything wrong with modifying the Class Default Object? (CDO)

Right now I’m modifying something in the class default object outside of the constructor because certain things aren’t available in the constructor since they’re initialized in the subclasses.

This is an object that never spawns so I’m never going to be able to do anything with preinitializeComponents/postinitializeComponents/beginPlay. I’m using it only as a template to spawn components in a level at runtime based on the positioning of the components in the blueprint editor, kind of like mini levels that get put together in random arrangements.

Seems to be working just fine so far. I’m just hoping I don’t run into unexpected issues later.

I don’t understand why you would need to do that, the defaults are there for fallbacks. Why not just parameterize the spawning of the other elements? You should be fine though, unless you need to revert back to the actual defaults.