This week was mostly just more refactoring. The build engine has parts where you need to accurately synchronize between the physics engine and user action or experience weird effects. For example, if you need to seamlessly delete an object and create another one in its place, this first of all means in Unity that the object is not deleted right away, so you need to move it away and let it get deleted asynchronously whenever Unity decides to do that. But it also means that since the objects have colliders, from the standpoint of physics the object is moved only at the next physics loop (FixedUpdate). To get it right you really need to think about this sort of things and I believe this is why we don’t see so many 3D games with realistic physics.
I was able to implement zombie checks and that seems to work (almost). This means recognizing when a fastener breaks or a part is removed that a section of the building has broken off.
I added a welding light effect to the metal welding effect stack.