sc: separate base damage from upgrade bonus
[sheet.git] / sc-units-bw.inc.pl
index 9064f7061f809b93ae77db7e71f2c20749ac5eea..4c1115d820db19c8d1af1418a65b61da0efeadbc 100644 (file)
@@ -25,14 +25,15 @@ organic => 0,
 hp => 20,
 shield => 20,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                name => "Particle Beam",
                damage => 5,
                cooldown => 22 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 8,
 speed => 14,
 counter => ['vulture', 'dark templar'],
@@ -53,14 +54,14 @@ race => 'protoss',
 hp => 100,
 shield => 100,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 3,
                damage => 20,
                cooldown => 22 / $FPS,
+               range => 7,
        },
-       air => 'ground',
-       range => 7,
-},
+],
 sight => 11,
 detect => 1,
 speed => 0,
@@ -84,14 +85,16 @@ organic => 1,
 hp => 100,
 shield => 60,
 armor => 1,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                name => "Psi Blades",
-               damage => [16, 18, 20, 22],
+               damage => 16,
+               upgrade => 2,
                cooldown => 22 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 7,
 speed => 11,
 upgrade => [
@@ -123,16 +126,17 @@ organic => 0,
 hp => 100,
 shield => 80,
 armor => 1,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 3,
                name => "Phase Disruptor",
-               damage => [20, 22, 24, 26],
+               damage => 20,
+               upgrade => 2,
                type => 'explosive',
                cooldown => 30 / $FPS,
+               range => 4,
        },
-       air => 'ground',
-       range => 4,
-},
+],
 sight => 8,
 speed => 15,
 upgrade => [
@@ -141,9 +145,11 @@ upgrade => [
                min => 150,
                gas => 150,
                build => 166,
-               attack => {
-                       range => 6 - 4,
-               },
+               attack => [
+                       {
+                               range => 6 - 4,
+                       },
+               ],
        },
 ],
 counter => ['zergling', 'zealot', 'tank'],
@@ -221,14 +227,16 @@ organic => 1,
 hp => 80,
 shield => 40,
 armor => 1,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                name => "Warp Blades",
-               damage => [40, 43, 46, 49],
+               damage => 40,
+               upgrade => 3,
                cooldown => 30 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 7,
 speed => 15,
 special => [
@@ -259,16 +267,17 @@ organic => 0,
 hp => 10,
 shield => 350,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 3,
                name => "Psionic Shockwave",
-               damage => [30, 33, 36, 39],
+               damage => 30,
+               upgrade => 3,
                cooldown => 20 / $FPS,
                splash => 1,
+               range => 2,
        },
-       air => 'ground',
-       range => 2,
-},
+],
 sight => 8,
 speed => 14,
 },
@@ -291,8 +300,6 @@ organic => 0,
 hp => 25,
 shield => 200,
 armor => 1,
-attack => {
-},
 sight => 10,
 speed => 14,
 energy => 200,
@@ -357,18 +364,23 @@ air => 1,
 hp => 150,
 shield => 100,
 armor => 0,
