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>',
gas => 0,
build => 20,
suit => 1,
+size => 23 / $PPT,
pop => 1,
cargo => 1,
race => 'protoss',
gas => 0,
build => 50,
suit => 3,
+size => 2, # 41x33
race => 'protoss',
attr => {
structure => 1,
gas => 0,
build => 40,
suit => 1,
+size => 23 / $PPT, # x19
pop => 2,
cargo => 2,
race => 'protoss',
gas => 50,
build => 50,
suit => 3,
+size => 32 / $PPT,
pop => 2,
cargo => 4,
race => 'protoss',
gas => 150,
build => 50,
suit => 1,
+size => 24 / $PPT,
pop => 2,
cargo => 2,
race => 'protoss',
gas => 100,
build => 50,
suit => 1,
+size => 25 / $PPT, # 24x26
pop => 2,
cargo => 2,
race => 'protoss',
build => 20,
base => ['templar', 'templar'],
suit => 3,
+size => 32 / $PPT,
pop => 4,
cargo => 4,
race => 'protoss',
build => 20,
base => ['dark templar', 'dark templar'],
suit => 3,
+size => 32 / $PPT,
pop => 4,
cargo => 4,
race => 'protoss',
gas => 125,
build => 80,
suit => 3,
+size => 36 / $PPT, # x32
pop => 3,
race => 'protoss',
attr => {
gas => 100,
build => 40,
suit => 2,
+size => 36 / $PPT, # x32
pop => 2,
race => 'protoss',
attr => {
gas => 250,
build => 140,
suit => 3,
+size => 64 / $PPT,
pop => 6,
race => 'protoss',
attr => {
min => 25,
build => 20,
suit => 1,
+ size => 16 / $PPT,
pop => 0,
race => 'protoss',
attr => {
gas => 350,
build => 160,
suit => 3,
+size => 44 / $PPT,
pop => 4,
race => 'protoss',
attr => {
gas => 100,
build => 70,
suit => 3,
+size => 32 / $PPT,
pop => 4,
cargo => 4,
race => 'protoss',
gas => 75,
build => 40,
suit => 1,
+size => 32 / $PPT,
pop => 1,
race => 'protoss',
attr => {
gas => 0,
build => 60,
suit => 3,
+size => 40 / $PPT, # x32
pop => 2,
cargo => -8,
race => 'protoss',
gas => 0,
build => 20,
suit => 1,
+size => 23 / $PPT,
pop => 1,
cargo => 1,
race => 'terran',
gas => 0,
build => 30,
suit => 3,
+size => 2, # 33x49
race => 'terran',
attr => {
structure => 1,
gas => 0,
build => 24,
suit => 1,
+size => 17 / $PPT, # x20
pop => 1,
cargo => 1,
race => 'terran',
gas => 25,
build => 24,
suit => 1,
+size => 23 / $PPT, # x22
pop => 1,
cargo => 1,
race => 'terran',
gas => 75,
build => 50,
suit => 1,
+size => 15 / $PPT, # x22
pop => 1,
cargo => 1,
race => 'terran',
gas => 25,
build => 30,
suit => 1,
+size => 17 / $PPT, # x20
pop => 1,
cargo => 1,
race => 'terran',
gas => 0,
build => 30,
suit => 2,
+size => 32 / $PPT,
pop => 2,
cargo => 2,
race => 'terran',
},
hp => 20,
suit => 1,
+ size => 15 / $PPT,
armor => 0,
attack => [
{
gas => 100,
build => 50,
suit => 3,
+size => 32 / $PPT,
pop => 2,
cargo => 4,
race => 'terran',
gas => 50,
build => 40,
suit => 3,
+size => 32 / $PPT,
pop => 2,
cargo => 2,
race => 'terran',
gas => 100,
build => 60,
suit => 3,
+size => 38 / $PPT, # x30
pop => 2,
race => 'terran',
attr => {
gas => 300,
build => 133,
suit => 3,
+size => 75 / $PPT, # x59
pop => 6,
race => 'terran',
attr => {
gas => 225,
build => 80,
suit => 3,
+size => 65 / $PPT, # x50
pop => 2,
race => 'terran',
attr => {
gas => 125,
build => 50,
suit => 3,
+size => 49 / $PPT, # x37
pop => 3,
race => 'terran',
attr => {
gas => 100,
build => 50,
suit => 3,
+size => 49 / $PPT, # x37
pop => 2,
cargo => -8,
race => 'terran',
gas => 0,
build => 20,
suit => 1,
+size => 23 / $PPT,
pop => 1,
cargo => 1,
race => 'zerg',
gas => 0,
build => 40,
suit => 3,
+size => 50 / $PPT,
pop => -9,
cargo => 0,
race => 'zerg',
},
build => 20,
suit => 1,
+size => 16 / $PPT,
pop => 0,
race => 'zerg',
attr => {
gas => 0,
build => 20,
suit => 3,
+size => 2, # 48x48
race => 'zerg',
attr => {
structure => 1,
gas => 0,
build => 20,
suit => 3,
+size => 2, # 48x48
race => 'zerg',
attr => {
structure => 1,
gas => 0,
build => 28, # for 2
suit => 1,
+size => 16 / $PPT,
pop => 0.5,
cargo => 1,
race => 'zerg',
gas => 25,
build => 28,
suit => 2,
+size => 21 / $PPT, # x23
pop => 1,
cargo => 2,
race => 'zerg',
base => 'hydralisk',
build => 40,
suit => 2,
+size => 32 / $PPT,
pop => 2,
cargo => 4,
race => 'zerg',
gas => 100,
build => 50,
suit => 2,
+size => 48 / $PPT,
pop => 2,
race => 'zerg',
attr => {
count => 2,
alt => 'Broodling',
suit => 1,
+ size => 19 / $PPT,
pop => 0,
attr => {
organic => 1,
gas => 50,
build => 40,
suit => 1,
+size => 17 / $PPT, # x20
pop => 1,
race => 'zerg',
attr => {
gas => 38,
build => 30, # for 2
suit => 1,
+size => 24 / $PPT,
pop => 0.5,
race => 'zerg',
attr => {
gas => 100,
build => 40,
suit => 1,
+size => 44 / $PPT,
pop => 2,
race => 'zerg',
attr => {
{
alt => 'Cocoon',
suit => 3,
+ size => 32 / $PPT,
attr => {
organic => 1,
flying => 1,
build => 40,
base => 'mutalisk',
suit => 3,
+size => 44 / $PPT,
pop => 2,
race => 'zerg',
attr => {
build => 40,
base => 'mutalisk',
suit => 3,
+size => 44 / $PPT,
pop => 2,
race => 'zerg',
attr => {
gas => 150,
build => 50,
suit => 2,
+size => 27 / $PPT, # x25
pop => 2,
cargo => 2,
race => 'zerg',
gas => 200,
build => 60,
suit => 3,
+size => 38 / $PPT, # x32
pop => 4,
cargo => 4,
race => 'zerg',