I'm also doing some stuff in MDLVIS, but it's not a favorable program for animating. Editing existing anims works, but it's a damn job as it offers only certain rotations (making new anims is easier done in Milkshape, which offers an all direction-movement). As for your problem, the reason might be one of these:
- movement in WC3 models (.mdx) is usually done by rotating a helper object, which has a bone as a child-node. Maybe MDLVIS can't calculate well. This would be my last guess actually.
- certain vertices like those from elbows or knees have to be attached to 2 bones: the one from upper leg and from lower legg, for instance. This is a pretty common issue.
- this is my last but most probable guess: there are ''disturbing'' frames between your newly set movement frames. One single frame between 2 recently set ones messes the anim completely up.
I hope my suggestions are of help for you.
P.S. forgot to mention, coz the MDLVIS-bone animation moves it into 2 directions, is it possible that you want only X-rotation and the program, due to its functions moves it in XY or such?
The last resort i could offer is to do this in Magos. Just be warned this method is pretty timeconsuming and requires some background knowledge. It's not an easy method. That's how it works:
- open your model in Magos (Model Editor).
- open Sequence Manager and then open the ''Attack'' anim.
- you'll see 2 values there, that are important. The values are in the ''Interval'', named ''From'' and ''To''. From is the number of the starting frame and To is the end frame from the entire anim. Just remember them.
- close the Sequence Manager and open Node Manager
- there rightclick on the Node (bone or helper) you want to animate and select ''Edit Node''.
- afterwards, click onto the field ''Rotation''. A new window will pop up that says some things like this:
0: { 0, 0, 0, 1 }
InTan: { 0, 0, 0, 1 }
OutTan: { 0, 0, 0, 1 }
833: { 0, 0, 0.372583, 0.927999 }
- just scroll around in it and find the lines were the first number is the one from the starting frame of the attack anim and after the InTan and OutTan line comes (usually) the number of the end frame from attack anim
- Open in a new Magos-window a model that has a similar skeleton and an attack anim like the one you want for your model. After that copy the InTan/OutTan and frame values from the new model and CnP them into yours. IMPORTANT: don't change the frame numbers of your model!!! Changing the frame number(s) will ruin the entire anim! The ''values'', which are what has to be replaced/changed are the things inside the {}.
This does the trick in most cases, but it's not a convenient method neither a very easy one. It's a pretty bothersome, timeconsuming and laborintensive way, but if it works, the anims are nearly perfect. Additionally, the attack anims of some models have more than just 2 frames for one anim. In this case, the desired values are the starting and end frame + those which are in between the start and end frame.
I hope it's helpful for you, and don't be discouraged from my suggestion. It's not a must-follow way.