-attack => {
-       ground => {
-               damage => [8, 9, 10, 11],
+attack => [
+       {
+               anti => 1,
+               damage => 8,
+               upgrade => 1,
                cooldown => 30 / $FPS,
+               range => 4,
        },
-       air => {
-               damage => [28, 30, 32, 34],
+       {
+               anti => 2,
+               damage => 28,
+               upgrade => 2,
                type => 'explosive',
                cooldown => 22 / $FPS,
+               range => 4,
        },
-       range => 4,
-},
+],
 sight => 8,
 speed => 13,
 upgrade => [
@@ -406,15 +418,17 @@ air => 1,
 hp => 100,
 shield => 80,
 armor => 1,
-attack => {
-       air => {
-               damage => [5, 6, 7, 8],
+attack => [
+       {
+               anti => 2,
+               damage => 5,
+               upgrade => 1,
                cooldown => 8 / $FPS,
                splash => 1,
                type => 'explosive',
+               range => 5,
        },
-       range => 5,
-},
+],
 sight => 9,
 speed => 17,
 energy => 200,
@@ -459,14 +473,14 @@ organic => 0,
 hp => 300,
 shield => 150,
 armor => 4,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 3,
                dps => [17, undef, undef, 49],
                count => 4,
+               range => 8,
        },
-       air => 'ground',
-       range => 8,
-},
+],
 sight => 11,
 speed => 10,
 special => [
@@ -482,15 +496,16 @@ special => [
                hp => 40,
                shield => 40,
                armor => 0,
-               attack => {
-                       ground => {
-                               damage => [6, 7, 8, 9],
+               attack => [
+                       {
+                               anti => 3,
+                               damage => 6,
+                               upgrade => 1,
                                cooldown => 43 / $FPS, # approximately 37 according to liquipedia
                                build => 20,
+                               range => 0,
                        },
-                       air => 'ground',
-                       range => 0,
-               },
+               ],
                sight => 0,
                range => 0,
        },
@@ -523,15 +538,16 @@ air => 1,
 hp => 200,
 shield => 150,
 armor => 1,
-attack => {
-       ground => {
-               damage => [10, 11, 12, 13],
+attack => [
+       {
+               anti => 3,
+               damage => 10,
+               upgrade => 1,
                cooldown => 45 / $FPS,
                type => 'explosive',
+               range => 5,
        },
-       air => 'ground',
-       range => 5,
-},
+],
 sight => 9,
 speed => 12,
 energy => 200,
@@ -588,17 +604,18 @@ organic => 0,
 hp => 100,
 shield => 80,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                damage => 100,
                cooldown => 60 / $FPS,
                splash => 1,
                cost => 15,
                build => 7,
                max => 5,
+               range => 8,
        },
-       range => 8,
-},
+],
 sight => 10,
 speed => 5,
 upgrade => [
@@ -607,29 +624,29 @@ upgrade => [
                min => 200,
                gas => 200,
                build => 166,
-               attack => {
-                       ground => {
+               attack => [
+                       {
                                damage => 125 - 100,
                        },
-               },
+               ],
        },
        {
-               attack => {
-                       ground => {
+               attack => [
+                       {
                                splash => 2 - 1,
                        },
-               },
+               ],
        },
        {
                name => 'Increased Reaver Capacity',
                min => 200,
                gas => 200,
                build => 166,
-               attack => {
-                       ground => {
+               attack => [
+                       {
                                max => 10-5,
                        },
-               },
+               ],
        },
 ],
 },
@@ -696,8 +713,6 @@ organic => 0,
 hp => 80,
 shield => 60,
 armor => 1,
-attack => {
-},
 sight => 8,
 speed => 13,
 transport => 1,
@@ -727,13 +742,14 @@ race => 'terran',
 organic => 0,
 hp =>  60,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                damage => 5,
                cooldown => 15 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 7,
 speed => 15,
 },
@@ -751,14 +767,15 @@ suit => 3,
 race => 'terran',
 hp => 200,
 armor => 0,
-attack => {
-       air => {
+attack => [
+       {
+               anti => 2,
                damage => 20,
                cooldown => 15 / $FPS,
                type => 'explosive',
+               range => 7,
        },
-       range => 7,
-},
+],
 sight => 11,
 detect => 1,
 speed => 0,
@@ -779,14 +796,15 @@ race => 'terran',
 organic => 1,
 hp =>  40,
 armor => 0,
-attack => {
-       ground => {
-               damage => [6, 7, 8, 9],
+attack => [
+       {
+               anti => 3,
+               damage => 6,
+               upgrade => 1,
                cooldown => 15 / $FPS,
+               range => 4,
        },
-       air => 'ground',
-       range => 4,
-},
+],
 sight => 7,
 speed => 11,
 upgrade => [
@@ -795,9 +813,11 @@ upgrade => [
                min => 150,
                gas => 150,
                build => 100,
-               attack => {
-                       range => 5 - 4,
-               },
+               attack => [
+                       {
+                               range => 5 - 4,
+                       },
+               ],
        },
 ],
 special => [
@@ -809,12 +829,12 @@ special => [
                build => 80,
                desc => 'doubles attack speed and faster movement for a few seconds at the cost of 10 health',
                speed => 17,
-               attack => {
-                       ground => {
+               attack => [
+                       {
+                               anti => 3,
                                cooldown => 7.5 / $FPS,
                        },
-                       air => 'ground',
-               },
+               ],
                duration => 220 / $FPS,
        },
 ],
@@ -832,15 +852,17 @@ race => 'terran',
 organic => 1,
 hp =>  50,
 armor => 1,
-attack => {
-       ground => {
-               damage => [16, 18, 20, 22],
+attack => [
+       {
+               anti => 1,
+               damage => 16,
+               upgrade => 2,
                cooldown => 22 / $FPS,
                splash => 1,
                type => 'implosive',
+               range => 2,
        },
-       range => 2,
-},
+],
 sight => 7,
 speed => 11,
 upgrade => [
@@ -854,11 +876,12 @@ special => [
                build => 80,
                desc => 'doubles attack speed and faster movement for a few seconds at the cost of 10 health',
                speed => 17,
-               attack => {
-                       ground => {
+               attack => [
+                       {
+                               anti => 1,
                                cooldown => 11 / $FPS,
                        },
-               },
+               ],
                duration => 220 / $FPS,
        },
 ],
@@ -879,15 +902,16 @@ race => 'terran',
 organic => 1,
 hp =>  45,
 armor => 0,
-attack => {
-       ground => {
-               damage => [10, 11, 12, 13],
+attack => [
+       {
+               anti => 3,
+               damage => 10,
+               upgrade => 1,
                cooldown => 22 / $FPS,
                type => 'implosive',
+               range => 7,
        },
-       air => 'ground',
-       range => 7,
-},
+],
 sight => 9,
 speed => 11,
 upgrade => [
@@ -897,12 +921,12 @@ upgrade => [
                gas => 150,
                build => 166,
                sight => 11 - 9,
-               special => {
-                       ns => {
-                               # nuke
-                               range => 10-8,
-                       },
-               },
+#              special => {
+#                      ns => {
+#                              # nuke
+#                              range => 10-8,
+#                      },
+#              },
        },
        {
                name => 'Moebius Reactor',
@@ -960,12 +984,10 @@ race => 'terran',
 organic => 1,
 hp =>  60,
 armor => 1,
-attack => {
-},
 sight => 9,
 speed => 11,
 energy => 200,
-update => [
+upgrade => [
        {
                name => 'Caduceus Reactor',
                min => 150,
@@ -1023,14 +1045,16 @@ race => 'terran',
 organic => 0,
 hp =>  80,
 armor => 0,
-attack => {
-       ground => {
-               damage => [20, 22, 24, 26],
+attack => [
+       {
+               anti => 1,
+               damage => 20,
+               upgrade => 2,
                cooldown => 30 / $FPS,
                type => 'implosive',
+               range => 5,
        },
-       range => 5,
-},
+],
 sight => 8,
 speed => 20,
 upgrade => [
@@ -1056,14 +1080,15 @@ special => [
                hp => 20,
                suit => 1,
                armor => 0,
-               attack => {
-                       ground => {
+               attack => [
+                       {
+                               anti => 1,
                                damage => 125,
                                splash => 1,
                                type => 'explosive',
+                               range => 3,
                        },
-                       range => 3,
-               },
+               ],
                sight => 3,
                speed => 25,
     },
@@ -1085,14 +1110,16 @@ race => 'terran',
 organic => 0,
 hp => 150,
 armor => 1,
-attack => {
-       ground => {
-               damage => [30, 33, 36, 39],
+attack => [
+       {
+               anti => 1,
+               damage => 30,
+               upgrade => 3,
                cooldown => 37 / $FPS,
                type => 'explosive',
+               range => 7,
        },
-       range => 7,
-},
+],
 sight => 10,
 speed => 12,
 special => [
@@ -1103,15 +1130,17 @@ special => [
                gas => 150,
                build => 80,
                alt => 'Sieged Tank',
-               attack => {
-                       ground => {
-                               damage => [70, 75, 80, 85],
+               attack => [
+                       {
+                               anti => 1,
+                               damage => 70,
+                               upgrade => 5,
                                cooldown => 75 / $FPS,
                                splash => 1,
                                type => 'explosive',
+                               range => 12,
                        },
-                       range => 12,
-               },
+               ],
                speed => 0,
        },
 ],
@@ -1132,18 +1161,23 @@ race => 'terran',
 organic => 0,
 hp => 125,
 armor => 1,
-attack => {
-       ground => {
-               damage => [12, 13, 14, 15],
+attack => [
+       {
+               anti => 1,
+               damage => 12,
+               upgrade => 1,
                cooldown => 22 / $FPS,
+               range => 5,
        },
-       air => {
-               damage => [20, 24, 28, 32],
+       {
+               anti => 2,
+               damage => 20,
+               upgrade => 4,
                type => 'explosive',
                cooldown => 22 / $FPS,
+               range => 5,
        },
-       range => 5,
-},
+],
 sight => 8,
 speed => 13,
 upgrade => [
@@ -1152,11 +1186,12 @@ upgrade => [
                min => 100,
                gas => 100,
                build => 133,
-               attack => {
-#                      air => {
+               attack => [
+                       {},
+                       {
                                range => 8 - 5,
-#                      },
-               },
+                       },
+               ],
        },
 ],
 },
@@ -1174,18 +1209,23 @@ organic => 0,
 air => 1,
 hp => 120,
 armor => 0,
-attack => {
-       ground => {
-               damage => [8, 9, 10, 11],
+attack => [
+       {
+               anti => 1,
+               damage => 8,
+               upgrade => 1,
                cooldown => 30 / $FPS,
+               range => 5,
        },
-       air => {
-               damage => [20, 22, 24, 26],
+       {
+               anti => 2,
+               damage => 20,
+               upgrade => 2,
                cooldown => 22 / $FPS,
                type => 'explosive',
+               range => 5,
        },
-       range => 5,
-},
+],
 sight => 7,
 speed => 17,
 energy => 200,
@@ -1228,14 +1268,15 @@ organic => 0,
 air => 1,
 hp => 500,
 armor => 3,
-attack => {
-       ground => {
-               damage => [25, 28, 31, 34],
+attack => [
+       {
+               anti => 3,
+               damage => 25,
+               upgrade => 3,
                cooldown => 30 / $FPS,
+               range => 6,
        },
-       air => 'ground',
-       range => 6,
-},
+],
 sight => 11,
 speed => 7,
 energy => 200,
@@ -1247,13 +1288,13 @@ special => [
                gas => 100,
                build => 120,
                desc => 'blast doing 260 damage to a target',
-               attack => {
-                       ground => {
+               attack => [
+                       {
+                               anti => 3,
                                damage => 260,
+                               range => 10,
                        },
-                       air => 'ground',
-                       range => 10,
-               },
+               ],
                cost => 150,
        },
 ],
@@ -1350,16 +1391,18 @@ organic => 0,
 air => 1,
 hp => 200,
 armor => 2,
-attack => {
-       air => {
-               damage => [6, 7, 8, 9],
+attack => [
+       {
+               anti => 2,
+               damage => 6,
+               upgrade => 1,
                cooldown => 64 / $FPS,
                splash => 1,
                type => 'explosive',
                count => 8,
+               range => 6,
        },
-       range => 6,
-},
+],
 sight => 8,
 speed => 19,
 },
@@ -1397,13 +1440,14 @@ race => 'zerg',
 organic => 1,
 hp => 40,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                damage => 5,
                cooldown => 22 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 7,
 speed => 14,
 },
@@ -1494,14 +1538,15 @@ suit => 3,
 race => 'zerg',
 hp => 300,
 armor => 2,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                damage => 40,
                cooldown => 32 / $FPS,
                type => 'explosive',
+               range => 7,
        },
-       range => 7,
-},
+],
 sight => 10,
 speed => 0,
 },
@@ -1516,13 +1561,14 @@ suit => 3,
 race => 'zerg',
 hp => 400,
 armor => 0,
-attack => {
-       air => {
+attack => [
+       {
+               anti => 2,
                damage => 15,
                cooldown => 15 / $FPS,
+               range => 7,
        },
-       range => 7,
-},
+],
 sight => 10,
 detect => 1,
 speed => 0,
@@ -1540,13 +1586,15 @@ race => 'zerg',
 organic => 1,
 hp => 35,
 armor => 0,
-attack => {
-       ground => {
-               damage => [5, 6, 7, 8],
+attack => [
+       {
+               anti => 1,
+               damage => 5,
+               upgrade => 1,
                cooldown => 8 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 5,
 speed => 14,
 upgrade => [
@@ -1562,11 +1610,11 @@ upgrade => [
                min => 200,
                gas => 200,
                build => 80,
-               attack => {
-                       ground => {
+               attack => [
+                       {
                                cooldown => 6 / $FPS,
                        },
-               },
+               ],
        },
 ],
 counter => ['archon', 'templar', 'firebat'],
@@ -1584,15 +1632,16 @@ race => 'zerg',
 organic => 1,
 hp => 80,
 armor => 0,
-attack => {
-       ground => {
-               damage => [10, 11, 12, 13],
+attack => [
+       {
+               anti => 3,
+               damage => 10,
+               upgrade => 1,
                cooldown => 15 / $FPS,
                type => 'explosive',
+               range => 4,
        },
-       air => 'ground',
-       range => 4,
-},
+],
 sight => 6,
 speed => 11,
 upgrade => [
@@ -1601,9 +1650,11 @@ upgrade => [
                min => 150,
                gas => 150,
                build => 100,
-               attack => {
-                       range => 5 - 4,
-               },
+               attack => [
+                       {
+                               range => 5 - 4,
+                       },
+               ],
        },
        {
                name => 'Muscular Augments',
@@ -1634,14 +1685,16 @@ race => 'zerg',
 organic => 1,
 hp => 125,
 armor => 1,
-attack => {
-       ground => {
-               damage => [20, 22, 24, 26],
+attack => [
+       {
+               anti => 1,
+               damage => 20,
+               upgrade => 2,
                cooldown => 37 / $FPS,
                splash => 'line',
+               range => 6,
        },
-       range => 6,
-},
+],
 sight => 8,
 speed => 17,
 },
@@ -1704,13 +1757,15 @@ special => [
                organic => 1,
                hp => 30,
                armor => 0,
-               attack => {
-                       ground => {
-                               damage => [4, 5, 6, 7],
+               attack => [
+                       {
+                               anti => 1,
+                               damage => 4,
+                               upgrade => 1,
                                cooldown => 15 / $FPS,
+                               range => 1,
                        },
-                       range => 1,
-               },
+               ],
                sight => 5,
                speed => 19,
        },
@@ -1729,14 +1784,15 @@ race => 'zerg',
 organic => 1,
 hp => 60,
 armor => 0,
-attack => {
-       ground => {
+attack => [
+       {
+               anti => 1,
                damage => 500,
                splash => 1,
                type => 'explosive',
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 5,
 speed => 17,
 },
@@ -1754,12 +1810,13 @@ organic => 1,
 air => 1,
 hp => 25,
 armor => 0,
-attack => {
-       air => {
+attack => [
+       {
+               anti => 2,
                damage => 110,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 5,
 speed => 18,
 counter => ['cannon', 'goliath', 'hydralisk'],
@@ -1778,15 +1835,16 @@ organic => 1,
 air => 1,
 hp => 120,
 armor => 0,
-attack => {
-       ground => {
-               damage => [9 .. 12],
+attack => [
+       {
+               anti => 3,
+               damage => 9,
+               upgrade => 1,
                cooldown => 30 / $FPS,
                splash => 'bounce',
+               range => 3,
        },
-       air => 'ground',
-       range => 3,
-},
+],
 sight => 7,
 speed => 18,
 special => [
@@ -1818,13 +1876,15 @@ organic => 1,
 air => 1,
 hp => 150,
 armor => 2,
-attack => {
-       ground => {
-               damage => [20, 22, 24, 26],
+attack => [
+       {
+               anti => 1,
+               damage => 20,
+               upgrade => 2,
                cooldown => 30 / $FPS,
+               range => 8,
        },
-       range => 8,
-},
+],
 sight => 11,
 speed => 7,
 },
@@ -1843,14 +1903,16 @@ organic => 1,
 air => 1,
 hp => 250,
 armor => 2,
-attack => {
-       air => {
-               damage => [25, 27, 29, 31],
+attack => [
+       {
+               anti => 2,
+               damage => 25,
+               upgrade => 2,
                cooldown => 100 / $FPS,
                type => 'explosive',
+               range => 6,
        },
-       range => 6,
-},
+],
 sight => 10,
 speed => 15,
 counter => ['goliath', 'dragoon', 'scourge'],
@@ -1917,13 +1979,15 @@ race => 'zerg',
 organic => 1,
 hp => 400,
 armor => 1,
-attack => {
-       ground => {
-               damage => [20, 23, 26, 29],
+attack => [
+       {
+               anti => 1,
+               damage => 20,
+               upgrade => 3,
                cooldown => 15 / $FPS,
+               range => 1,
        },
-       range => 1,
-},
+],
 sight => 7,
 speed => 16,
 upgrade => [