Shape key and transformation-constrained skeleton has no weight influence

I’m working on a model in Blender containing 281 shape keys that represent 21 vertex animations.
I want to convert those vertex animations into skeletal actions for compatibility’s sake.
(3DSMax doesn’t support 100+ shape keys on one object, most other programs don’t recognise them.)
The default position of all vertices and bones is 0/0/0, and then they are positioned by shape keys and empties, respectively.


I assigned an empty to each vertex and constrained a bone to each empty, a total of 708 each.
I set each bone to have an envelope size of 0.00001 and a weight of 1 so as to only affect their assigned vertex.
(I had to use envelope weights when skinning, because using automatic weights shifted the object’s position to the first vertex’s position, defined by the current shape key).
Then I increased the influence of each shape key to 1, refreshed the scene to update the constraints, and created a key frame.
Before checking the key frames, I disabled the shape key/s and constraints.


The result is that the bones move, but the mesh remains static.

Any help would be appreciated.
Please see the attached archive for the project in mention.
Crash Bandicoot Warped - Motorcycle Crash (WIP2).zip (11.8 MB)

My attachment was somehow deleted. I’ve reuploaded it and attached it to the opening post.

I’ve restructured my original post in hopes to provide more clarity on the specified issue.

If you use relative shapekeys, it never works.
Uncheck relatvie to get vertex local positions.
Here is one way to do it.shapekeytobonemovement.blend (492.4 KB)

You can go back in and delete all the keyframes. The poses are saved in the pose library.
PS if you don’t use my ui, the notes are in the text editor.

Thanks a bunch, I’ve got some good looking animation data saved now.
I think I need to figure out a way to assign a single vertex to each vertex group, in the order the empties and bones were assigned via script. Is there a way to do this quickly, or would I have to use a script?

If I used a script, I’m worried about the vertex order somehow changing. Since I have empties parented to each vertex, I could have the script select the child of each empty and assign that selection to the vertex group of the same name.