The issue is that the bricks aren't being saved in the right order.
When a brick is loaded, if it's a baseplate (not in the baseplate category, just touching the ground), it checks ownership.
If it's attached to another brick, it gets ownership from the connected brick.
If it's floating, it gets ownership from the person loading.
And because the bricks aren't being saved in the correct order (loop through all objects rather than save up from baseplates), some of the top-most bricks will load before any others, thus they'll be floating and get ownership from heed.
Two ways to fix this:
Fix the saving function, or
make your own loading function.