I can’t help with grease pencil, because I don’t know anything about that. And the file doesn’t make it very clear what the end goal is; it’s a little too abstract for me.
But maybe I can explain what’s happening.
You’re using a soft-bordered vertex group to mix between the armature deformed verts and the lattice deformed verts. The problem is, this doesn’t mix between armature-only and lattice-only. If a vert is weighted 0.5 to no_lattice, then it gets armature deformed (at half strength) and then, that armature deformed position gets fed into the lattice (at half-strength). It’s not really an even mix. At strengths that aren’t 1 or 0, the lattice and the armature deformation interact:
This is basically the same problem that “multi-modifier” on the armature modifier was designed to solve. Unfortunately, there’s no generic multi-modifier option that you can use with the lattice.
What you could do, with a mesh, is instead make a copy of the mesh, armature deform the original everywhere, lattice deform the original everywhere, and then use a surface deform modifier on the original to interpolate between the two different positions:
That pic shows the modifiers. What’s less clear is that the bones are in the same positions as in the pic above. Because now, we don’t get that wonkiness at the border of the no_lattice vertex group.
Do you see how interpolating between the lattice deformed (only) position and the armature deformed (only) position is different than running an armature, then a lattice, at inverse strengths?
Like I said, I don’t know what you can do with grease pencil. However, a lot of the time, you can get any particular deformation (combination of modifiers) you want onto a lattice by mesh deforming the lattice.
(sorry for replying to wrong person hadriscus)