As I thought the jitter issue after attacking was a script error. Instead of trying to explaining the scripting problem, just go into the folder "scriptbank\stevepaul and replace the script "swordattack.fpi" with this script. It will take care of the jitter problem.
Rename the original script so that you can compare it with this script and see what I had done to fix it.
desc = Swordattack
;Triggers
;WALKING WAYPOINTS
:waypointstate=0:animate=2,waypointstart
:waypointstate=3:animate=2,waypointnext
:waypointstate=4:animate=2,waypointrandom
:waypointstate=5:animate=2,waypointreverse
;DETECT PLAYER
:state=0,plrdistfurther=400:animate=1
:state=0,plrdistwithin=400,plrcanbeseen:waypointstop,state=9,rotatetoplr,setframe=3
:state=0:hudreset,hudx=50,hudy=50,hudimagefine=gamecore\huds\stevepaul\wizeffect.dds,hudname=wizeffect,hudhide=1,hudmake=display,state=9
;DETECT DAMAGE
:shotdamage=1:waypointstop,state=9,rotatetoplr,setframe=3
;INTRO ANIMATION
:state=9:waypointstop,incframe=10
:state=9,frameatend=10:animate=10,state=1
;Select Attack
;walk
:state=1,plrdistfurther=300:waypointstop,rotatetoplr,movefore=2,animate=3
;then run
:state=1,plrdistwithin=300:waypointstop,rotatetoplr,movefore=5,animate=14
;punch
:state=1,plrdistwithin=85,random=2:waypointstop,rotatetoplr,setframe=96,state=7
:state=1,plrdistwithin=85,random=2:waypointstop,rotatetoplr,setframe=97,state=11
;Choose sword attack of 2
;sword1
:state=1,plrdistwithin=94,random=2:waypointstop,rotatetoplr,setframe=94,state=30
:state=1,plrdistwithin=94,random=2:waypointstop,rotatetoplr,setframe=98,state=40
;punch 1
:state=7,framebeyond=96 14,plrdistwithin=85:plraddhealth=-10,state=21,sound=gamecore\guns\medievalpack\punch\punch.wav
:state=7:incframe=96,rotatetoplr
:state=7,frameatend=96:animate=10,state=9
:state=21:incframe=96,rotatetoplr
;this is the callback after the enemy dies to reset his aimation
:state=21,frameatend=96:animate=10,state=9
;punch 2
:state=11,framebeyond=97 14,plrdistwithin=85:plraddhealth=-10,state=31,sound=gamecore\guns\medievalpack\punch\punch.wav
:state=11:incframe=97,rotatetoplr
:state=11,frameatend=97:animate=10,state=9
:state=31:incframe=97,rotatetoplr
;this is the callback after the enemy dies to reset his aimation
:state=31,frameatend=97:animate=10,state=9
;sword1
:state=30,framebeyond=94 19,plrdistwithin=94:plraddhealth=-10,state=22,sound=gamecore\guns\medievalpack\sword\sword.wav
:state=30:incframe=94,rotatetoplr
:state=30,frameatend=94:animate=10,plrfreeze=0,state=9
:state=22:incframe=94,rotatetoplr
;this is the callback after the enemy dies to reset his aimation
:state=22,frameatend=94:animate=10,state=9
;sword2
:state=40,framebeyond=98 19,plrdistwithin=94:plraddhealth=-10,state=23,sound=gamecore\guns\medievalpack\sword\sword.wav
:state=40:incframe=98,rotatetoplr
:state=40,frameatend=98:animate=10,plrfreeze=0,state=9
:state=23:incframe=98,rotatetoplr
;this is the callback after the enemy dies to reset his aimation
:state=23,frameatend=98:animate=10,state=9
BTW, I really like this model pack.
Addendum:
As far as the character getting stuck on empty air, I haven't noticed that problem, myself.
OK, I reread your explanation on getting stuck. This script change should also take care of what appears to be getting stuck on empty air.
"A programmer is just a tool which converts caffeine into code . . . reminds me….. if I had one more brain cell, I could have a synapse! woo hoo, Sparky!
~I'm the Terry of the Flatlands.