Index: data/core/units/dwarves/Steelclad.cfg
===================================================================
--- data/core/units/dwarves/Steelclad.cfg	(revision 56348)
+++ data/core/units/dwarves/Steelclad.cfg	(working copy)
@@ -77,69 +77,8 @@
         {STANDARD_IDLE_FILTER}
         start_time=0
         [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-1.png"
+            image="units/dwarves/steelclad-idle-[1~11,1~3,2,1].png:100"
         [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-2.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-3.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-4.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-5.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-6.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-7.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-8.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-9.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-10.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-11.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-1.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-2.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-3.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-2.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/steelclad-idle-1.png"
-        [/frame]
     [/idle_anim]
 
     [attack_anim]
@@ -150,104 +89,60 @@
       	offset=0.0~-0.05,-0.05~0.1,0.1~0.55,0.55~0.55,0.5~0.0
         [if]
             direction=s,se,sw
- 	    [frame]
-   	        duration=40
-   	        image="units/dwarves/steelclad-se-hammer.png"
+            [frame]
+   	            image="units/dwarves/steelclad-se-hammer.png:40"
             [/frame]
             [frame]
-                duration=100
-            image="units/dwarves/steelclad-se-hammer1.png"
+                image="units/dwarves/steelclad-se-hammer1.png:100"
             [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/steelclad-se-hammer2.png"
+                    image="units/dwarves/steelclad-se-hammer2.png:100"
                     sound=mace.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/steelclad-se-hammer2.png"
+                    image="units/dwarves/steelclad-se-hammer2.png:100"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/steelclad-se-hammer3.png"
+                image="units/dwarves/steelclad-se-hammer[3~7].png:100"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/steelclad-se-hammer4.png"
+                image="units/dwarves/steelclad-se-hammer.png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/steelclad-se-hammer5.png"
-            [/frame]
-            [frame]
-                duration=100
-            image="units/dwarves/steelclad-se-hammer6.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/steelclad-se-hammer7.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/steelclad-se-hammer.png"
-            [/frame]
         [/if]
         [else]
- 	    [frame]
-   	        duration=40
-   	        image="units/dwarves/steelclad-ne-hammer.png"
+            [frame]
+                image="units/dwarves/steelclad-ne-hammer.png:40"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/steelclad-ne-hammer1.png"
+                image="units/dwarves/steelclad-ne-hammer1.png:100"
             [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/steelclad-ne-hammer2.png"
+                    image="units/dwarves/steelclad-ne-hammer2.png:100"
                     sound=mace.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/steelclad-ne-hammer2.png"
+                    image="units/dwarves/steelclad-ne-hammer2.png:100"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/steelclad-ne-hammer3.png"
+                image="units/dwarves/steelclad-ne-hammer[3~7].png:100"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/steelclad-ne-hammer4.png"
+                image="units/dwarves/steelclad-ne-hammer.png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/steelclad-ne-hammer5.png"
-            [/frame]
-            [frame]
-                duration=100
-            image="units/dwarves/steelclad-ne-hammer6.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/steelclad-ne-hammer7.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/steelclad-ne-hammer.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
@@ -261,111 +156,53 @@
         [if]
             direction=s,se,sw
             [frame]
-                duration=40
-                image="units/dwarves/steelclad-se-axe1.png"
+                image="units/dwarves/steelclad-se-axe[1~4].png:[40,60*3]"
             [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/steelclad-se-axe2.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/steelclad-se-axe3.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/steelclad-se-axe4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=60
-                    image="units/dwarves/steelclad-se-axe5.png"
+                    image="units/dwarves/steelclad-se-axe5.png:60"
                     sound=axe.ogg
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=60
-                    image="units/dwarves/steelclad-se-axe5.png"
+                    image="units/dwarves/steelclad-se-axe5.png:60"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=60
-                image="units/dwarves/steelclad-se-axe6.png"
+                image="units/dwarves/steelclad-se-axe[6~9].png:[60*2,80*2]"
             [/frame]
             [frame]
-                duration=60
-                image="units/dwarves/steelclad-se-axe7.png"
+                image="units/dwarves/steelclad.png:40"
             [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/steelclad-se-axe8.png"
-            [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/steelclad-se-axe9.png"
-            [/frame]
-            [frame]
-                duration=40
-                image="units/dwarves/steelclad.png"
-            [/frame]
         [/if]
         [else]
             [frame]
-                duration=40
-                image="units/dwarves/steelclad-ne-axe1.png"
+                image="units/dwarves/steelclad-ne-axe[1~4].png:[40,60*3]"
             [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/steelclad-ne-axe2.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/steelclad-ne-axe3.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/steelclad-ne-axe4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=60
-                    image="units/dwarves/steelclad-ne-axe5.png"
+                    image="units/dwarves/steelclad-ne-axe5.png:60"
                     sound=axe.ogg
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=60
-                    image="units/dwarves/steelclad-ne-axe5.png"
+                    image="units/dwarves/steelclad-ne-axe5.png:60"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=60
-                image="units/dwarves/steelclad-ne-axe6.png"
+                image="units/dwarves/steelclad-ne-axe[6~9].png:[60*2,80*2]"
             [/frame]
             [frame]
-                duration=60
-                image="units/dwarves/steelclad-ne-axe7.png"
+                image="units/dwarves/steelclad-ne.png:40"
             [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/steelclad-ne-axe8.png"
-            [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/steelclad-ne-axe9.png"
-            [/frame]
-            [frame]
-                duration=40
-                image="units/dwarves/steelclad-ne.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
Index: data/core/units/dwarves/Fighter.cfg
===================================================================
--- data/core/units/dwarves/Fighter.cfg	(revision 56348)
+++ data/core/units/dwarves/Fighter.cfg	(working copy)
@@ -74,63 +74,8 @@
         {STANDARD_IDLE_FILTER}
         start_time=0
         [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-1.png"
+            image="units/dwarves/fighter-idle-[1~8,4~8,4,1].png:[100*3,1,100*2,200,100,200,100*2,1,100,300,100]"
         [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-2.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-3.png"
-        [/frame]
-        [frame]
-            image="units/dwarves/fighter-idle-4.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-5.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-6.png"
-        [/frame]
-        [frame]
-            duration=200
-            image="units/dwarves/fighter-idle-7.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-8.png"
-        [/frame]
-        [frame]
-            duration=200
-            image="units/dwarves/fighter-idle-4.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-5.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-6.png"
-        [/frame]
-        [frame]
-            image="units/dwarves/fighter-idle-7.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-8.png"
-        [/frame]
-        [frame]
-            duration=300
-            image="units/dwarves/fighter-idle-4.png"
-        [/frame]
-        [frame]
-            duration=100
-            image="units/dwarves/fighter-idle-1.png"
-        [/frame]
     [/idle_anim]
 #endif
     [attack_anim]
@@ -141,104 +86,60 @@
       	offset=0.0~-0.05,-0.05~0.1,0.1~0.55,0.55~0.55,0.5~0.0
         [if]
             direction=s,se,sw
- 	    [frame]
-   	        duration=40
-   	        image="units/dwarves/fighter-se-hammer.png"
+            [frame]
+   	            image="units/dwarves/fighter-se-hammer.png:40"
             [/frame]
             [frame]
-                duration=100
-            image="units/dwarves/fighter-se-hammer1.png"
+                image="units/dwarves/fighter-se-hammer1.png:100"
             [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/fighter-se-hammer2.png"
+                    image="units/dwarves/fighter-se-hammer2.png:100"
                     sound=mace.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/fighter-se-hammer2.png"
+                    image="units/dwarves/fighter-se-hammer2.png:100"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/fighter-se-hammer3.png"
+                image="units/dwarves/fighter-se-hammer[3~7].png:100"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/fighter-se-hammer4.png"
+                image="units/dwarves/fighter-se-hammer.png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/fighter-se-hammer5.png"
-            [/frame]
-            [frame]
-                duration=100
-            image="units/dwarves/fighter-se-hammer6.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/fighter-se-hammer7.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/fighter-se-hammer.png"
-            [/frame]
         [/if]
         [else]
  	    [frame]
-   	        duration=40
-   	        image="units/dwarves/fighter-ne-hammer.png"
+   	        image="units/dwarves/fighter-ne-hammer.png:40"
             [/frame]
             [frame]
-                duration=100
-            image="units/dwarves/fighter-ne-hammer1.png"
+                image="units/dwarves/fighter-ne-hammer1.png:100"
             [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/fighter-ne-hammer2.png"
+                    image="units/dwarves/fighter-ne-hammer2.png:100"
                     sound=mace.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/fighter-ne-hammer2.png"
+                    image="units/dwarves/fighter-ne-hammer2.png:100"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/fighter-ne-hammer3.png"
+                image="units/dwarves/fighter-ne-hammer[3~7].png:100"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/fighter-ne-hammer4.png"
+                image="units/dwarves/fighter-ne-hammer.png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/fighter-ne-hammer5.png"
-            [/frame]
-            [frame]
-                duration=100
-            image="units/dwarves/fighter-ne-hammer6.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/fighter-ne-hammer7.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/fighter-ne-hammer.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
@@ -253,111 +154,53 @@
         [if]
             direction=s,se,sw
             [frame]
-                duration=40
-                image="units/dwarves/fighter-se-axe1.png"
+                image="units/dwarves/fighter-se-axe[1~4].png:[40,60*3]"
             [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/fighter-se-axe2.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/fighter-se-axe3.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/fighter-se-axe4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=60
-                    image="units/dwarves/fighter-se-axe5.png"
+                    image="units/dwarves/fighter-se-axe5.png:60"
                     sound=axe.ogg
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=60
-                    image="units/dwarves/fighter-se-axe5.png"
+                    image="units/dwarves/fighter-se-axe5.png:60"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=60
-                image="units/dwarves/fighter-se-axe6.png"
+                image="units/dwarves/fighter-se-axe[6~9].png:[60*2,80*2]"
             [/frame]
             [frame]
-                duration=60
-                image="units/dwarves/fighter-se-axe7.png"
+                image="units/dwarves/fighter.png:40"
             [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/fighter-se-axe8.png"
-            [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/fighter-se-axe9.png"
-            [/frame]
-            [frame]
-                duration=40
-                image="units/dwarves/fighter.png"
-            [/frame]
         [/if]
         [else]
             [frame]
-                duration=40
-                image="units/dwarves/fighter-ne-axe1.png"
+                image="units/dwarves/fighter-ne-axe[1~4].png:[40,60*3]"
             [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/fighter-ne-axe2.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/fighter-ne-axe3.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/fighter-ne-axe4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=60
-                    image="units/dwarves/fighter-ne-axe5.png"
+                    image="units/dwarves/fighter-ne-axe5.png:60"
                     sound=axe.ogg
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=60
-                    image="units/dwarves/fighter-ne-axe5.png"
+                    image="units/dwarves/fighter-ne-axe5.png:60"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=60
-                image="units/dwarves/fighter-ne-axe6.png"
+                image="units/dwarves/fighter-ne-axe[6~9].png:[60*2,80*2]"
             [/frame]
             [frame]
-                duration=60
-                image="units/dwarves/fighter-ne-axe7.png"
+                image="units/dwarves/fighter-ne.png:40"
             [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/fighter-ne-axe8.png"
-            [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/fighter-ne-axe9.png"
-            [/frame]
-            [frame]
-                duration=40
-                image="units/dwarves/fighter-ne.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
Index: data/core/units/dwarves/Lord.cfg
===================================================================
--- data/core/units/dwarves/Lord.cfg	(revision 56348)
+++ data/core/units/dwarves/Lord.cfg	(working copy)
@@ -90,89 +90,48 @@
         [if]
             direction=s,se,sw
             [frame]
-                duration=100
-                image="units/dwarves/lord-se-ranged1.png"
+                image="units/dwarves/lord-se-ranged[1~4].png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-ranged2.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-ranged3.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-ranged4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-se-ranged5.png"
+                    image="units/dwarves/lord-se-ranged5.png:100"
                     sound=hatchet.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-se-ranged5.png"
+                    image="units/dwarves/lord-se-ranged5.png:100"
                     sound=hatchet-miss.wav
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/lord-se-ranged6.png"
+                image="units/dwarves/lord-se-ranged[6~7].png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-ranged7.png"
-            [/frame]
         [/if]
         [else]
             direction=n,ne,nw
             [frame]
-                duration=100
-                image="units/dwarves/lord-ne-ranged1.png"
+                image="units/dwarves/lord-ne-ranged[1~4].png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-ranged2.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-ranged3.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-ranged4.png"
-            [/frame]
-
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-ne-ranged5.png"
+                    image="units/dwarves/lord-ne-ranged5.png:100"
                     sound=hatchet.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-ne-ranged5.png"
+                    image="units/dwarves/lord-ne-ranged5.png:100"
                     sound=hatchet-miss.wav
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/lord-ne-ranged6.png"
+                image="units/dwarves/lord-ne-ranged[6~7].png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-ranged7.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
@@ -184,104 +143,60 @@
       	offset=0.0~-0.05,-0.05~0.1,0.1~0.55,0.55~0.55,0.5~0.0
         [if]
             direction=s,se,sw
- 	    [frame]
-   	        duration=40
-   	        image="units/dwarves/lord-se-hammer.png"
+            [frame]
+                image="units/dwarves/lord-se-hammer.png:40"
             [/frame]
             [frame]
-                duration=100
-            image="units/dwarves/lord-se-hammer1.png"
+                image="units/dwarves/lord-se-hammer1.png:100"
             [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-se-hammer2.png"
+                    image="units/dwarves/lord-se-hammer2.png:100"
                     sound=mace.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-se-hammer2.png"
+                    image="units/dwarves/lord-se-hammer2.png:100"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/lord-se-hammer3.png"
+                image="units/dwarves/lord-se-hammer[3~7].png:100"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/lord-se-hammer4.png"
+                image="units/dwarves/lord-se-hammer.png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-hammer5.png"
-            [/frame]
-            [frame]
-                duration=100
-            image="units/dwarves/lord-se-hammer6.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-hammer7.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-se-hammer.png"
-            [/frame]
         [/if]
         [else]
- 	    [frame]
-   	        duration=40
-   	        image="units/dwarves/lord-ne-hammer.png"
+            [frame]
+                image="units/dwarves/lord-ne-hammer.png:40"
             [/frame]
             [frame]
-                duration=100
-            image="units/dwarves/lord-ne-hammer1.png"
+                image="units/dwarves/lord-ne-hammer1.png:100"
             [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-ne-hammer2.png"
+                    image="units/dwarves/lord-ne-hammer2.png:100"
                     sound=mace.wav
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=100
-                    image="units/dwarves/lord-ne-hammer2.png"
+                    image="units/dwarves/lord-ne-hammer2.png:100"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=100
-                image="units/dwarves/lord-ne-hammer3.png"
+                image="units/dwarves/lord-ne-hammer[3~7].png:100"
             [/frame]
             [frame]
-                duration=100
-                image="units/dwarves/lord-ne-hammer4.png"
+                image="units/dwarves/lord-ne-hammer.png:100"
             [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-hammer5.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-hammer6.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-hammer7.png"
-            [/frame]
-            [frame]
-                duration=100
-                image="units/dwarves/lord-ne-hammer.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
@@ -295,111 +210,53 @@
         [if]
             direction=s,se,sw
             [frame]
-                duration=40
-                image="units/dwarves/lord-se-axe1.png"
+                image="units/dwarves/lord-se-axe[1~4].png:[40,60*3]"
             [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/lord-se-axe2.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/lord-se-axe3.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/lord-se-axe4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=60
-                    image="units/dwarves/lord-se-axe5.png"
+                    image="units/dwarves/lord-se-axe5.png:60"
                     sound=axe.ogg
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=60
-                    image="units/dwarves/lord-se-axe5.png"
+                    image="units/dwarves/lord-se-axe5.png:60"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=60
-                image="units/dwarves/lord-se-axe6.png"
+                image="units/dwarves/lord-se-axe[6~9].png:[60*2,80*2]"
             [/frame]
             [frame]
-                duration=60
-                image="units/dwarves/lord-se-axe7.png"
+                image="units/dwarves/lord.png:40"
             [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/lord-se-axe8.png"
-            [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/lord-se-axe9.png"
-            [/frame]
-            [frame]
-                duration=40
-                image="units/dwarves/lord.png"
-            [/frame]
         [/if]
         [else]
             [frame]
-                duration=40
-                image="units/dwarves/lord-ne-axe1.png"
+                image="units/dwarves/lord-ne-axe[1~4].png:[40,60*3]"
             [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/lord-ne-axe2.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/lord-ne-axe3.png"
-            [/frame]
-            [frame]
-                duration=60
-                image="units/dwarves/lord-ne-axe4.png"
-            [/frame]
             [if]
                 hits=yes
                 [frame]
-                    duration=60
-                    image="units/dwarves/lord-ne-axe5.png"
+                    image="units/dwarves/lord-ne-axe5.png:60"
                     sound=axe.ogg
                 [/frame]
             [/if]
             [else]
                 hits=no
                 [frame]
-                    duration=60
-                    image="units/dwarves/lord-ne-axe5.png"
+                    image="units/dwarves/lord-ne-axe5.png:60"
                     sound={SOUND_LIST:MISS}
                 [/frame]
             [/else]
             [frame]
-                duration=60
-                image="units/dwarves/lord-ne-axe6.png"
+                image="units/dwarves/lord-ne-axe[6~9].png:[60*2,80*2]"
             [/frame]
             [frame]
-                duration=60
-                image="units/dwarves/lord-ne-axe7.png"
+                image="units/dwarves/lord-ne.png:40"
             [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/lord-ne-axe8.png"
-            [/frame]
-            [frame]
-                duration=80
-                image="units/dwarves/lord-ne-axe9.png"
-            [/frame]
-            [frame]
-                duration=40
-                image="units/dwarves/lord-ne.png"
-            [/frame]
         [/else]
     [/attack_anim]
 
Index: data/core/units/humans/Loyalist_Royal_Guard.cfg
===================================================================
--- data/core/units/humans/Loyalist_Royal_Guard.cfg	(revision 56348)
+++ data/core/units/humans/Loyalist_Royal_Guard.cfg	(working copy)
@@ -78,8 +78,8 @@
             [/frame]
         [/else]
         [frame]
-            image="units/human-loyalists/royalguard-attack-sword[3,4,4,5].png:[100,20,30,75]"
-            offset=0.45~0.5,0.5,0.5~0.4,0.4~0.2
+            image="units/human-loyalists/royalguard-attack-sword[3~5].png:[100,50,75]"
+            offset=0.45~0.5:100,0.5:20,0.5~0.4:30,0.4~0.2:75
         [/frame]
         [frame]
             image="units/human-loyalists/royalguard.png:75"
Index: data/core/units/undead/Corpse_Walking.cfg
===================================================================
--- data/core/units/undead/Corpse_Walking.cfg	(revision 56348)
+++ data/core/units/undead/Corpse_Walking.cfg	(working copy)
@@ -79,7 +79,7 @@
         [/frame]
     [/attack_anim]
 #enddef
-#define UNIT_BODY_WALKING_CORPSE_GRAPHICS NBASE_NAME
+#define UNIT_BODY_WALKING_CORPSE_GRAPHICS NBASE_NAME DEATH_FRAMES_NUMBER
     image="units/undead/{NBASE_NAME}.png"
     {MAGENTA_IS_THE_TEAM_COLOR}
     die_sound={SOUND_LIST:ZOMBIE_WEAK_HIT}
@@ -87,7 +87,7 @@
     [death]
         start_time=0
         [frame]
-            image="units/undead/{NBASE_NAME}-die-[1~4].png:150,units/undead/soulless-die-[5~10].png:150"
+            image="units/undead/{NBASE_NAME}-die-[1~{DEATH_FRAMES_NUMBER}].png:150,units/undead/soulless-die-[5~10].png:150"
         [/frame]
     [/death]
     [attack_anim]
@@ -124,7 +124,7 @@
         [/frame]
     [/attack_anim]
 #enddef
-    {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie}
+    {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie 4}
     {UNIT_BODY_WALKING_CORPSE_STATS smallfoot 4 18}
     [movement_costs]
         deep_water=4
@@ -134,7 +134,7 @@
     [/defense]
     [variation]
         variation_name=drake
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-drake}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-drake 4}
         {UNIT_BODY_WALKING_CORPSE_STATS drakefoot 4 23}
         [movement_costs]
             deep_water=4
@@ -145,7 +145,7 @@
     [/variation]
     [variation]
         variation_name=dwarf
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-dwarf}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-dwarf 4}
         {UNIT_BODY_WALKING_CORPSE_STATS dwarvishfoot 3 21}
         [movement_costs]
             deep_water=3
@@ -156,7 +156,7 @@
     [/variation]
     [variation]
         variation_name=goblin
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-goblin}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-goblin 4}
         {UNIT_BODY_WALKING_CORPSE_STATS smallfoot 4 13}
         [movement_costs]
             deep_water=4
@@ -167,7 +167,7 @@
     [/variation]
     [variation]
         variation_name=gryphon
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-drake}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-drake 4}
         {UNIT_BODY_WALKING_CORPSE_STATS fly 5 21}
         [defense]
             mountains=40
@@ -175,7 +175,7 @@
     [/variation]
     [variation]
         variation_name=mounted
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-mounted}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-mounted 4}
         {UNIT_BODY_WALKING_CORPSE_STATS mounted 5 21}
         [movement_costs]
             deep_water=4
@@ -186,7 +186,7 @@
     [/variation]
     [variation]
         variation_name=saurian
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-saurian}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-saurian 4}
         {UNIT_BODY_WALKING_CORPSE_STATS lizard 4 16}
         [movement_costs]
             deep_water=4
@@ -197,7 +197,7 @@
     [/variation]
     [variation]
         variation_name=swimmer
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-swimmer}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-swimmer 4}
         {UNIT_BODY_WALKING_CORPSE_STATS swimmer 4 18}
         [movement_costs]
             forest=4
@@ -206,7 +206,7 @@
     [/variation]
     [variation]
         variation_name=troll
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-troll}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-troll 4}
         {UNIT_BODY_WALKING_CORPSE_STATS largefoot 4 21}
         [movement_costs]
             deep_water=4
@@ -217,7 +217,7 @@
     [/variation]
     [variation]
         variation_name=wose
-        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-wose}
+        {UNIT_BODY_WALKING_CORPSE_GRAPHICS zombie-wose 4}
         {UNIT_BODY_WALKING_CORPSE_STATS treefolk 3 26}
         [movement_costs]
             deep_water=3
Index: data/core/units/undead/Corpse_Soulless.cfg
===================================================================
--- data/core/units/undead/Corpse_Soulless.cfg	(revision 56348)
+++ data/core/units/undead/Corpse_Soulless.cfg	(working copy)
@@ -80,7 +80,7 @@
         [/frame]
     [/attack_anim]
 #enddef
-#define UNIT_BODY_SOULLESS_GRAPHICS BASE_NAME
+#define UNIT_BODY_SOULLESS_GRAPHICS BASE_NAME DEATH_FRAMES_NUMBER
     image="units/undead/{BASE_NAME}.png"
     {MAGENTA_IS_THE_TEAM_COLOR}
     die_sound={SOUND_LIST:ZOMBIE_HIT}
@@ -88,7 +88,7 @@
     [death]
         start_time=0
         [frame]
-            image="units/undead/{BASE_NAME}-die-[1~4].png:150,units/undead/soulless-die-[5~10].png:150"
+            image="units/undead/{BASE_NAME}-die-[1~{DEATH_FRAMES_NUMBER}].png:150,units/undead/soulless-die-[5~10].png:150"
         [/frame]
     [/death]
     [attack_anim]
@@ -126,7 +126,7 @@
     [/attack_anim]
 #enddef
     {UNIT_BODY_SOULLESS_STATS smallfoot 4 28}
-    {UNIT_BODY_SOULLESS_GRAPHICS soulless}
+    {UNIT_BODY_SOULLESS_GRAPHICS soulless 4}
     [movement_costs]
         deep_water=4
     [/movement_costs]
@@ -147,7 +147,7 @@
     [variation]
         variation_name=dwarf
         {UNIT_BODY_SOULLESS_STATS dwarvishfoot 3 33}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-dwarf}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-dwarf 4}
         [movement_costs]
             deep_water=3
         [/movement_costs]
@@ -158,7 +158,7 @@
     [variation]
         variation_name=goblin
         {UNIT_BODY_SOULLESS_STATS smallfoot 4 23}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-goblin}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-goblin 4}
         [movement_costs]
             deep_water=4
         [/movement_costs]
@@ -169,7 +169,7 @@
     [variation]
         variation_name=mounted
         {UNIT_BODY_SOULLESS_STATS mounted 5 33}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-mounted}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-mounted 4}
         [movement_costs]
             deep_water=4
         [/movement_costs]
@@ -180,7 +180,7 @@
     [variation]
         variation_name=gryphon
         {UNIT_BODY_SOULLESS_STATS fly 5 33}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-drake}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-drake 3}
         [defense]
             mountains=40
         [/defense]
@@ -188,7 +188,7 @@
     [variation]
         variation_name=saurian
         {UNIT_BODY_SOULLESS_STATS lizard 4 25}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-saurian}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-saurian 4}
         [movement_costs]
             deep_water=4
         [/movement_costs]
@@ -199,7 +199,7 @@
     [variation]
         variation_name=swimmer
         {UNIT_BODY_SOULLESS_STATS swimmer 4 28}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-swimmer}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-swimmer 4}
         [movement_costs]
             forest=4
             hills=4
