Fix the spawn pattern at last. The Z loop direction was inverted, and for some reason we need to check current_z - size.z AND current_z + size.z against each point, which I can't figure out yet but well it works. Safe to switch to this now