sc: reorder and improve starcraft2 units
[sheet.git] / sc-units.inc.pl
index 62fbf8fc30a51cb11f3ba094956da2cd7217f0c4..af100913b7c062b3c192eeebc6fcc901481db7c4 100644 (file)
@@ -21,7 +21,7 @@ attack => {
        ground => {
                name => "Particle Beam",
                damage => 5,
-               cmp => 7,
+               dps => 7,
        },
        range => 1,
 },
@@ -42,7 +42,6 @@ min => 150,
 gas => 0,
 build => 50,
 suit => 3,
-unit => 0,
 race => 'protoss',
 hp => 100,
 shield => 100,
@@ -50,12 +49,9 @@ armor => 0,
 attack => {
        ground => {
                damage => 20,
-               cmp => 27,
-       },
-       air => {
-               damage => 20,
-               cmp => 27,
+               dps => 27,
        },
+       air => 'ground',
        range => 7,
 },
 sight => 11,
@@ -86,7 +82,7 @@ attack => {
        ground => {
                name => "Psi Blades",
                damage => [16, 18, 20, 22],
-               cmp => [22, undef, undef, 30],
+               dps => [22, undef, undef, 30],
        },
        range => 1,
 },
@@ -123,14 +119,10 @@ attack => {
        ground => {
                name => "Phase Disruptor",
                damage => [20, 22, 24, 26],
-               cmp => [20, 22, 24, 26],
-               type => 'explosive',
-       },
-       air => {
-               damage => [20, 22, 24, 26],
-               cmp => [20, 22, 24, 26],
+               dps => [20, 22, 24, 26],
                type => 'explosive',
        },
+       air => 'ground',
        range => 4,
 },
 sight => 8,
@@ -228,7 +220,7 @@ attack => {
        ground => {
                name => "Warp Blades",
                damage => [40, 43, 46, 49],
-               cmp => [40, 43, 46, 49],
+               dps => [40, 43, 46, 49],
        },
        range => 1,
 },
@@ -260,14 +252,10 @@ attack => {
        ground => {
                name => "Psionic Shockwave",
                damage => [30, 33, 36, 39],
-               cmp => [45, undef, undef, 59],
-               splash => 1,
-       },
-       air => {
-               damage => [30, 33, 36, 39],
-               cmp => [45, undef, undef, 59],
+               dps => [45, undef, undef, 59],
                splash => 1,
        },
+       air => 'ground',
        range => 2,
 },
 sight => 8,