@@ -208,7 +208,7 @@
     [variation]
         variation_name=troll
         {UNIT_BODY_SOULLESS_STATS largefoot 4 33}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-troll}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-troll 4}
         [movement_costs]
             deep_water=4
         [/movement_costs]
@@ -219,7 +219,7 @@
     [variation]
         variation_name=wose
         {UNIT_BODY_SOULLESS_STATS treefolk 3 40}
-        {UNIT_BODY_SOULLESS_GRAPHICS soulless-wose}
+        {UNIT_BODY_SOULLESS_GRAPHICS soulless-wose 4}
         [movement_costs]
             deep_water=3
         [/movement_costs]
Index: data/core/macros/animation-utils.cfg
===================================================================
--- data/core/macros/animation-utils.cfg	(revision 56348)
+++ data/core/macros/animation-utils.cfg	(working copy)
@@ -9,15 +9,13 @@
         [if]
             direction=s,se,sw
             [frame]
-                duration=150
-                image={BASE_SE_IMAGE}
+                image={BASE_SE_IMAGE}:150
             [/frame]
         [/if]
         [else]
             direction=n,ne,nw
             [frame]
-                duration=150
-                image={BASE_NE_IMAGE}
+                image={BASE_NE_IMAGE}:150
             [/frame]
         [/else]
     [/standing_anim]
