sc: separate base damage from upgrade bonus
[sheet.git] / sc-units-hots.inc.pl
index 6b230d90be347c1e1d73c23d57603f745bfd3a83..5d558d101e92bba77ffc8c738408a34b225d79bf 100644 (file)
@@ -90,7 +90,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Repulsor Cannon',
-                       damage => [8 .. 11],
+                       damage => 8,
+                       upgrade => 1,
                        type => 'projectile',
                        cooldown => 0.85,
                        range => 5,
@@ -150,7 +151,8 @@ use strict;
                {
                        anti => 3,
                        name => 'Purifier beams',
-                       damage => [6 .. 9],
+                       damage => 6,
+                       upgrade => 1,
                        cooldown => 2.21,
                        count => 6,
                        range => 7,
@@ -249,7 +251,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Psi blades',
-                       damage => [8 .. 11],
+                       damage => 8,
+                       upgrade => 1,
                        cooldown => 1.2,
                        count => 2,
                        range => 0,
@@ -296,7 +299,8 @@ use strict;
                {
                        anti => 3,
                        name => 'Disruption beam',
-                       damage => [6 .. 9],
+                       damage => 6,
+                       upgrade => 1,
                        cooldown => 1.0,
                        range => 5,
                },
@@ -355,7 +359,8 @@ use strict;
                {
                        anti => 3,
                        name => 'Particle disruptors',
-                       damage => [10 .. 13],
+                       damage => 10,
+                       upgrade => 1,
                        bonus => {
                                armored => 4,
                        },
@@ -449,7 +454,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Warp blade',
-                       damage => [45, 50, 55, 60],
+                       damage => 45,
+                       upgrade => 5,
                        cooldown => 1.694,
                        range => 0,
                },
@@ -488,9 +494,11 @@ use strict;
                {
                        anti => 3,
                        name => 'Psionic shockwave',
-                       damage => [25, 28, 31, 34],
+                       damage => 25,
+                       upgrade => 3,
                        bonus => {
-                               organic => [10 .. 13],
+                               organic => 10,
+                               -organic => 1,
                        },
                        splash => 1,
                        cooldown => 1.754,
@@ -522,9 +530,11 @@ use strict;
                {
                        anti => 1,
                        name => 'Phase disruptors',
-                       damage => [20, 22, 24, 26],
+                       damage => 20,
+                       upgrade => 2,
                        bonus => {
-                               armored => [30, 33, 36, 39],
+                               armored => 30,
+                               -armored => 3,
                        },
                        cooldown => 1.45,
                        range => 6,
@@ -565,7 +575,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Thermal Lances',
-                       damage => [15, 17, 19, 21],
+                       damage => 15,
+                       upgrade => 2,
                        splash => 'line',
                        cooldown => 1.65,
                        count => 2,
@@ -690,7 +701,8 @@ use strict;
                {
                        anti => 2,
                        name => 'Ion Cannons',
-                       damage => [5 .. 8],
+                       damage => 5,
+                       upgrade => 1,
                        bonus => {
                                light => 5,
                        },
@@ -750,9 +762,11 @@ use strict;
                {
                        anti => 3,
                        name => 'Prismatic beam',
-                       damage => [6 .. 9],
+                       damage => 6,
+                       upgrade => 1,
                        bonus => {
-                               armored => [4 .. 7],
+                               armored => 4,
+                               -armored => 1,
                        },
                        cooldown => 0.5,
                        range => 6, # keeps firing until range 8
@@ -770,7 +784,7 @@ use strict;
                        attack => [
                                {
                                        bonus => {
-                                               armored => 6, # total +10 .. 13
+                                               armored => 6,
                                        },
                                },
                        ],
@@ -860,9 +874,11 @@ use strict;
                {
                        anti => 2,
                        name => 'Kinetic Overload',
-                       damage => [30, 33, 36, 39],
+                       damage => 30,
+                       upgrade => 3,
                        bonus => {
-                               massive => [14, 16, 18, 20],
+                               massive => 14,
+                               -massive => 2,
                        },
                        type => 'projectile',
                        cooldown => 3.3,
@@ -871,7 +887,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Resonance Coil',
-                       damage => [30, 33, 36, 39],
+                       damage => 30,
+                       upgrade => 3,
                        type => 'projectile',
                        cooldown => 3.3,
                        range => 15,
@@ -932,7 +949,8 @@ use strict;
                                {
                                        anti => 3,
                                        name => 'Interceptor Beams',
-                                       damage => [5 .. 8],
+                                       damage => 5,
+                                       upgrade => 1,
                                        cooldown => 3.0,
                                        count => 2,
                                        range => 2,
@@ -1139,7 +1157,8 @@ use strict;
                {
                        anti => 3,
                        name => 'C-14 rifle',
-                       damage => [6 .. 9],
+                       damage => 6,
+                       upgrade => 1,
                        cooldown => 0.8608,
                        range => 5,
                },
@@ -1166,7 +1185,8 @@ use strict;
                        attack => [
                                {
                                        anti => 3,
-                                       damage => [6 .. 9],
+                                       damage => 6,
+                                       upgrade => 1,
                                        cooldown => 0.5739,
                                        range => 5,
                                },
@@ -1197,9 +1217,11 @@ use strict;
                {
                        anti => 1,
                        name => 'Punisher grenades',
-                       damage => [10 .. 13],
+                       damage => 10,
+                       upgrade => 1,
                        bonus => {
-                               armored => [10 .. 13],
+                               armored => 10,
+                               -armored => 1,
                        },
                        type => 'projectile',
                        cooldown => 1.5,
@@ -1218,9 +1240,11 @@ use strict;
                        attack => [
                                {
                                        anti => 1,
-                                       damage => [10 .. 13],
+                                       damage => 10,
+                                       upgrade => 1,
                                        bonus => {
-                                               armored => [10 .. 13],
+                                               armored => 10,
+                                               -armored => 1,
                                        },
                                        type => 'projectile',
                                        cooldown => 1.0,
@@ -1266,7 +1290,8 @@ use strict;
                {
                        anti => 1,
                        name => 'P-45 Reaper pistol',
-                       damage => [4 .. 7],
+                       damage => 4,
+                       upgrade => 1,
                        cooldown => 1.1,
                        count => 2,
                        range => 4.5,
@@ -1304,9 +1329,11 @@ use strict;
                {
                        anti => 3,
                        name => 'C-10 rifle',
-                       damage => [10 .. 13],
+                       damage => 10,
+                       upgrade => 1,
                        bonus => {
-                               light => [10 .. 13],
+                               light => 10,
+                               -light => 1,
                        },
                        cooldown => 1.5,
                        range => 6,
@@ -1371,9 +1398,11 @@ use strict;
                {
                        anti => 1,
                        name => 'Infernal flamethrower',
-                       damage => [8 .. 11],
+                       damage => 8,
+                       upgrade => 1,
                        bonus => {
-                               light => [6 .. 9],
+                               light => 6,
+                               -light => 1,
                        },
                        splash => 'line',
                        cooldown => 2.5,
@@ -1398,9 +1427,11 @@ use strict;
                        build => 110,
                        attack => [
                                {
-                                       damage => [6 .. 9],
+                                       damage => 6,
+                                       upgrade => 1,
                                        bonus => {
-                                               light => [5, 5, 5, 5], # total [11 .. 14]
+                                               light => 5,
+                                               -light => 0,
                                        },
                                },
                        ],
@@ -1429,7 +1460,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Napalm Spray',
-                       damage => [18, 20, 22, 24],
+                       damage => 18,
+                       upgrade => 2,
                        splash => 1,
                        cooldown => 2,
                        range => 2,
@@ -1454,7 +1486,8 @@ use strict;
                        attack => [
                                {
                                        bonus => {
-                                               light => [12 .. 15],
+                                               light => 12,
+                                               -light => 1,
                                        },
                                },
                        ],
@@ -1525,9 +1558,11 @@ use strict;
                {
                        anti => 1,
                        name => '90 mm twin cannon',
-                       damage => [15, 17, 19, 21],
+                       damage => 15,
+                       upgrade => 2,
                        bonus => {
-                               armored => [10 .. 13],
+                               armored => 10,
+                               -armored => 1,
                        },
                        cooldown => 1.04,
                        range => 7,
@@ -1543,9 +1578,11 @@ use strict;
                                {
                                        anti => 1,
                                        name => '120 mm shock cannon',
-                                       damage => [35, 38, 41, 44],
+                                       damage => 35,
+                                       upgrade => 3,
                                        bonus => {
-                                               armored => [15, 17, 19, 21],
+                                               armored => 15,
+                                               -armored => 2,
                                        },
                                        splash => 1,
                                        cooldown => 3,
@@ -1581,7 +1618,8 @@ use strict;
                {
                        anti => 1,
                        name => "Thor's Hammer",
-                       damage => [30, 33, 36, 39],
+                       damage => 30,
+                       upgrade => 3,
                        cooldown => 1.28,
                        range => 7,
                        count => 2,
@@ -1590,9 +1628,11 @@ use strict;
                        anti => 2,
                        name => 'Javelin Missiles',
 #                      name => 'Explosive Payload',
-                       damage => [6 .. 9],
+                       damage => 6,
+                       upgrade => 1,
                        bonus => {
-                               'light air' => [6 .. 9],
+                               light => 6,
+                               -light => 1,
                        },
                        splash => 1,
                        type => 'projectile',
@@ -1604,7 +1644,8 @@ use strict;
                        anti => 2,
                        name => 'Punisher Cannons',
 #                      name => 'High Impact Payload',
-                       damage => [24, 26, 28, 30],
+                       damage => 24,
+                       upgrade => 2,
                        cooldown => 2,
                        range => 10,
                },
@@ -1634,7 +1675,8 @@ use strict;
                {
                        anti => 2,
                        name => 'Lanzer torpedoes',
-                       damage => [10 .. 13],
+                       damage => 10,
+                       upgrade => 1,
                        bonus => {
                                armored => 4,
                        },
@@ -1655,7 +1697,8 @@ use strict;
                                {
                                        anti => 1,
                                        name => 'Twin gatling cannon',
-                                       damage => [12 .. 15],
+                                       damage => 12,
+                                       upgrade => 1,
                                        cooldown => 1,
                                        range => 6,
                                },
@@ -1735,7 +1778,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Backlash rockets',
-                       damage => [12 .. 15],
+                       damage => 12,
+                       upgrade => 1,
                        type => 'projectile',
                        cooldown => 1.25,
                        count => 2,
@@ -1932,7 +1976,8 @@ use strict;
                {
                        anti => 1,
                        name => 'ATS laser batteries',
-                       damage => [8 .. 11],
+                       damage => 8,
+                       upgrade => 1,
                        cooldown => 0.225,
                        type => 'projectile',
                        range => 6,
@@ -1940,7 +1985,8 @@ use strict;
                {
                        anti => 2,
                        name => 'ATS laser batteries',
-                       damage => [6 .. 9],
+                       damage => 6,
+                       upgrade => 1,
                        cooldown => 0.225,
                        type => 'projectile',
                        range => 6,
@@ -2030,7 +2076,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Claws',
-                       damage => [4 .. 7],
+                       damage => 4,
+                       upgrade => 1,
                        cooldown => 1.0,
                        type => 'projectile', # except if range < 3
                        range => 5,
@@ -2039,7 +2086,8 @@ use strict;
                {
                        anti => 2,
                        name => 'Acid Spines',
-                       damage => [9 .. 12],
+                       damage => 9,
+                       upgrade => 1,
                        cooldown => 1.0,
                        type => 'projectile', # except if range < 3
                        range => 7,
@@ -2309,7 +2357,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Claws',
-                       damage => [5 .. 8],
+                       damage => 5,
+                       upgrade => 1,
                        cooldown => 0.696,
                },
        ],
@@ -2361,10 +2410,13 @@ use strict;
                {
                        anti => 1,
                        name => 'Volatile Burst',
-                       damage => [20, 22, 24, 26],
+                       damage => 20,
+                       upgrade => 2,
                        bonus => {
-                               light => [15, 17, 19, 21],
-                               structure => [60, 63, 66, 69],
+                               light => 15,
+                               -light => 2,
+                               structure => 60,
+                               -structure => 3,
                        },
                        splash => 1,
                        range => 0,
@@ -2405,7 +2457,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Acid Saliva', # Claws melee
-                       damage => [16, 18, 20, 22],
+                       damage => 16,
+                       upgrade => 2,
                        cooldown => 2.0,
                },
        ],
@@ -2463,7 +2516,8 @@ use strict;
                {
                        anti => 3,
                        name => 'Needle spines', # Scythe melee
-                       damage => [12 .. 15],
+                       damage => 12,
+                       upgrade => 1,
                        type => 'projectile', # except melee
                        cooldown => 0.75,
                        range => 5,
@@ -2641,7 +2695,8 @@ use strict;
                                {
                                        anti => 1,
                                        name => 'Acid Spit',
-                                       damage => [12 .. 15],
+                                       damage => 12,
+                                       upgrade => 1,
                                        type => 'projectile',
                                        cooldown => 0.6,
                                        range => 3,
@@ -2689,7 +2744,8 @@ use strict;
                {
                        anti => 3,
                        name => 'Glaive Wurm',
-                       damage => [9 .. 12],
+                       damage => 9,
+                       upgrade => 1,
                        splash => 'bounce',
                        psionic => 1,
                        cooldown => 1.5246,
@@ -2728,9 +2784,11 @@ use strict;
                {
                        anti => 2,
                        name => 'Parasite Spores',
-                       damage => [14 .. 17],
+                       damage => 14,
+                       upgrade => 1,
                        bonus => {
-                               massive => [6 .. 9],
+                               massive => 6,
+                               -massive => 1,
                        },
                        type => 'projectile',
                        cooldown => 1.9,
@@ -2773,7 +2831,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Broodling Strike',
-                       damage => [20, 22, 24, 26],
+                       damage => 20,
+                       upgrade => 2,
                        cooldown => 2.5,
                        range => 9.5,
                },
@@ -2801,7 +2860,8 @@ use strict;
                                {
                                        anti => 1,
                                        name => 'Claws',
-                                       damage => [4 .. 7],
+                                       damage => 4,
+                                       upgrade => 1,
                                        cooldown => 0.6455,
                                        range => 0,
                                },
@@ -2891,7 +2951,8 @@ use strict;
                {
                        anti => 1,
                        name => 'Kaiser Blades',
-                       damage => [35, 38, 41, 44],
+                       damage => 35,
+                       upgrade => 3,
                        splash => 1,
                        cooldown => 0.861,
                        range => 1,