termcol: numeric module version requirements
[sheet.git] / sc-units-bw.inc.pl
index ae4689af80f052f19a2d75724e0e3f911fb6b31f..f4c1f7c9c9e1b0a1e11a73c5988cbe4e5cc682a8 100644 (file)
@@ -1,11 +1,12 @@
 use utf8;
 use strict;
 
+my $PPT = 32;  # tile size in pixels
 my $FPS = 1000 / 56;  # frames per second on fast
 # energy      += 8HP/frame ≈ .74 per second
 # toss shield += 7HP/frame ≈ .65/s
 # zerg regen  += 4HP/frame ≈ .37/s
-my $SM = $FPS / 32;  # pixels per frame to tiles per second multiplication
+my $SM = $FPS / $PPT;  # pixels per frame to tiles per second multiplication
 
 [
 '<span title="no known changes as of v1.16.1">version≥1.08</span>',
@@ -20,6 +21,7 @@ min => 50,
 gas => 0,
 build => 20,
 suit => 1,
+size => 23 / $PPT,
 pop => 1,
 cargo => 1,
 race => 'protoss',
@@ -54,6 +56,7 @@ min => 150,
 gas => 0,
 build => 50,
 suit => 3,
+size => 2, # 41x33
 race => 'protoss',
 attr => {
        structure => 1,
@@ -64,6 +67,7 @@ armor => 0,
 attack => [
        {
                anti => 3,
+               name => 'STS/A Photon Cannon',
                damage => 20,
                cooldown => 22 / $FPS,
                range => 7,
@@ -86,6 +90,7 @@ min => 100,
 gas => 0,
 build => 40,
 suit => 1,
+size => 23 / $PPT, # x19
 pop => 2,
 cargo => 2,
 race => 'protoss',
@@ -99,10 +104,11 @@ attack => [
        {
                anti => 1,
                name => "Psi Blades",
-               damage => 16,
-               upgrade => 2,
+               damage => 8,
+               count => 2,
+               upgrade => 1,
                cooldown => 22 / $FPS,
-               range => 0,
+               range => 15 / $PPT,
        },
 ],
 sight => 7,
@@ -130,6 +136,7 @@ min => 125,
 gas => 50,
 build => 50,
 suit => 3,
+size => 32 / $PPT,
 pop => 2,
 cargo => 4,
 race => 'protoss',
@@ -179,6 +186,7 @@ min => 50,
 gas => 150,
 build => 50,
 suit => 1,
+size => 24 / $PPT,
 pop => 2,
 cargo => 2,
 race => 'protoss',
@@ -239,6 +247,7 @@ min => 125,
 gas => 100,
 build => 50,
 suit => 1,
+size => 25 / $PPT, # 24x26
 pop => 2,
 cargo => 2,
 race => 'protoss',
@@ -255,7 +264,7 @@ attack => [
                damage => 40,
                upgrade => 3,
                cooldown => 30 / $FPS,
-               range => 0,
+               range => 15 / $PPT,
        },
 ],
 sight => 7,
@@ -282,6 +291,7 @@ gas => 300,
 build => 20,
 base => ['templar', 'templar'],
 suit => 3,
+size => 32 / $PPT,
 pop => 4,
 cargo => 4,
 race => 'protoss',
@@ -318,6 +328,7 @@ gas => 200,
 build => 20,
 base => ['dark templar', 'dark templar'],
 suit => 3,
+size => 32 / $PPT,
 pop => 4,
 cargo => 4,
 race => 'protoss',
@@ -385,6 +396,7 @@ min => 275,
 gas => 125,
 build => 80,
 suit => 3,
+size => 36 / $PPT, # x32
 pop => 3,
 race => 'protoss',
 attr => {
@@ -398,6 +410,7 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Dual Photon Blasters',
                damage => 8,
                upgrade => 1,
                cooldown => 30 / $FPS,
@@ -405,8 +418,10 @@ attack => [
        },
        {
                anti => 2,
-               damage => 28,
-               upgrade => 2,
+               name => 'Anti-Matter Missiles',
+               damage => 14,
+               count => 2,
+               upgrade => 1,
                type => 'explosive',
                cooldown => 22 / $FPS,
                range => 4,
@@ -442,6 +457,7 @@ min => 150,
 gas => 100,
 build => 40,
 suit => 2,
+size => 36 / $PPT, # x32
 pop => 2,
 race => 'protoss',
 attr => {
@@ -455,6 +471,7 @@ armor => 1,
 attack => [
        {
                anti => 2,
+               name => 'Neutron Flare',
                damage => 5,
                upgrade => 1,
                cooldown => 8 / $FPS,
@@ -503,6 +520,7 @@ min => 350,
 gas => 250,
 build => 140,
 suit => 3,
+size => 64 / $PPT,
 pop => 6,
 race => 'protoss',
 attr => {
@@ -529,6 +547,7 @@ special => [
                min => 25,
                build => 20,
                suit => 1,
+               size => 16 / $PPT,
                pop => 0,
                race => 'protoss',
                attr => {
@@ -541,15 +560,15 @@ special => [
                attack => [
                        {
                                anti => 3,
+                               name => 'Pulse Cannon',
                                damage => 6,
                                upgrade => 1,
                                cooldown => 43 / $FPS, # approximately 37 according to liquipedia
                                build => 20,
-                               range => 0,
+                               range => 4,
                        },
                ],
                sight => 6,
-               range => 0,
                speed => 13.33 * $SM,
        },
 ],
@@ -577,6 +596,7 @@ min => 100,
 gas => 350,
 build => 160,
 suit => 3,
+size => 44 / $PPT,
 pop => 4,
 race => 'protoss',
 attr => {
@@ -590,6 +610,7 @@ armor => 1,
 attack => [
        {
                anti => 3,
+               name => 'Phase Disruptor Cannon',
                damage => 10,
                upgrade => 1,
                cooldown => 45 / $FPS,
@@ -649,6 +670,7 @@ min => 200,
 gas => 100,
 build => 70,
 suit => 3,
+size => 32 / $PPT,
 pop => 4,
 cargo => 4,
 race => 'protoss',
@@ -715,6 +737,7 @@ min => 25,
 gas => 75,
 build => 40,
 suit => 1,
+size => 32 / $PPT,
 pop => 1,
 race => 'protoss',
 attr => {
@@ -764,6 +787,7 @@ min => 200,
 gas => 0,
 build => 60,
 suit => 3,
+size => 40 / $PPT, # x32
 pop => 2,
 cargo => -8,
 race => 'protoss',
@@ -797,6 +821,7 @@ min => 50,
 gas => 0,
 build => 20,
 suit => 1,
+size => 23 / $PPT,
 pop => 1,
 cargo => 1,
 race => 'terran',
@@ -809,9 +834,10 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Fusion Cutter',
                damage => 5,
                cooldown => 15 / $FPS,
-               range => 0,
+               range => 10 / $PPT,
        },
 ],
 sight => 7,
@@ -828,6 +854,7 @@ min => 75,
 gas => 0,
 build => 30,
 suit => 3,
+size => 2, # 33x49
 race => 'terran',
 attr => {
        structure => 1,
@@ -837,6 +864,7 @@ armor => 0,
 attack => [
        {
                anti => 2,
+               name => 'Longbolt Missile',
                damage => 20,
                cooldown => 15 / $FPS,
                type => 'explosive',
@@ -858,6 +886,7 @@ min => 50,
 gas => 0,
 build => 24,
 suit => 1,
+size => 17 / $PPT, # x20
 pop => 1,
 cargo => 1,
 race => 'terran',
@@ -869,6 +898,7 @@ armor => 0,
 attack => [
        {
                anti => 3,
+               name => 'Gauss Rifle',
                damage => 6,
                upgrade => 1,
                cooldown => 15 / $FPS,
@@ -917,6 +947,7 @@ min => 50,
 gas => 25,
 build => 24,
 suit => 1,
+size => 23 / $PPT, # x22
 pop => 1,
 cargo => 1,
 race => 'terran',
@@ -928,12 +959,13 @@ armor => 1,
 attack => [
        {
                anti => 1,
+               name => 'Flame Thrower',
                damage => 16,
                upgrade => 2,
                cooldown => 22 / $FPS,
                splash => 1,
                type => 'implosive',
-               range => 2,
+               range => 1,
        },
 ],
 sight => 7,
@@ -970,6 +1002,7 @@ min => 25,
 gas => 75,
 build => 50,
 suit => 1,
+size => 15 / $PPT, # x22
 pop => 1,
 cargo => 1,
 race => 'terran',
@@ -981,6 +1014,7 @@ armor => 0,
 attack => [
        {
                anti => 3,
+               name => 'C-10 Canister Rifle',
                damage => 10,
                upgrade => 1,
                cooldown => 22 / $FPS,
@@ -1057,6 +1091,7 @@ min => 50,
 gas => 25,
 build => 30,
 suit => 1,
+size => 17 / $PPT, # x20
 pop => 1,
 cargo => 1,
 race => 'terran',
@@ -1123,6 +1158,7 @@ min => 75,
 gas => 0,
 build => 30,
 suit => 2,
+size => 32 / $PPT,
 pop => 2,
 cargo => 2,
 race => 'terran',
@@ -1134,6 +1170,7 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Fragmentation Grenade',
                damage => 20,
                upgrade => 2,
                cooldown => 30 / $FPS,
@@ -1167,6 +1204,7 @@ special => [
                },
                hp => 20,
                suit => 1,
+               size => 15 / $PPT,
                armor => 0,
                attack => [
                        {
@@ -1174,7 +1212,7 @@ special => [
                                damage => 125,
                                splash => 1,
                                type => 'explosive',
-                               range => 3,
+                               range => 3, # to walk, melee to explode
                        },
                ],
                sight => 3,
@@ -1193,6 +1231,7 @@ min => 150,
 gas => 100,
 build => 50,
 suit => 3,
+size => 32 / $PPT,
 pop => 2,
 cargo => 4,
 race => 'terran',
@@ -1204,6 +1243,7 @@ armor => 1,
 attack => [
        {
                anti => 1,
+               name => 'Arclite Cannon',
                damage => 30,
                upgrade => 3,
                cooldown => 37 / $FPS, # 15 after drop
@@ -1224,12 +1264,13 @@ special => [
                attack => [
                        {
                                anti => 1,
+                               name => 'Arclite Shock Cannon',
                                damage => 70,
                                upgrade => 5,
                                cooldown => 75 / $FPS,
                                splash => 1,
                                type => 'explosive',
-                               range => 12,
+                               range => 12, # minimum 2
                        },
                ],
                speed => 0,
@@ -1247,6 +1288,7 @@ min => 100,
 gas => 50,
 build => 40,
 suit => 3,
+size => 32 / $PPT,
 pop => 2,
 cargo => 2,
 race => 'terran',
@@ -1258,15 +1300,18 @@ armor => 1,
 attack => [
        {
                anti => 1,
+               name => 'Twin Autocannons',
                damage => 12,
                upgrade => 1,
                cooldown => 22 / $FPS, # 15 after drop
-               range => 5,
+               range => 6,
        },
        {
                anti => 2,
-               damage => 20,
-               upgrade => 4,
+               name => 'Hellfire Missile Pack',
+               damage => 10,
+               count => 2,
+               upgrade => 2,
                type => 'explosive',
                cooldown => 22 / $FPS,
                range => 5,
@@ -1297,6 +1342,7 @@ min => 150,
 gas => 100,
 build => 60,
 suit => 3,
+size => 38 / $PPT, # x30
 pop => 2,
 race => 'terran',
 attr => {
@@ -1309,6 +1355,7 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Burst Lasers',
                damage => 8,
                upgrade => 1,
                cooldown => 30 / $FPS,
@@ -1316,6 +1363,7 @@ attack => [
        },
        {
                anti => 2,
+               name => 'Gemini Missiles',
                damage => 20,
                upgrade => 2,
                cooldown => 22 / $FPS,
@@ -1361,6 +1409,7 @@ min => 400,
 gas => 300,
 build => 133,
 suit => 3,
+size => 75 / $PPT, # x59
 pop => 6,
 race => 'terran',
 attr => {
@@ -1373,6 +1422,7 @@ armor => 3,
 attack => [
        {
                anti => 3,
+               name => 'ATS/A Laser Battery',
                damage => 25,
                upgrade => 3,
                cooldown => 30 / $FPS,
@@ -1390,11 +1440,12 @@ special => [
                min => 100,
                gas => 100,
                build => 120,
-               desc => 'blast doing 260 damage to a target',
+               desc => 'blast doing 260 explosive damage to a target',
                attack => [
                        {
                                anti => 3,
                                damage => 260,
+                               type => 'explosive',
                                range => 10,
                        },
                ],
@@ -1423,6 +1474,7 @@ min => 100,
 gas => 225,
 build => 80,
 suit => 3,
+size => 65 / $PPT, # x50
 pop => 2,
 race => 'terran',
 attr => {
@@ -1494,6 +1546,7 @@ min => 250,
 gas => 125,
 build => 50,
 suit => 3,
+size => 49 / $PPT, # x37
 pop => 3,
 race => 'terran',
 attr => {
@@ -1506,6 +1559,7 @@ armor => 2,
 attack => [
        {
                anti => 2,
+               name => 'Halo Rockets',
                damage => 6,
                upgrade => 1,
                cooldown => 64 / $FPS,
@@ -1526,6 +1580,7 @@ min => 100,
 gas => 100,
 build => 50,
 suit => 3,
+size => 49 / $PPT, # x37
 pop => 2,
 cargo => -8,
 race => 'terran',
@@ -1551,6 +1606,7 @@ min => 50,
 gas => 0,
 build => 20,
 suit => 1,
+size => 23 / $PPT,
 pop => 1,
 cargo => 1,
 race => 'zerg',
@@ -1562,6 +1618,7 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Spines',
                damage => 5,
                cooldown => 22 / $FPS,
                range => 1,
@@ -1578,6 +1635,7 @@ min => 100,
 gas => 0,
 build => 40,
 suit => 3,
+size => 50 / $PPT,
 pop => -9,
 cargo => 0,
 race => 'zerg',
@@ -1626,6 +1684,7 @@ trans => {
 },
 build => 20,
 suit => 1,
+size => 16 / $PPT,
 pop => 0,
 race => 'zerg',
 attr => {
@@ -1660,6 +1719,7 @@ min => 175,
 gas => 0,
 build => 20,
 suit => 3,
+size => 2, # 48x48
 race => 'zerg',
 attr => {
        structure => 1,
@@ -1669,6 +1729,7 @@ armor => 2,
 attack => [
        {
                anti => 1,
+               name => 'Subterranean Tentacle',
                damage => 40,
                cooldown => 32 / $FPS,
                type => 'explosive',
@@ -1686,6 +1747,7 @@ min => 175,
 gas => 0,
 build => 20,
 suit => 3,
+size => 2, # 48x48
 race => 'zerg',
 attr => {
        structure => 1,
@@ -1695,6 +1757,7 @@ armor => 0,
 attack => [
        {
                anti => 2,
+               name => 'Seeker Spores',
                damage => 15,
                cooldown => 15 / $FPS,
                range => 7,
@@ -1712,6 +1775,7 @@ min => 25,
 gas => 0,
 build => 28, # for 2
 suit => 1,
+size => 16 / $PPT,
 pop => 0.5,
 cargo => 1,
 race => 'zerg',
@@ -1723,10 +1787,11 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Claws',
                damage => 5,
                upgrade => 1,
                cooldown => 8 / $FPS,
-               range => 0,
+               range => 15 / $PPT,
        },
 ],
 sight => 5,
@@ -1761,6 +1826,7 @@ min => 75,
 gas => 25,
 build => 28,
 suit => 2,
+size => 21 / $PPT, # x23
 pop => 1,
 cargo => 2,
 race => 'zerg',
@@ -1772,6 +1838,7 @@ armor => 0,
 attack => [
        {
                anti => 3,
+               name => 'Needle Spines',
                damage => 10,
                upgrade => 1,
                cooldown => 15 / $FPS,
@@ -1817,6 +1884,7 @@ gas => 125,
 base => 'hydralisk',
 build => 40,
 suit => 2,
+size => 32 / $PPT,
 pop => 2,
 cargo => 4,
 race => 'zerg',
@@ -1828,6 +1896,7 @@ armor => 1,
 attack => [
        {
                anti => 1,
+               name => 'Subterranean Spines',
                damage => 20,
                upgrade => 2,
                cooldown => 37 / $FPS,
@@ -1846,6 +1915,7 @@ min => 100,
 gas => 100,
 build => 50,
 suit => 2,
+size => 48 / $PPT,
 pop => 2,
 race => 'zerg',
 attr => {
@@ -1897,6 +1967,7 @@ special => [
                count => 2,
                alt => 'Broodling',
                suit => 1,
+               size => 19 / $PPT,
                pop => 0,
                attr => {
                        organic => 1,
@@ -1906,10 +1977,11 @@ special => [
                attack => [
                        {
                                anti => 1,
+                               name => 'Toxic Spores',
                                damage => 4,
                                upgrade => 1,
                                cooldown => 15 / $FPS,
-                               range => 0,
+                               range => 2 / $PPT,
                        },
                ],
                sight => 5,
@@ -1925,6 +1997,7 @@ min => 100,
 gas => 50,
 build => 40,
 suit => 1,
+size => 17 / $PPT, # x20
 pop => 1,
 race => 'zerg',
 attr => {
@@ -1935,10 +2008,11 @@ armor => 0,
 attack => [
        {
                anti => 1,
+               name => 'Suicide',
                damage => 500,
                splash => 1,
                type => 'explosive',
-               range => 0,
+               range => 3 / $PPT,
        },
 ],
 sight => 5,
@@ -1952,6 +2026,7 @@ min => 12,
 gas => 38,
 build => 30, # for 2
 suit => 1,
+size => 24 / $PPT,
 pop => 0.5,
 race => 'zerg',
 attr => {
@@ -1964,8 +2039,9 @@ armor => 0,
 attack => [
        {
                anti => 2,
+               name => 'Suicide',
                damage => 110,
-               range => 0,
+               range => 3 / $PPT,
        },
 ],
 sight => 5,
@@ -1980,6 +2056,7 @@ min => 100,
 gas => 100,
 build => 40,
 suit => 1,
+size => 44 / $PPT,
 pop => 2,
 race => 'zerg',
 attr => {
@@ -1992,6 +2069,7 @@ armor => 0,
 attack => [
        {
                anti => 3,
+               name => 'Glave Wurm',
                damage => 9,
                upgrade => 1,
                cooldown => 30 / $FPS,
@@ -2005,6 +2083,7 @@ special => [
        {
                alt => 'Cocoon',
                suit => 3,
+               size => 32 / $PPT,
                attr => {
                        organic => 1,
                        flying => 1,
@@ -2027,6 +2106,7 @@ gas => 200,
 build => 40,
 base => 'mutalisk',
 suit => 3,
+size => 44 / $PPT,
 pop => 2,
 race => 'zerg',
 attr => {
@@ -2039,6 +2119,7 @@ armor => 2,
 attack => [
        {
                anti => 1,
+               name => 'Acid Spore',
                damage => 20,
                upgrade => 2,
                cooldown => 30 / $FPS,
@@ -2057,6 +2138,7 @@ gas => 150,
 build => 40,
 base => 'mutalisk',
 suit => 3,
+size => 44 / $PPT,
 pop => 2,
 race => 'zerg',
 attr => {
@@ -2069,6 +2151,7 @@ armor => 2,
 attack => [
        {
                anti => 2,
+               name => 'Corrosive Acid',
                damage => 25,
                upgrade => 2,
                cooldown => 100 / $FPS,
@@ -2088,6 +2171,7 @@ min => 50,
 gas => 150,
 build => 50,
 suit => 2,
+size => 27 / $PPT, # x25
 pop => 2,
 cargo => 2,
 race => 'zerg',
@@ -2151,6 +2235,7 @@ min => 200,
 gas => 200,
 build => 60,
 suit => 3,
+size => 38 / $PPT, # x32
 pop => 4,
 cargo => 4,
 race => 'zerg',
@@ -2162,10 +2247,11 @@ armor => 1,
 attack => [
        {
                anti => 1,
+               name => 'Kaiser Blades',
                damage => 20,
                upgrade => 3,
                cooldown => 15 / $FPS,
-               range => 0,
+               range => 25 / $PPT,
        },
 ],
 sight => 7,