@@ -130,31 +128,26 @@
         direction=sw,s,se
         start_time=-126
         [frame]
-            duration=1
-            image={BASE_SE_IMAGE}
+            image={BASE_SE_IMAGE}:1
         [/frame]
         [frame]
-            duration=100
-            image={REACTION_SE_IMAGE}
+            image={REACTION_SE_IMAGE}:100
         [/frame]
         [if]
             hits=hit
             [frame]
-                duration=150
-                image={REACTION_SE_IMAGE}
+                image={REACTION_SE_IMAGE}:150
                 sound={HIT_SOUND}
             [/frame]
         [/if]
         [else]
             hits=miss,kill
             [frame]
-                duration=150
-                image={REACTION_SE_IMAGE}
+                image={REACTION_SE_IMAGE}:150
             [/frame]
         [/else]
         [frame]
-            duration=1
-            image={BASE_SE_IMAGE}
+            image={BASE_SE_IMAGE}:1
         [/frame]
     [/defend]
     [defend]
@@ -162,31 +155,26 @@
         direction=nw,n,ne
         start_time=-126
         [frame]
-            duration=1
-            image={BASE_NE_IMAGE}
+            image={BASE_NE_IMAGE}:1
         [/frame]
         [frame]
-            duration=100
-            image={REACTION_NE_IMAGE}
+            image={REACTION_NE_IMAGE}:100
         [/frame]
         [if]
             hits=hit
             [frame]
-                duration=150
-                image={REACTION_NE_IMAGE}
+                image={REACTION_NE_IMAGE}:150
                 sound={HIT_SOUND}
             [/frame]
         [/if]
         [else]
             hits=miss,kill
             [frame]
-                duration=150
-                image={REACTION_NE_IMAGE}
+                image={REACTION_NE_IMAGE}:150
             [/frame]
         [/else]
         [frame]
-            duration=1
-            image={BASE_NE_IMAGE}
+            image={BASE_NE_IMAGE}:1
         [/frame]
     [/defend]
 #enddef