@@ -365,11 +353,11 @@ armor => 0,
 attack => {
        ground => {
                damage => [8, 9, 10, 11],
-               cmp => [8, 9, 10, 11],
+               dps => [8, 9, 10, 11],
        },
        air => {
                damage => [28, 30, 32, 34],
-               cmp => [38, undef, undef, 46],
+               dps => [38, undef, undef, 46],
                type => 'explosive',
        },
        range => 4,
@@ -407,7 +395,7 @@ armor => 1,
 attack => {
        air => {
                damage => [5, 6, 7, 8],
-               cmp => [19, undef, undef, 30],
+               dps => [19, undef, undef, 30],
                splash => 1,
                type => 'explosive',
        },
@@ -446,24 +434,49 @@ shield => 150,
 armor => 4,
 attack => {
        ground => {
-               damage => [6, 7, 8, 9],
-               cmp => [17, undef, undef, 49],
-               min => 25,
-               build => 12.7*$FM,
-               max => 4,
-       },
-       air => {
-               damage => [6, 7, 8, 9],
-               cmp => [17, undef, undef, 49],
-               min => 25,
+               dps => [17, undef, undef, 49],
                build => 12.7*$FM,
                max => 4,
        },
+       air => 'ground',
        range => 8,
 },
 sight => 11,
 speed => 10,
-special => [],
+special => [
+       {
+               alt => 'Interceptor',
+               min => 25,
+               build => 20,
+               suit => 1,
+               unit => 0,
+               race => 'protoss',
+               organic => 0,
+               hp => 40,
+               shield => 40,
+               armor => 0,
+               attack => {
+                       ground => {
+                               damage => [6, 7, 8, 9],
+                               dps => [4, 5, 5, 6],
+                               cooldown => 37, # approximate, varies
+                               build => 12.7*$FM,
+                       },
+                       air => 'ground',
+                       range => 0,
+               },
+               sight => 0,
+               range => 0,
+       },
+],
+upgrade => [
+       {
+               name => 'Carrier Capacity',
+               damage => {
+                       max => 4,
+               },
+       },
+],
 counter => ['wraith', 'corsair', 'scourge'],
 },
 
@@ -487,14 +500,10 @@ armor => 1,
 attack => {
        ground => {
                damage => [10, 11, 12, 13],
-               cmp => [7, undef, undef, 9],
-               type => 'explosive',
-       },
-       air => {
-               damage => [10, 11, 12, 13],
-               cmp => [7, undef, undef, 9],
+               dps => [7, undef, undef, 9],
                type => 'explosive',
        },
+       air => 'ground',
        range => 5,
 },
 sight => 9,
@@ -546,7 +555,7 @@ armor => 0,
 attack => {
        ground => {
                damage => 100,
-               cmp => 50,
+               dps => 50,
                splash => 1,
                cost => 15,
                build => 4.54*$FM,
@@ -561,7 +570,7 @@ upgrade => [
                attack => {
                        ground => {
                                damage => 125 - 100,
-                               cmp => 63 - 50,
+                               dps => 63 - 50,
                        },
                },
        },
@@ -668,7 +677,7 @@ armor => 0,
 attack => {
        ground => {
                damage => 5,
-               cmp => 10,
+               dps => 10,
        },
        range => 1,
 },
@@ -687,14 +696,13 @@ min => 75,
 gas => 0,
 build => 30,
 suit => 3,
-unit => 0,
 race => 'terran',
 hp => 200,
 armor => 0,
 attack => {
        air => {
                damage => 20,
-               cmp => 40,
+               dps => 40,
                type => 'explosive',
        },
        range => 7,
@@ -723,12 +731,9 @@ armor => 0,
 attack => {
        ground => {
                damage => [6, 7, 8, 9],
-               cmp => [12, undef, undef, 18],
-       },
-       air => {
-               damage => [6, 7, 8, 9],
-               cmp => [12, undef, undef, 18],
+               dps => [12, undef, undef, 18],
        },
+       air => 'ground',
        range => 4,
 },
 sight => 7,
@@ -748,11 +753,9 @@ special => [
                speed => 17,
                attack => {
                        ground => {
-                               cmp => [24, undef, undef, 36],
-                       },
-                       air => {
-                               cmp => [24, undef, undef, 36],
+                               dps => [24, undef, undef, 36],
                        },
+                       air => 'ground',
                },
                duration => undef, #XXX
        },
@@ -774,7 +777,7 @@ armor => 1,
 attack => {
        ground => {
                damage => [16, 18, 20, 22],
-               cmp => [22, undef, undef, 30],
+               dps => [22, undef, undef, 30],
                splash => 1,
                type => 'implosive',
        },
@@ -789,7 +792,7 @@ special => [
                desc => 'doubles attack speed and faster movement for a few seconds at the cost of 10 health',
                speed => 17,
                attack => {
-                       cmp => [44, undef, undef, 60],
+                       dps => [44, undef, undef, 60],
                },
                duration => undef, #XXX
        },
@@ -814,14 +817,10 @@ armor => 0,
 attack => {
        ground => {
                damage => [10, 11, 12, 13],
-               cmp => [14, undef, undef, 18],
-               type => 'implosive',
-       },
-       air => {
-               damage => [10, 11, 12, 13],
-               cmp => [14, undef, undef, 18],
+               dps => [14, undef, undef, 18],
                type => 'implosive',
        },
+       air => 'ground',
        range => 7,
 },
 sight => 9,
@@ -918,7 +917,7 @@ armor => 0,
 attack => {
        ground => {
                damage => [20, 22, 24, 26],
-               cmp => [20, 22, 24, 26],
+               dps => [20, 22, 24, 26],
                type => 'implosive',
        },
        range => 5,
@@ -963,7 +962,7 @@ armor => 1,
 attack => {
        ground => {
                damage => [30, 33, 36, 39],
-               cmp => [24, undef, undef, 32],
+               dps => [24, undef, undef, 32],
                type => 'explosive',
        },
        range => 7,
@@ -978,7 +977,7 @@ special => [
                attack => {
                        ground => {
                                damage => [70, 75, 80, 85],
-                               cmp => [28, 30, 32, 34],
+                               dps => [28, 30, 32, 34],
                                splash => 1,
                                type => 'explosive',
                        },
@@ -1008,11 +1007,11 @@ armor => 1,
 attack => {
        ground => {
                damage => [12, 13, 14, 15],
-               cmp => [16, undef, undef, 20],
+               dps => [16, undef, undef, 20],
        },
        air => {
                damage => [20, 24, 28, 32],
-               cmp => [27, undef, undef, 44],
+               dps => [27, undef, undef, 44],
                type => 'explosive',
        },
        range => 5,
@@ -1047,11 +1046,11 @@ armor => 0,
 attack => {
        ground => {
                damage => [8, 9, 10, 11],
-               cmp => [8, 9, 10, 11],
+               dps => [8, 9, 10, 11],
        },
        air => {
                damage => [20, 22, 24, 26],
-               cmp => [27, undef, undef, 35],
+               dps => [27, undef, undef, 35],
                type => 'explosive',
        },
        range => 5,
@@ -1088,12 +1087,9 @@ armor => 3,
 attack => {
        ground => {
                damage => [25, 28, 31, 34],
-               cmp => [25, 28, 31, 34],
-       },
-       air => {
-               damage => [25, 28, 31, 34],
-               cmp => [25, 28, 31, 34],
+               dps => [25, 28, 31, 34],
        },
+       air => 'ground',
        range => 6,
 },
 sight => 11,
@@ -1183,7 +1179,7 @@ armor => 2,
 attack => {
        air => {
                damage => [6, 7, 8, 9],
-               cmp => [23, undef, undef, 25],
+               dps => [23, undef, undef, 25],
                splash => 1,
                type => 'explosive',
        },
@@ -1231,7 +1227,7 @@ armor => 0,
 attack => {
        ground => {
                damage => 5,
-               cmp => 7,
+               dps => 7,
        },
        range => 1,
 },
@@ -1276,8 +1272,6 @@ name => 'Larva',
 trans => {
        nl => 'larve',
 },
-min => 0,
-gas => 0,
 build => 14.3*$FM, # = 21.5
 suit => 1,
 unit => 0,
@@ -1289,29 +1283,25 @@ attack => {
 },
 sight => 4,
 speed => 0.1, #XXX
-special => [],
-},
-
-{
-cat => 'creep',
-name => 'Egg',
-trans => {
-       nl => 'ei',
-},
-min => 0,
-gas => 0,
-build => 0,
-suit => 3,
-unit => 0,
-race => 'zerg',
-organic => 1,
-hp => 200,
-armor => 10,
-attack => {
-},
-sight => 4,
-speed => 0,
-special => [],
+special => [
+       {
+               name => 'transform',
+               alt => 'Egg',
+               trans => {
+                       nl => 'ei',
+               },
+               suit => 3,
+               race => 'zerg',
+               organic => undef, # unchanged from parent
+               hp => 200,
+               armor => 10,
+               attack => {
+               },
+               sight => 4,
+               speed => 0,
+               special => [],
+       },
+],
 },
 
 {
@@ -1321,14 +1311,13 @@ min => 175,
 gas => 0,
 build => 20,
 suit => 3,
-unit => 0,
 race => 'zerg',
 hp => 300,
 armor => 2,
 attack => {
        ground => {
                damage => 40,
-               cmp => 38,
+               dps => 38,
                type => 'explosive',
        },
        range => 7,
@@ -1345,14 +1334,13 @@ min => 175,
 gas => 0,
 build => 20,
 suit => 3,
-unit => 0,
 race => 'zerg',
 hp => 400,
 armor => 0,
 attack => {
        air => {
                damage => 15,
-               cmp => 30,
+               dps => 30,
        },
        range => 7,
 },
@@ -1377,7 +1365,7 @@ armor => 0,
 attack => {
        ground => {
                damage => [5, 6, 7, 8],
-               cmp => [18, undef, undef, 29], # 29 is an estimate
+               dps => [18, undef, undef, 29], # 29 is an estimate
        },
        range => 1,
 },
@@ -1390,7 +1378,7 @@ upgrade => [
        {
                attack => {
                        ground => {
-                               cmp => [undef, undef, undef, 42 - 29],
+                               dps => [undef, undef, undef, 42 - 29],
                        },
                },
        },
@@ -1414,14 +1402,10 @@ armor => 0,
 attack => {
        ground => {
                damage => [10, 11, 12, 13],
-               cmp => [20, 22, 24, 26],
-               type => 'explosive',
-       },
-       air => {
-               damage => [10, 11, 12, 13],
-               cmp => [20, 22, 24, 26],
+               dps => [20, 22, 24, 26],
                type => 'explosive',
        },
+       air => 'ground',
        range => 4,
 },
 sight => 6,
@@ -1455,7 +1439,7 @@ armor => 1,
 attack => {
        ground => {
                damage => [20, 22, 24, 26],
-               cmp => [16, undef, undef, 21],
+               dps => [16, undef, undef, 21],
                splash => 1,
        },
        range => 6,
@@ -1505,37 +1489,29 @@ special => [
                duration => undef,
        },
        {
-               name => 'Broodling',
+               name => 'Spawn Broodling',
                abbr => 'sb',
                desc => 'spawn one inside an enemy unit killing it',
                range => 9,
                cost => 75-60,
-       },
-],
-},
 
-{
-cat => 'lair',
-name => 'Broodling',
-min => 0,
-gas => 0,
-build => 0,
-suit => 1,
-unit => 0,
-race => 'zerg',
-organic => 1,
-hp => 30,
-armor => 0,
-attack => {
-       ground => {
-               damage => [4, 5, 6, 7],
-               cmp => [8, 10, 12, 14],
+               alt => 'Broodling',
+               suit => 1,
+               unit => undef,
+               organic => undef,
+               hp => 30,
+               armor => 0,
+               attack => {
+                       ground => {
+                               damage => [4, 5, 6, 7],
+                               dps => [8, 10, 12, 14],
+                       },
+                       range => 1,
+               },
+               sight => 5,
+               speed => 19,
        },
-       range => 1,
-},
-sight => 5,
-speed => 19,
-special => [],
+],
 },
 
 {
@@ -1603,14 +1579,10 @@ armor => 0,
 attack => {
        ground => {
                damage => [9, 10, 11, 12],
-               cmp => [9, 10, 11, 12],
-               splash => 1,
-       },
-       air => {
-               damage => [9, 10, 11, 12],
-               cmp => [9, 10, 11, 12],
+               dps => [9, 10, 11, 12],
                splash => 1,
        },
+       air => 'ground',
        range => 3,
 },
 sight => 7,
@@ -1636,7 +1608,7 @@ armor => 2,
 attack => {
        ground => {
                damage => [20, 22, 24, 26],
-               cmp => [20, 22, 24, 26],
+               dps => [20, 22, 24, 26],
        },
        range => 8,
 },
@@ -1662,7 +1634,7 @@ armor => 2,
 attack => {
        air => {
                damage => [25, 27, 29, 31],
-               cmp => [8, undef, undef, 9],
+               dps => [8, undef, undef, 9],
                type => 'explosive',
        },
        range => 6,
@@ -1731,7 +1703,7 @@ armor => 1,
 attack => {
        ground => {
                damage => [20, 23, 26, 29],
-               cmp => [40, 46, 52, 58],
+               dps => [40, 46, 52, 58],
        },
        range => 1,
 },