honie
I've made the bones "overshoot" so that the weights don't have to go to 100% to reach the point next to said bone. I'm not sure if this is standard practice, but not doing this resulted in all the weight going to the back and front of the mesh when you deform somewhere else in the torso.
It is common to place bones for purposes such as adjusting body shape or creating 2.5D effects in positions that are offset from the positions of the mesh.
With what little I've experimented with, I'm uncertain if all these weights can be thrown together into a cohesive mesh, so with the deform keys approach I was looking for a way to separate the "how the body shape looks" from the "how the bones move the mesh", if that makes sense.
I think I understand what you want to do, but when using the same mesh for multiple shapes, I still think it's better to manage changes in body shape and pose separately using bones.
Deforma keys have various drawbacks beyond performance issues. For example, deform keys cannot be named, so as a project becomes more complex, it becomes difficult to know what a particular deform key is for.
In contrast, bones can be named, making it easier to understand what each bone is for.
Additionally, when managing with deform keys, it becomes cumbersome if you need to modify the vertices of the mesh later. Newly added vertices do not inherently have deformation animation, so if you need to increase the number of vertices in the body mesh, you must manually adjust each deformation key to ensure the new vertices are in the correct position.
In contrast, when managing with weights, newly added vertices automatically inherit the weights of surrounding vertices, so in most cases, animation adjustments are not required.
I've also seen some weirdness with moving bones with a deformed mesh. I assume that this is a weight painting problem that can be fine-tuned, but I am unsure if changing the weights for these bones will affect the look of the deformed mesh.
If you could provide more specific details on how it changed, I may be able to offer more specific advice. A common mistake is applying weight to a pose that is different from the bind pose, which results in vertices moving to unintended positions when weight is applied to specific bones. The following blog article provides a useful explanation of the concept of bind poses:
https://esotericsoftware.com/blog/Mesh-binding-tutorial
One suggestion is that using scale rather than transform constraints can be effective when adjusting bone positions. By turning off bone scale inheritance, you can achieve a setup where only the position of child bones moves when the parent bone's scale changes:
I thought it might be useful to mention this just in case, as it may allow you to manage things in a simpler way without using transform constraints.