diff --git a/android/Images/TileSets/Default/AtollOverlay.png b/android/Images/TileSets/Default/AtollOverlay.png
new file mode 100644
index 00000000..c062e982
Binary files /dev/null and b/android/Images/TileSets/Default/AtollOverlay.png differ
diff --git a/android/Images/TileSets/Default/Hexagon.png b/android/Images/TileSets/Default/Hexagon.png
index 092bb878..73565b3e 100644
Binary files a/android/Images/TileSets/Default/Hexagon.png and b/android/Images/TileSets/Default/Hexagon.png differ
diff --git a/android/Images/TileSets/Default/IceOverlay.png b/android/Images/TileSets/Default/IceOverlay.png
new file mode 100644
index 00000000..d17766aa
Binary files /dev/null and b/android/Images/TileSets/Default/IceOverlay.png differ
diff --git a/android/Images/TileSets/FantasyHex/Hexagon.png b/android/Images/TileSets/FantasyHex/Hexagon.png
index 092bb878..8601b647 100644
Binary files a/android/Images/TileSets/FantasyHex/Hexagon.png and b/android/Images/TileSets/FantasyHex/Hexagon.png differ
diff --git a/android/Images/TileSets/FantasyHex/Tiles/Coast+Atoll.png b/android/Images/TileSets/FantasyHex/Tiles/Coast+Atoll.png
new file mode 100644
index 00000000..ea6c68c4
Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Tiles/Coast+Atoll.png differ
diff --git a/android/Images/TileSets/FantasyHex/Tiles/Coast+Ice.png b/android/Images/TileSets/FantasyHex/Tiles/Coast+Ice.png
new file mode 100644
index 00000000..1f81ca44
Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Tiles/Coast+Ice.png differ
diff --git a/android/Images/TileSets/FantasyHex/Tiles/Ocean+Atoll.png b/android/Images/TileSets/FantasyHex/Tiles/Ocean+Atoll.png
new file mode 100644
index 00000000..a9964a04
Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Tiles/Ocean+Atoll.png differ
diff --git a/android/Images/TileSets/FantasyHex/Tiles/Ocean+Ice.png b/android/Images/TileSets/FantasyHex/Tiles/Ocean+Ice.png
new file mode 100644
index 00000000..f7968963
Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Tiles/Ocean+Ice.png differ
diff --git a/android/Images/TileSets/FantasyHex/Tiles/Snow.png b/android/Images/TileSets/FantasyHex/Tiles/Snow.png
new file mode 100644
index 00000000..b30b6d00
Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Tiles/Snow.png differ
diff --git a/android/assets/game.atlas b/android/assets/game.atlas
index 0f5ab097..f38ef743 100644
--- a/android/assets/game.atlas
+++ b/android/assets/game.atlas
@@ -6,2387 +6,2310 @@ filter: MipMapLinearLinear,MipMapLinearLinear
repeat: none
BuildingIcons/Alhambra
rotate: false
- xy: 1058, 1532
+ xy: 132, 1442
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Angkor Wat
rotate: false
- xy: 1466, 1474
+ xy: 540, 1442
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Apollo Program
rotate: false
- xy: 1772, 1446
+ xy: 1896, 1432
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Aqueduct
rotate: false
- xy: 1874, 1446
+ xy: 2, 1430
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Armory
rotate: false
- xy: 206, 1434
+ xy: 1422, 1410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Bank
rotate: false
- xy: 1616, 1372
+ xy: 1728, 1330
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Barracks
rotate: false
- xy: 1922, 1344
+ xy: 846, 1322
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Bazaar
rotate: false
- xy: 410, 1336
+ xy: 1050, 1308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Big Ben
rotate: false
- xy: 512, 1336
+ xy: 1152, 1308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Brandenburg Gate
rotate: false
- xy: 716, 1328
+ xy: 716, 1294
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Broadcast Tower
rotate: false
- xy: 818, 1328
+ xy: 104, 1238
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Burial Tomb
rotate: false
- xy: 1124, 1270
+ xy: 410, 1238
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/CN Tower
rotate: false
- xy: 1226, 1270
+ xy: 512, 1238
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Castle
rotate: false
- xy: 1838, 1242
+ xy: 818, 1220
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Chichen Itza
rotate: false
- xy: 104, 1230
+ xy: 1430, 1206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Circus
rotate: false
- xy: 920, 1226
+ xy: 308, 1136
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Circus Maximus
rotate: false
- xy: 1022, 1226
+ xy: 410, 1136
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Colosseum
rotate: false
- xy: 1838, 1140
+ xy: 818, 1118
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Colossus
rotate: false
- xy: 1940, 1140
+ xy: 920, 1104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Courthouse
rotate: false
- xy: 1022, 1124
+ xy: 410, 1034
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Cristo Redentor
rotate: false
- xy: 1124, 1066
+ xy: 512, 1034
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Eiffel Tower
rotate: false
- xy: 104, 1026
+ xy: 1430, 1002
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Factory
rotate: false
- xy: 1022, 1022
+ xy: 410, 932
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Forbidden Palace
rotate: false
- xy: 1940, 936
+ xy: 920, 900
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Forge
rotate: false
- xy: 512, 928
+ xy: 1226, 900
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Granary
rotate: false
- xy: 1328, 862
+ xy: 1532, 820
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Great Wall
rotate: false
- xy: 1838, 834
+ xy: 818, 812
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hagia Sophia
rotate: false
- xy: 104, 822
+ xy: 1430, 798
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hanging Gardens
rotate: false
- xy: 206, 822
+ xy: 716, 784
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hanse
rotate: false
- xy: 716, 818
+ xy: 104, 728
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Harbor
rotate: false
- xy: 818, 818
+ xy: 206, 728
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hermitage
rotate: false
- xy: 1022, 818
+ xy: 410, 728
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Himeji Castle
rotate: false
- xy: 1226, 760
+ xy: 614, 728
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hospital
rotate: false
- xy: 1634, 732
+ xy: 1940, 718
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hubble Space Telescope
rotate: false
- xy: 1736, 732
+ xy: 2, 716
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Hydro Plant
rotate: false
- xy: 1940, 732
+ xy: 920, 696
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Ironworks
rotate: false
- xy: 818, 716
+ xy: 308, 626
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Kremlin
rotate: false
- xy: 1838, 630
+ xy: 920, 594
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Krepost
rotate: false
- xy: 1940, 630
+ xy: 1022, 594
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Leaning Tower of Pisa
rotate: false
- xy: 716, 614
+ xy: 206, 524
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Library
rotate: false
- xy: 920, 614
+ xy: 410, 524
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Lighthouse
rotate: false
- xy: 1022, 614
+ xy: 512, 524
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Longhouse
rotate: false
- xy: 1226, 556
+ xy: 1838, 520
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Machu Picchu
rotate: false
- xy: 1634, 528
+ xy: 2, 512
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Manhattan Project
rotate: false
- xy: 1838, 528
+ xy: 920, 492
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Market
rotate: false
- xy: 512, 520
+ xy: 1328, 492
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Medical Lab
rotate: false
- xy: 920, 512
+ xy: 410, 422
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Military Academy
rotate: false
- xy: 1328, 454
+ xy: 1532, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Mint
rotate: false
- xy: 1634, 426
+ xy: 2, 410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Monastery
rotate: false
- xy: 512, 418
+ xy: 1328, 390
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Monument
rotate: false
- xy: 104, 414
+ xy: 716, 376
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Mud Pyramid Mosque
rotate: false
- xy: 716, 410
+ xy: 206, 320
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Mughal Fort
rotate: false
- xy: 818, 410
+ xy: 308, 320
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Museum
rotate: false
- xy: 920, 410
+ xy: 410, 320
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/National College
rotate: false
- xy: 1430, 352
+ xy: 1634, 310
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Neuschwanstein
rotate: false
- xy: 1634, 324
+ xy: 2, 308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Notre Dame
rotate: false
- xy: 1736, 324
+ xy: 818, 302
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Nuclear Plant
rotate: false
- xy: 308, 316
+ xy: 1124, 288
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Observatory
rotate: false
- xy: 512, 316
+ xy: 1328, 288
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Opera House
rotate: false
- xy: 206, 312
+ xy: 614, 219
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Oxford University
rotate: false
- xy: 818, 308
+ xy: 206, 218
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Palace
rotate: false
- xy: 920, 308
+ xy: 308, 218
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Paper Maker
rotate: false
- xy: 1124, 251
+ xy: 512, 218
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Pentagon
rotate: false
- xy: 1532, 250
+ xy: 1736, 208
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Porcelain Tower
rotate: false
- xy: 716, 206
+ xy: 104, 116
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Public School
rotate: false
- xy: 1022, 206
+ xy: 410, 116
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Research Lab
rotate: false
- xy: 1940, 120
+ xy: 1022, 84
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/SS Booster
rotate: false
- xy: 1022, 104
+ xy: 410, 14
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/SS Cockpit
rotate: false
- xy: 1124, 47
+ xy: 512, 14
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/SS Engine
rotate: false
- xy: 1226, 46
+ xy: 1838, 10
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/SS Stasis Chamber
rotate: false
- xy: 1328, 46
+ xy: 1532, 4
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
BuildingIcons/Satrap's Court
rotate: false
- xy: 1634, 18
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Seaport
- rotate: false
- xy: 1940, 18
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Sistine Chapel
- rotate: false
- xy: 920, 2
+ xy: 2, 2
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
FlagIcons/Czech
rotate: false
- xy: 1262, 1706
+ xy: 204, 1674
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Dutch
rotate: false
- xy: 1392, 1706
+ xy: 334, 1674
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/English
rotate: false
- xy: 1522, 1706
+ xy: 464, 1674
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/French
rotate: false
- xy: 1652, 1706
+ xy: 594, 1674
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/German
rotate: false
- xy: 583, 1670
+ xy: 724, 1674
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Indonesian
rotate: false
- xy: 713, 1670
+ xy: 2, 1662
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Italian
rotate: false
- xy: 204, 1666
+ xy: 132, 1544
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Japanese
rotate: false
- xy: 334, 1666
+ xy: 262, 1544
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Korean
rotate: false
- xy: 2, 1654
+ xy: 392, 1544
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Malay
rotate: false
- xy: 1262, 1576
+ xy: 522, 1544
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Polish
rotate: false
- xy: 1392, 1576
+ xy: 652, 1544
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Portuguese
rotate: false
- xy: 1522, 1576
+ xy: 1743, 1534
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Romanian
rotate: false
- xy: 1652, 1576
+ xy: 1873, 1534
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Russian
rotate: false
- xy: 1782, 1548
+ xy: 2, 1532
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Simplified_Chinese
rotate: false
- xy: 1912, 1548
+ xy: 1042, 1512
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Spanish
rotate: false
- xy: 464, 1540
+ xy: 1172, 1512
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Thai
rotate: false
- xy: 594, 1540
+ xy: 1302, 1512
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Traditional_Chinese
rotate: false
- xy: 724, 1540
+ xy: 1432, 1512
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Turkish
rotate: false
- xy: 132, 1536
+ xy: 1562, 1512
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
FlagIcons/Ukrainian
rotate: false
- xy: 262, 1536
+ xy: 782, 1498
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
ImprovementIcons/Academy
rotate: false
- xy: 464, 1694
+ xy: 1945, 1944
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Ancient ruins
rotate: false
- xy: 1364, 1474
+ xy: 438, 1442
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Barbarian encampment
rotate: false
- xy: 1820, 1344
+ xy: 2, 1328
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Camp
rotate: false
- xy: 1532, 1270
+ xy: 1662, 1228
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/City ruins
rotate: false
- xy: 1124, 1168
+ xy: 512, 1136
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Customs house
rotate: false
- xy: 1532, 1066
+ xy: 1736, 1024
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Farm
rotate: false
- xy: 1226, 964
+ xy: 614, 932
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Fishing Boats
rotate: false
- xy: 1634, 936
+ xy: 1940, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Landmark
rotate: false
- xy: 512, 622
+ xy: 1328, 594
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Lumber mill
rotate: false
- xy: 1430, 556
+ xy: 1634, 514
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Manufactory
rotate: false
- xy: 1940, 528
+ xy: 1022, 492
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Mine
rotate: false
- xy: 1532, 454
+ xy: 1736, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Moai
rotate: false
- xy: 1838, 426
+ xy: 920, 390
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Oil well
rotate: false
- xy: 104, 312
+ xy: 716, 274
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Pasture
rotate: false
- xy: 1328, 250
+ xy: 1532, 208
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Plantation
rotate: false
- xy: 614, 214
+ xy: 1430, 186
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Quarry
rotate: false
- xy: 1226, 148
+ xy: 1838, 112
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Road
rotate: false
- xy: 614, 112
+ xy: 1430, 84
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/America
rotate: false
- xy: 1262, 1474
+ xy: 336, 1442
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Arabia
rotate: false
- xy: 392, 1438
+ xy: 912, 1424
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Babylon
rotate: false
- xy: 1208, 1372
+ xy: 410, 1340
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/China
rotate: false
- xy: 206, 1230
+ xy: 716, 1192
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/CityState
rotate: false
- xy: 1430, 1168
+ xy: 1634, 1126
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Egypt
rotate: false
- xy: 614, 1030
+ xy: 1328, 1002
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/England
rotate: false
- xy: 920, 1022
+ xy: 308, 932
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/France
rotate: false
- xy: 614, 928
+ xy: 1328, 900
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Germany
rotate: false
- xy: 1124, 862
+ xy: 512, 830
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Greece
rotate: false
- xy: 410, 826
+ xy: 1124, 798
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/India
rotate: false
- xy: 410, 724
+ xy: 1226, 696
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Iroquois
rotate: false
- xy: 920, 716
+ xy: 410, 626
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Japan
rotate: false
- xy: 1226, 658
+ xy: 1838, 622
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Korea
rotate: false
- xy: 1736, 630
+ xy: 818, 608
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Mongolia
rotate: false
- xy: 614, 418
+ xy: 1430, 390
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Persia
rotate: false
- xy: 1634, 222
+ xy: 2, 206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Polynesia
rotate: false
- xy: 206, 210
+ xy: 614, 117
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Rome
rotate: false
- xy: 818, 104
+ xy: 206, 14
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
NationIcons/Russia
rotate: false
- xy: 920, 104
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-NationIcons/Siam
- rotate: false
- xy: 104, 6
+ xy: 308, 14
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Banner
rotate: false
- xy: 1718, 1344
+ xy: 1932, 1330
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Circle
rotate: false
- xy: 1868, 1858
+ xy: 1743, 1664
size: 178, 178
orig: 178, 178
offset: 0, 0
index: -1
OtherIcons/Close
rotate: false
- xy: 1634, 1140
+ xy: 1940, 1126
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Crosshair
rotate: false
- xy: 1328, 1066
+ xy: 1532, 1024
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/DisbandUnit
rotate: false
- xy: 1736, 1038
+ xy: 2, 1022
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Fire
rotate: false
- xy: 1532, 964
+ xy: 1736, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Hexagon
rotate: false
- xy: 304, 1796
- size: 277, 240
- orig: 277, 240
- offset: 0, 0
- index: -1
-TileSets/Default/Hexagon
- rotate: false
- xy: 304, 1796
- size: 277, 240
- orig: 277, 240
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Hexagon
- rotate: false
- xy: 304, 1796
+ xy: 304, 1804
size: 277, 240
orig: 277, 240
offset: 0, 0
index: -1
OtherIcons/MenuIcon
rotate: false
- xy: 1022, 512
+ xy: 512, 422
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Pentagon
rotate: false
- xy: 2, 232
+ xy: 1940, 208
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Pillage
rotate: false
- xy: 512, 214
+ xy: 1328, 186
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Puppet
rotate: false
- xy: 1124, 149
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-OtherIcons/Shield
- rotate: false
- xy: 512, 10
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-OtherIcons/Sleep
- rotate: false
- xy: 1022, 2
+ xy: 512, 116
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
OtherIcons/Triangle
rotate: false
- xy: 1868, 1678
+ xy: 862, 1628
size: 178, 178
orig: 178, 178
offset: 0, 0
index: -1
OtherIcons/civTableBackground
rotate: false
- xy: 2, 1986
+ xy: 2, 1994
size: 300, 50
orig: 300, 50
offset: 0, 0
index: -1
ResourceIcons/Aluminum
rotate: false
- xy: 1160, 1532
+ xy: 234, 1442
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Bananas
rotate: false
- xy: 1514, 1372
+ xy: 1626, 1330
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Cattle
rotate: false
- xy: 308, 1234
+ xy: 1022, 1206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Coal
rotate: false
- xy: 1736, 1140
+ xy: 2, 1124
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Cotton
rotate: false
- xy: 920, 1124
+ xy: 308, 1034
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Deer
rotate: false
- xy: 2, 1042
+ xy: 1838, 1024
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Dyes
rotate: false
- xy: 1838, 1038
+ xy: 818, 1016
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Fish
rotate: false
- xy: 2, 940
+ xy: 1838, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Furs
rotate: false
- xy: 206, 924
+ xy: 716, 886
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Gems
rotate: false
- xy: 1022, 920
+ xy: 410, 830
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Gold
rotate: false
- xy: 1226, 862
+ xy: 614, 830
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Horses
rotate: false
- xy: 2, 742
+ xy: 1736, 718
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Incense
rotate: false
- xy: 308, 724
+ xy: 1124, 696
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Iron
rotate: false
- xy: 104, 720
+ xy: 716, 682
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Ivory
rotate: false
- xy: 1022, 716
+ xy: 512, 626
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Marble
rotate: false
- xy: 410, 520
+ xy: 1226, 492
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Oil
rotate: false
- xy: 614, 316
+ xy: 1430, 288
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ResourceIcons/Pearls
rotate: false
- xy: 1430, 250
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Sheep
- rotate: false
- xy: 410, 10
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Silk
- rotate: false
- xy: 206, 6
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Silver
- rotate: false
- xy: 716, 2
+ xy: 1634, 208
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
StatIcons/Acquire
rotate: false
- xy: 854, 1532
+ xy: 1923, 1740
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
StatIcons/CityConnection
rotate: false
- xy: 1226, 1168
+ xy: 614, 1136
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
StatIcons/City_Center_(Civ6)
rotate: false
- xy: 1532, 1168
+ xy: 1736, 1126
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
StatIcons/Culture
rotate: false
- xy: 858, 1836
+ xy: 1137, 1844
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Food
rotate: false
- xy: 1060, 1836
+ xy: 1339, 1844
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Gold
rotate: false
- xy: 1262, 1836
+ xy: 1541, 1844
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Happiness
rotate: false
- xy: 1464, 1836
+ xy: 1743, 1844
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Malcontent
rotate: false
- xy: 1666, 1836
+ xy: 2, 1792
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Population
rotate: false
- xy: 2, 1784
+ xy: 1137, 1642
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Production
rotate: false
- xy: 858, 1634
+ xy: 1339, 1642
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
StatIcons/Resistance
rotate: false
- xy: 308, 112
+ xy: 1124, 84
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
StatIcons/Science
rotate: false
- xy: 1060, 1634
+ xy: 1541, 1642
size: 200, 200
orig: 200, 200
offset: 0, 0
index: -1
TechIcons/Acoustics
rotate: false
- xy: 2, 1552
+ xy: 1945, 1842
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Agriculture
rotate: false
- xy: 956, 1532
+ xy: 912, 1526
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Animal Husbandry
rotate: false
- xy: 1568, 1474
+ xy: 642, 1442
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Archaeology
rotate: false
- xy: 494, 1438
+ xy: 1014, 1410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Archery
rotate: false
- xy: 698, 1438
+ xy: 1218, 1410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Architecture
rotate: false
- xy: 104, 1434
+ xy: 1320, 1410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Astronomy
rotate: false
- xy: 902, 1430
+ xy: 744, 1396
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Atomic Theory
rotate: false
- xy: 1004, 1430
+ xy: 206, 1340
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Ballistics
rotate: false
- xy: 1412, 1372
+ xy: 614, 1340
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Banking
rotate: false
- xy: 2, 1348
+ xy: 1830, 1330
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Biology
rotate: false
- xy: 614, 1336
+ xy: 1254, 1308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Bronze Working
rotate: false
- xy: 920, 1328
+ xy: 206, 1238
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Calendar
rotate: false
- xy: 1328, 1270
+ xy: 614, 1238
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Chemistry
rotate: false
- xy: 614, 1234
+ xy: 1328, 1206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Chivalry
rotate: false
- xy: 716, 1226
+ xy: 104, 1136
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Civil Service
rotate: false
- xy: 2, 1144
+ xy: 1838, 1126
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Combined Arms
rotate: false
- xy: 308, 1132
+ xy: 1022, 1104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Combustion
rotate: false
- xy: 410, 1132
+ xy: 1124, 1104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Compass
rotate: false
- xy: 614, 1132
+ xy: 1328, 1104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Computers
rotate: false
- xy: 104, 1128
+ xy: 1430, 1104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Construction
rotate: false
- xy: 716, 1124
+ xy: 104, 1034
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Currency
rotate: false
- xy: 1430, 1066
+ xy: 1634, 1024
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Dynamite
rotate: false
- xy: 1940, 1038
+ xy: 920, 1002
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Ecology
rotate: false
- xy: 308, 1030
+ xy: 1022, 1002
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Economics
rotate: false
- xy: 410, 1030
+ xy: 1124, 1002
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Education
rotate: false
- xy: 512, 1030
+ xy: 1226, 1002
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Electricity
rotate: false
- xy: 206, 1026
+ xy: 716, 988
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Electronics
rotate: false
- xy: 716, 1022
+ xy: 104, 932
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Engineering
rotate: false
- xy: 818, 1022
+ xy: 206, 932
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Fertilizer
rotate: false
- xy: 1328, 964
+ xy: 1532, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Flight
rotate: false
- xy: 1736, 936
+ xy: 2, 920
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Future Tech
rotate: false
- xy: 716, 920
+ xy: 104, 830
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Guilds
rotate: false
- xy: 512, 826
+ xy: 1226, 798
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Gunpowder
rotate: false
- xy: 614, 826
+ xy: 1328, 798
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Horseback Riding
rotate: false
- xy: 1430, 760
+ xy: 1532, 718
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Industrialization
rotate: false
- xy: 512, 724
+ xy: 1328, 696
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Iron Working
rotate: false
- xy: 206, 720
+ xy: 104, 626
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Lasers
rotate: false
- xy: 206, 618
+ xy: 104, 524
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Machinery
rotate: false
- xy: 2, 538
+ xy: 1940, 514
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Masonry
rotate: false
- xy: 104, 516
+ xy: 716, 478
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Mass Media (retired)
rotate: false
- xy: 206, 516
+ xy: 104, 422
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Mathematics
rotate: false
- xy: 716, 512
+ xy: 206, 422
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Metal Casting
rotate: false
- xy: 1124, 454
+ xy: 614, 422
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Metallurgy
rotate: false
- xy: 1226, 454
+ xy: 1838, 418
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Military Science
rotate: false
- xy: 1430, 454
+ xy: 1634, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Mining
rotate: false
- xy: 2, 436
+ xy: 1940, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Mobile Tactics
rotate: false
- xy: 1940, 426
+ xy: 1022, 390
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Nanotechnology
rotate: false
- xy: 1226, 352
+ xy: 1838, 316
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Navigation
rotate: false
- xy: 2, 334
+ xy: 1940, 310
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Nuclear Fission
rotate: false
- xy: 1838, 324
+ xy: 920, 288
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Optics
rotate: false
- xy: 716, 308
+ xy: 104, 218
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Particle Physics
rotate: false
- xy: 1226, 250
+ xy: 1838, 214
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Pharmaceuticals
rotate: false
- xy: 1838, 222
+ xy: 920, 186
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Philosophy
rotate: false
- xy: 1940, 222
+ xy: 1022, 186
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Physics
rotate: false
- xy: 308, 214
+ xy: 1124, 186
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Plastics
rotate: false
- xy: 104, 210
+ xy: 716, 172
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Pottery
rotate: false
- xy: 818, 206
+ xy: 206, 116
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Printing Press
rotate: false
- xy: 920, 206
+ xy: 308, 116
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Radar
rotate: false
- xy: 1328, 148
+ xy: 1532, 106
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Radio
rotate: false
- xy: 1430, 148
+ xy: 1634, 106
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Railroad
rotate: false
- xy: 1532, 148
+ xy: 1736, 106
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Refrigeration
rotate: false
- xy: 1736, 120
+ xy: 818, 98
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Replaceable Parts
rotate: false
- xy: 1838, 120
+ xy: 920, 84
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Rifling
rotate: false
- xy: 512, 112
+ xy: 1328, 84
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Robotics
rotate: false
- xy: 104, 108
+ xy: 716, 70
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Rocketry
rotate: false
- xy: 716, 104
+ xy: 104, 14
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Sailing
rotate: false
- xy: 1430, 46
+ xy: 1634, 4
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TechIcons/Satellites
rotate: false
- xy: 2, 28
+ xy: 1940, 4
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-TechIcons/Scientific Theory
+TileSets/Default/AtollOverlay
rotate: false
- xy: 1736, 18
+ xy: 104, 1340
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/CityOverlay
rotate: false
- xy: 1328, 1168
+ xy: 1532, 1126
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/FalloutOverlay
rotate: false
- xy: 1124, 964
+ xy: 512, 932
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/Flood plainsOverlay
rotate: false
- xy: 1838, 936
+ xy: 818, 914
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/ForestOverlay
rotate: false
- xy: 410, 928
+ xy: 1124, 900
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/HillOverlay
rotate: false
- xy: 1124, 760
+ xy: 512, 728
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TileSets/Default/IceOverlay
+ rotate: false
+ xy: 1022, 696
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/JungleOverlay
rotate: false
- xy: 1430, 658
+ xy: 1634, 616
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/LakesOverlay
rotate: false
- xy: 308, 622
+ xy: 1124, 594
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/MarshOverlay
rotate: false
- xy: 614, 520
+ xy: 1430, 492
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/MountainOverlay
rotate: false
- xy: 206, 414
+ xy: 104, 320
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/NaturalWonderOverlay
rotate: false
- xy: 1532, 352
+ xy: 1736, 310
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/OasisOverlay
rotate: false
- xy: 410, 316
+ xy: 1226, 288
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/Default/Railroad
rotate: false
- xy: 1634, 120
+ xy: 2, 104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
ImprovementIcons/Railroad
rotate: false
- xy: 1634, 120
+ xy: 2, 104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
TileSets/FantasyHex/CrosshatchHexagon
rotate: false
- xy: 583, 1800
+ xy: 862, 1808
size: 273, 236
orig: 273, 236
offset: 0, 0
index: -1
TileSets/Default/CrosshatchHexagon
rotate: false
- xy: 583, 1800
+ xy: 862, 1808
size: 273, 236
orig: 273, 236
offset: 0, 0
index: -1
+TileSets/FantasyHex/Hexagon
+ rotate: false
+ xy: 583, 1804
+ size: 277, 240
+ orig: 277, 240
+ offset: 0, 0
+ index: -1
+TileSets/Default/Hexagon
+ rotate: false
+ xy: 583, 1804
+ size: 277, 240
+ orig: 277, 240
+ offset: 0, 0
+ index: -1
TileSets/FantasyHex/Railroad
rotate: false
- xy: 2, 130
+ xy: 1940, 106
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Anti-Aircraft Gun
rotate: false
- xy: 1670, 1474
+ xy: 1692, 1432
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Anti-Tank Gun
rotate: false
- xy: 2, 1450
+ xy: 1794, 1432
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Archer
rotate: false
- xy: 596, 1438
+ xy: 1116, 1410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Artillery
rotate: false
- xy: 800, 1430
+ xy: 1524, 1410
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/B17
rotate: false
- xy: 1106, 1430
+ xy: 308, 1340
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Ballista
rotate: false
- xy: 1310, 1372
+ xy: 512, 1340
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Battleship
rotate: false
- xy: 308, 1336
+ xy: 948, 1308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Bomber
rotate: false
- xy: 104, 1332
+ xy: 1356, 1308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Bowman
rotate: false
- xy: 206, 1332
+ xy: 1458, 1308
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Brute
rotate: false
- xy: 1022, 1328
+ xy: 308, 1238
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Camel Archer
rotate: false
- xy: 1430, 1270
+ xy: 1560, 1228
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Cannon
rotate: false
- xy: 2, 1246
+ xy: 1764, 1228
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Caravel
rotate: false
- xy: 1634, 1242
+ xy: 1866, 1228
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Carrier
rotate: false
- xy: 1736, 1242
+ xy: 2, 1226
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Catapult
rotate: false
- xy: 1940, 1242
+ xy: 920, 1206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Cavalry
rotate: false
- xy: 410, 1234
+ xy: 1124, 1206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Chariot Archer
rotate: false
- xy: 512, 1234
+ xy: 1226, 1206
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Chu-Ko-Nu
rotate: false
- xy: 818, 1226
+ xy: 206, 1136
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Companion Cavalry
rotate: false
- xy: 512, 1132
+ xy: 1226, 1104
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Conquistador
rotate: false
- xy: 206, 1128
+ xy: 716, 1090
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Cossack
rotate: false
- xy: 818, 1124
+ xy: 206, 1034
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Crossbowman
rotate: false
- xy: 1226, 1066
+ xy: 614, 1034
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Destroyer
rotate: false
- xy: 1634, 1038
+ xy: 1940, 1024
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Fighter
rotate: false
- xy: 1430, 964
+ xy: 1634, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Foreign Legion
rotate: false
- xy: 308, 928
+ xy: 1022, 900
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Frigate
rotate: false
- xy: 104, 924
+ xy: 1430, 900
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Galleass
rotate: false
- xy: 818, 920
+ xy: 206, 830
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Gatling Gun
rotate: false
- xy: 920, 920
+ xy: 308, 830
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Great Artist
rotate: false
- xy: 1430, 862
+ xy: 1634, 820
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Great Engineer
rotate: false
- xy: 1532, 862
+ xy: 1736, 820
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Great General
rotate: false
- xy: 2, 844
+ xy: 1838, 826
size: 100, 94
orig: 100, 94
offset: 0, 0
index: -1
OtherIcons/Star
rotate: false
- xy: 2, 844
+ xy: 1838, 826
size: 100, 94
orig: 100, 94
offset: 0, 0
index: -1
UnitIcons/Great Merchant
rotate: false
- xy: 1634, 834
+ xy: 1940, 820
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Great Scientist
rotate: false
- xy: 1736, 834
+ xy: 2, 818
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Great War Bomber
rotate: false
- xy: 1940, 834
+ xy: 920, 798
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Great War Infantry
rotate: false
- xy: 308, 826
+ xy: 1022, 798
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Helicopter
rotate: false
- xy: 920, 818
+ xy: 308, 728
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Hoplite
rotate: false
- xy: 1328, 760
+ xy: 1838, 724
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Horseman
rotate: false
- xy: 1532, 760
+ xy: 1634, 718
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Hwach'a
rotate: false
- xy: 1838, 732
+ xy: 818, 710
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Infantry
rotate: false
- xy: 614, 724
+ xy: 1430, 696
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Ironclad
rotate: false
- xy: 716, 716
+ xy: 206, 626
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Janissary
rotate: false
- xy: 1124, 658
+ xy: 614, 626
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Jet Fighter
rotate: false
- xy: 1328, 658
+ xy: 1532, 616
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Keshik
rotate: false
- xy: 1532, 658
+ xy: 1736, 616
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Khan
rotate: false
- xy: 2, 640
+ xy: 1940, 616
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Knight
rotate: false
- xy: 1634, 630
+ xy: 2, 614
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Lancer
rotate: false
- xy: 410, 622
+ xy: 1226, 594
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Landship
rotate: false
- xy: 614, 622
+ xy: 1430, 594
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Landsknecht
rotate: false
- xy: 104, 618
+ xy: 716, 580
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Legion
rotate: false
- xy: 818, 614
+ xy: 308, 524
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Longbowman
rotate: false
- xy: 1124, 556
+ xy: 614, 524
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Longswordsman
rotate: false
- xy: 1328, 556
+ xy: 1532, 514
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Machine Gun
rotate: false
- xy: 1532, 556
+ xy: 1736, 514
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Mandekalu Cavalry
rotate: false
- xy: 1736, 528
+ xy: 818, 506
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Maori Warrior
rotate: false
- xy: 308, 520
+ xy: 1124, 492
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Mechanized Infantry
rotate: false
- xy: 818, 512
+ xy: 308, 422
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Minuteman
rotate: false
- xy: 1736, 426
+ xy: 818, 404
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Modern Armor
rotate: false
- xy: 308, 418
+ xy: 1124, 390
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Mohawk Warrior
rotate: false
- xy: 410, 418
+ xy: 1226, 390
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Musketeer
rotate: false
- xy: 1022, 410
+ xy: 512, 320
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Musketman
rotate: false
- xy: 1124, 353
+ xy: 614, 321
size: 100, 99
orig: 100, 99
offset: 0, 0
index: -1
UnitIcons/Naresuan's Elephant
rotate: false
- xy: 1328, 352
+ xy: 1532, 310
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Nuclear Missile
rotate: false
- xy: 1940, 324
+ xy: 1022, 288
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Panzer
rotate: false
- xy: 1022, 308
+ xy: 410, 218
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Persian Immortal
rotate: false
- xy: 1736, 222
+ xy: 818, 200
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Pikeman
rotate: false
- xy: 410, 214
+ xy: 1226, 186
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Rifleman
rotate: false
- xy: 410, 112
+ xy: 1226, 84
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Rocket Artillery
rotate: false
- xy: 206, 108
+ xy: 614, 15
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitIcons/Samurai
rotate: false
- xy: 1532, 46
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Scout
- rotate: false
- xy: 1838, 18
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Settler
- rotate: false
- xy: 308, 10
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Ship of the Line
- rotate: false
- xy: 614, 10
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Sipahi
- rotate: false
- xy: 818, 2
+ xy: 1736, 4
size: 100, 100
orig: 100, 100
offset: 0, 0
@@ -2397,2683 +2320,2809 @@ size: 2048,1024
format: RGBA8888
filter: MipMapLinearLinear,MipMapLinearLinear
repeat: none
-BuildingIcons/Solar Plant
- rotate: false
- xy: 2, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Spaceship Factory
+BuildingIcons/Seaport
rotate: false
xy: 104, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-BuildingIcons/Stable
- rotate: false
- xy: 104, 718
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Stadium
- rotate: false
- xy: 206, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Statue of Liberty
- rotate: false
- xy: 308, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Stock Exchange
- rotate: false
- xy: 308, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Stone Works
- rotate: false
- xy: 2, 412
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Stonehenge
- rotate: false
- xy: 104, 514
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Sydney Opera House
- rotate: false
- xy: 2, 310
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Taj Mahal
- rotate: false
- xy: 104, 412
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Temple
- rotate: false
- xy: 308, 616
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Terracotta Army
- rotate: false
- xy: 512, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/The Great Library
- rotate: false
- xy: 614, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/The Great Lighthouse
- rotate: false
- xy: 2, 208
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/The Louvre
- rotate: false
- xy: 104, 310
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/The Oracle
- rotate: false
- xy: 206, 412
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/The Pyramids
- rotate: false
- xy: 410, 616
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Theatre
- rotate: false
- xy: 614, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/University
- rotate: false
- xy: 614, 718
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Walls
- rotate: false
- xy: 818, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Walls of Babylon
- rotate: false
- xy: 2, 4
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Wat
- rotate: false
- xy: 410, 411
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Windmill
- rotate: false
- xy: 716, 718
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-BuildingIcons/Workshop
- rotate: false
- xy: 206, 106
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ImprovementIcons/Trading post
- rotate: false
- xy: 2, 106
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-NationIcons/Songhai
- rotate: false
- xy: 2, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-NationIcons/Spain
- rotate: false
- xy: 2, 718
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-NationIcons/The Ottomans
- rotate: false
- xy: 308, 514
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-OtherIcons/Aircraft
- rotate: false
- xy: 818, 768
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-OtherIcons/BackArrow
- rotate: false
- xy: 206, 2
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-OtherIcons/Down
- rotate: false
- xy: 1438, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-OtherIcons/Stop
- rotate: false
- xy: 206, 616
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-OtherIcons/TableBackground
- rotate: false
- xy: 1284, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-OtherIcons/Up
- rotate: false
- xy: 1596, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-OtherIcons/whiteDot
- rotate: false
- xy: 575, 511
- size: 1, 1
- orig: 1, 1
- offset: 0, 0
- index: -1
-PolicyIcons/Aristocracy
- rotate: false
- xy: 1022, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Citizenship
- rotate: false
- xy: 1126, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Civil Society
- rotate: false
- xy: 512, 345
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Collective Rule
- rotate: false
- xy: 1230, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Constitution
- rotate: false
- xy: 1282, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Democracy
- rotate: false
- xy: 1386, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Entrepreneurship
- rotate: false
- xy: 1542, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Fascism
- rotate: false
- xy: 1698, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Free Religion
- rotate: false
- xy: 1854, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Free Speech
- rotate: false
- xy: 1906, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Free Thought
- rotate: false
- xy: 1958, 972
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Humanism
- rotate: false
- xy: 666, 512
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Landed Elite
- rotate: false
- xy: 258, 54
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Legalism
- rotate: false
- xy: 258, 2
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Mandate Of Heaven
- rotate: false
- xy: 462, 257
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Mercantilism
- rotate: false
- xy: 564, 449
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Meritocracy
- rotate: false
- xy: 564, 397
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Militarism
- rotate: false
- xy: 564, 345
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Military Caste
- rotate: false
- xy: 566, 293
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Military Tradition
- rotate: false
- xy: 566, 241
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Monarchy
- rotate: false
- xy: 616, 408
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Oligarchy
- rotate: false
- xy: 668, 460
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Organized Religion
- rotate: false
- xy: 668, 408
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Patronage
- rotate: false
- xy: 668, 356
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Police State
- rotate: false
- xy: 618, 304
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Populism
- rotate: false
- xy: 618, 252
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Professional Army
- rotate: false
- xy: 670, 304
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Protectionism
- rotate: false
- xy: 670, 252
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Reformation
- rotate: false
- xy: 412, 205
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Representation
- rotate: false
- xy: 820, 716
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Republic
- rotate: false
- xy: 820, 664
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Scientific Revolution
- rotate: false
- xy: 872, 716
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Secularism
- rotate: false
- xy: 1024, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Sovereignty
- rotate: false
- xy: 1232, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Theocracy
- rotate: false
- xy: 1388, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Total War
- rotate: false
- xy: 1440, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Trade Unions
- rotate: false
- xy: 1492, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Universal Suffrage
- rotate: false
- xy: 1544, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-PolicyIcons/Warrior Code
- rotate: false
- xy: 1700, 920
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-ResourceIcons/Spices
- rotate: false
- xy: 2, 616
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Stone
- rotate: false
- xy: 410, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Sugar
- rotate: false
- xy: 410, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Uranium
- rotate: false
- xy: 716, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Whales
- rotate: false
- xy: 512, 514
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Wheat
- rotate: false
- xy: 614, 616
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-ResourceIcons/Wine
- rotate: false
- xy: 818, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-StatIcons/InterceptRange
- rotate: false
- xy: 870, 768
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-StatIcons/Movement
- rotate: false
- xy: 616, 356
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-StatIcons/Range
- rotate: false
- xy: 618, 200
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-StatIcons/RangedStrength
- rotate: false
- xy: 670, 200
- size: 50, 50
- orig: 50, 50
- offset: 0, 0
- index: -1
-StatIcons/Specialist
- rotate: false
- xy: 206, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-TechIcons/Steam Power
+BuildingIcons/Sistine Chapel
rotate: false
xy: 104, 616
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-TechIcons/Steel
+BuildingIcons/Solar Plant
rotate: false
- xy: 206, 718
+ xy: 308, 820
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-TechIcons/The Wheel
+BuildingIcons/Spaceship Factory
rotate: false
- xy: 512, 718
+ xy: 2, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-TechIcons/Theology
- rotate: false
- xy: 716, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-TechIcons/Trapping
- rotate: false
- xy: 104, 208
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-TechIcons/Writing
- rotate: false
- xy: 308, 208
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Academy
- rotate: false
- xy: 2010, 986
- size: 32, 36
- orig: 32, 36
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Aluminum
- rotate: false
- xy: 920, 840
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Ancient ruins
- rotate: false
- xy: 464, 227
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Atoll
- rotate: false
- xy: 954, 840
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Bananas
- rotate: false
- xy: 342, 126
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Barbarian encampment
- rotate: false
- xy: 750, 636
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Barringer Crater
- rotate: false
- xy: 1058, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Camp+Deer
- rotate: false
- xy: 1092, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Camp+Furs
- rotate: false
- xy: 1126, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Camp+Ivory
- rotate: false
- xy: 1160, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Cattle
- rotate: false
- xy: 1262, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Cerro de Potosi
- rotate: false
- xy: 1330, 886
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Citadel
- rotate: false
- xy: 1432, 883
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/City
- rotate: false
- xy: 1466, 883
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+City
- rotate: false
- xy: 1466, 883
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+City
- rotate: false
- xy: 1466, 883
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/City ruins
- rotate: false
- xy: 1500, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Coal
- rotate: false
- xy: 1568, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Coast
- rotate: false
- xy: 1602, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Coast+Oil well
- rotate: false
- xy: 1636, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Cotton
- rotate: false
- xy: 1772, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Customs house
- rotate: false
- xy: 852, 627
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Deer
- rotate: false
- xy: 886, 634
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert
- rotate: false
- xy: 410, 123
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+City
- rotate: false
- xy: 1856, 907
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Fallout
- rotate: false
- xy: 1890, 914
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Farm
- rotate: false
- xy: 1924, 914
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Flood plains
- rotate: false
- xy: 1958, 912
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Flood plains+Farm
- rotate: false
- xy: 1024, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Flood plains+Trading post
- rotate: false
- xy: 1058, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Oasis
- rotate: false
- xy: 1092, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Desert+Trading post
- rotate: false
- xy: 1126, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Dyes
- rotate: false
- xy: 1194, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/El Dorado
- rotate: false
- xy: 1228, 861
- size: 32, 29
- orig: 32, 29
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Fish
- rotate: false
- xy: 1262, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Fishing Boats
- rotate: false
- xy: 1296, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Fishing Boats+Whales
- rotate: false
- xy: 1330, 856
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Fort
- rotate: false
- xy: 1398, 855
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Fountain of Youth
- rotate: false
- xy: 1432, 849
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Furs
- rotate: false
- xy: 1500, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Gems
- rotate: false
- xy: 1636, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Gold
- rotate: false
- xy: 1670, 862
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grand Mesa
- rotate: false
- xy: 1704, 858
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland
- rotate: false
- xy: 1738, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Fallout
- rotate: false
- xy: 1772, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Farm
- rotate: false
- xy: 1806, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest
- rotate: false
- xy: 1022, 827
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Aluminum
- rotate: false
- xy: 1056, 827
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Camp
- rotate: false
- xy: 1090, 827
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Camp+Deer
- rotate: false
- xy: 1124, 827
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Camp+Furs
- rotate: false
- xy: 498, 208
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Coal
- rotate: false
- xy: 498, 175
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Gold
- rotate: false
- xy: 532, 208
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Iron
- rotate: false
- xy: 532, 175
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Lumber mill
- rotate: false
- xy: 566, 208
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Forest+Silver
- rotate: false
- xy: 566, 175
- size: 32, 31
- orig: 32, 31
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Jungle
- rotate: false
- xy: 1992, 936
- size: 32, 34
- orig: 32, 34
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Jungle+Camp
- rotate: false
- xy: 1992, 900
- size: 32, 34
- orig: 32, 34
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Jungle+Trading post
- rotate: false
- xy: 1840, 871
- size: 32, 34
- orig: 32, 34
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Marsh
- rotate: false
- xy: 444, 122
- size: 32, 29
- orig: 32, 29
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Grassland+Trading post
- rotate: false
- xy: 1874, 877
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Great Barrier Reef
- rotate: false
- xy: 1942, 882
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill
- rotate: false
- xy: 1976, 836
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Fallout
- rotate: false
- xy: 2010, 866
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Forest
- rotate: false
- xy: 2010, 819
- size: 32, 45
- orig: 32, 45
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Forest+Camp
- rotate: false
- xy: 718, 589
- size: 32, 45
- orig: 32, 45
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Forest+Camp+Deer
- rotate: false
- xy: 718, 542
- size: 32, 45
- orig: 32, 45
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Forest+Camp+Furs
- rotate: false
- xy: 752, 589
- size: 32, 45
- orig: 32, 45
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Forest+Lumber mill
- rotate: false
- xy: 752, 542
- size: 32, 45
- orig: 32, 45
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Mine
- rotate: false
- xy: 786, 602
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Quarry
- rotate: false
- xy: 786, 568
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Hill+Terrace Farm
- rotate: false
- xy: 786, 534
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Horses
- rotate: false
- xy: 720, 482
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Incense
- rotate: false
- xy: 720, 422
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Iron
- rotate: false
- xy: 720, 392
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Ivory
- rotate: false
- xy: 754, 482
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Krakatoa
- rotate: false
- xy: 722, 297
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Lakes
- rotate: false
- xy: 722, 267
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Landmark
- rotate: false
- xy: 756, 328
- size: 32, 36
- orig: 32, 36
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Manufactory
- rotate: false
- xy: 310, 55
- size: 32, 39
- orig: 32, 39
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Marble
- rotate: false
- xy: 310, 25
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Mine
- rotate: false
- xy: 922, 810
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Moai
- rotate: false
- xy: 922, 779
- size: 32, 29
- orig: 32, 29
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Mount Fuji
- rotate: false
- xy: 924, 745
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Mountain
- rotate: false
- xy: 924, 707
- size: 32, 36
- orig: 32, 36
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Ocean
- rotate: false
- xy: 958, 662
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Oil
- rotate: false
- xy: 924, 647
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Oil well
- rotate: false
- xy: 958, 632
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Old Faithful
- rotate: false
- xy: 788, 500
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Pasture
- rotate: false
- xy: 788, 412
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Pasture+Cattle
- rotate: false
- xy: 790, 348
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Pasture+Horses
- rotate: false
- xy: 790, 314
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Pasture+Sheep
- rotate: false
- xy: 790, 280
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Pasture2
- rotate: false
- xy: 788, 382
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Pearls
- rotate: false
- xy: 790, 250
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains
- rotate: false
- xy: 756, 178
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+City
- rotate: false
- xy: 722, 170
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Fallout
- rotate: false
- xy: 790, 160
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Farm
- rotate: false
- xy: 756, 148
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Forest
- rotate: false
- xy: 790, 125
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Forest+Camp
- rotate: false
- xy: 1364, 825
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Forest+Camp+Deer
- rotate: false
- xy: 1398, 820
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Forest+Camp+Furs
- rotate: false
- xy: 1432, 814
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Forest+Lumber mill
- rotate: false
- xy: 1466, 820
- size: 32, 33
- orig: 32, 33
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Jungle
- rotate: false
- xy: 1500, 823
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Jungle+Trading post
- rotate: false
- xy: 1534, 825
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plains+Trading post
- rotate: false
- xy: 1568, 832
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation
- rotate: false
- xy: 1602, 830
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Bananas
- rotate: false
- xy: 1636, 830
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Cotton
- rotate: false
- xy: 1670, 832
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Dyes
- rotate: false
- xy: 1704, 828
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Incense
- rotate: false
- xy: 1738, 830
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Silk
- rotate: false
- xy: 1772, 830
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Spices
- rotate: false
- xy: 1806, 830
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Sugar
- rotate: false
- xy: 1840, 811
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Plantation+Wine
- rotate: false
- xy: 1874, 817
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Polder
- rotate: false
- xy: 1908, 824
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Quarry
- rotate: false
- xy: 1942, 822
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Quarry+Marble
- rotate: false
- xy: 1976, 806
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Quarry+Stone
- rotate: false
- xy: 2010, 789
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/River-Bottom
- rotate: false
- xy: 886, 602
- size: 32, 30
- orig: 32, 30
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/River-BottomLeft
- rotate: false
- xy: 920, 585
- size: 32, 30
- orig: 32, 30
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/River-BottomRight
- rotate: false
- xy: 954, 600
- size: 32, 30
- orig: 32, 30
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/River-Top
- rotate: false
- xy: 954, 568
- size: 32, 30
- orig: 32, 30
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/River-TopLeft
- rotate: false
- xy: 1568, 800
- size: 32, 30
- orig: 32, 30
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/River-TopRight
- rotate: false
- xy: 1602, 798
- size: 32, 30
- orig: 32, 30
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Rock of Gibraltar
- rotate: false
- xy: 1636, 796
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Sheep
- rotate: false
- xy: 1500, 793
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Silk
- rotate: false
- xy: 1704, 798
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Silver
- rotate: false
- xy: 1738, 800
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Spices
- rotate: false
- xy: 1874, 787
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Stone
- rotate: false
- xy: 1908, 794
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Sugar
- rotate: false
- xy: 1976, 776
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra
- rotate: false
- xy: 1840, 751
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+City
- rotate: false
- xy: 1874, 750
- size: 32, 35
- orig: 32, 35
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Fallout
- rotate: false
- xy: 1908, 764
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Forest
- rotate: false
- xy: 1942, 760
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Forest+Camp
- rotate: false
- xy: 1976, 742
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Forest+Camp+Deer
- rotate: false
- xy: 1908, 730
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Forest+Camp+Furs
- rotate: false
- xy: 1942, 726
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Forest+Lumber mill
- rotate: false
- xy: 2010, 725
- size: 32, 32
- orig: 32, 32
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Tundra+Trading post
- rotate: false
- xy: 1976, 712
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Uranium
- rotate: false
- xy: 498, 145
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Whales
- rotate: false
- xy: 634, 170
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Wheat
- rotate: false
- xy: 668, 170
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Tiles/Wine
- rotate: false
- xy: 600, 142
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/TopBorder
- rotate: false
- xy: 1738, 770
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Anti-Aircraft Gun
- rotate: false
- xy: 308, 126
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Anti-Tank Gun
- rotate: false
- xy: 716, 636
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Archer
- rotate: false
- xy: 1024, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Artillery
- rotate: false
- xy: 1856, 942
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Ballista
- rotate: false
- xy: 464, 197
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Battleship
- rotate: false
- xy: 1890, 944
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Berserker
- rotate: false
- xy: 988, 840
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Bowman
- rotate: false
- xy: 464, 167
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Brute
- rotate: false
- xy: 376, 126
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Camel Archer
- rotate: false
- xy: 784, 636
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Cannon
- rotate: false
- xy: 1194, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Caravel
- rotate: false
- xy: 1924, 944
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Carrier
- rotate: false
- xy: 1228, 892
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Catapult
- rotate: false
- xy: 1958, 942
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Cavalry
- rotate: false
- xy: 1296, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Chariot Archer
- rotate: false
- xy: 1364, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Chu-Ko-Nu
- rotate: false
- xy: 1398, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/CivilianLandUnit
- rotate: false
- xy: 1534, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Companion Cavalry
- rotate: false
- xy: 1670, 892
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Conquistador
- rotate: false
- xy: 1704, 892
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Cossack
- rotate: false
- xy: 1738, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Crossbowman
- rotate: false
- xy: 1806, 890
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Cruiser
- rotate: false
- xy: 818, 636
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Destroyer
- rotate: false
- xy: 1160, 862
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Foreign Legion
- rotate: false
- xy: 1364, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Frigate
- rotate: false
- xy: 1466, 855
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Galleass
- rotate: false
- xy: 1534, 862
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Galley
- rotate: false
- xy: 1568, 862
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Gatling Gun
- rotate: false
- xy: 1602, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Machine Gun
- rotate: false
- xy: 1602, 860
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Great Artist
- rotate: false
- xy: 1908, 884
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Great Engineer
- rotate: false
- xy: 1840, 841
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Worker
- rotate: false
- xy: 1840, 841
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Great General
- rotate: false
- xy: 1874, 847
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Great Merchant
- rotate: false
- xy: 1908, 854
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Settler
- rotate: false
- xy: 1908, 854
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Great Scientist
- rotate: false
- xy: 1942, 852
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Great War Infantry
- rotate: false
- xy: 1976, 870
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Infantry
- rotate: false
- xy: 1976, 870
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Hoplite
- rotate: false
- xy: 718, 512
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Horseman
- rotate: false
- xy: 752, 512
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Hwach'a
- rotate: false
- xy: 720, 452
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Ironclad
- rotate: false
- xy: 720, 364
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Jaguar
- rotate: false
- xy: 754, 452
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Janissary
- rotate: false
- xy: 754, 422
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Keshik
- rotate: false
- xy: 754, 394
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Khan
- rotate: false
- xy: 754, 366
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Knight
- rotate: false
- xy: 722, 334
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Lancer
- rotate: false
- xy: 722, 237
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/LandUnit
- rotate: false
- xy: 722, 207
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Warrior
- rotate: false
- xy: 722, 207
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Landship
- rotate: false
- xy: 756, 298
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Landsknecht
- rotate: false
- xy: 756, 268
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Legion
- rotate: false
- xy: 756, 238
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Longbowman
- rotate: false
- xy: 756, 208
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Longswordsman
- rotate: false
- xy: 310, 96
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Mandekalu Cavalry
- rotate: false
- xy: 344, 98
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Maori Warrior
- rotate: false
- xy: 344, 68
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Marine
- rotate: false
- xy: 344, 38
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Mechanized Infantry
- rotate: false
- xy: 344, 10
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Minuteman
- rotate: false
- xy: 956, 810
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Mohawk Warrior
- rotate: false
- xy: 956, 780
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Musketeer
- rotate: false
- xy: 924, 677
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Musketman
- rotate: false
- xy: 958, 750
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Naresuan's Elephant
- rotate: false
- xy: 958, 722
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Norwegian Ski Infantry
- rotate: false
- xy: 958, 692
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Panzer
- rotate: false
- xy: 788, 472
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Paratrooper
- rotate: false
- xy: 788, 442
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Persian Immortal
- rotate: false
- xy: 790, 220
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Pikeman
- rotate: false
- xy: 790, 190
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Rifleman
- rotate: false
- xy: 920, 617
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Rocket Artillery
- rotate: false
- xy: 1670, 802
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Scout
- rotate: false
- xy: 1534, 795
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Ship of the Line
- rotate: false
- xy: 1466, 792
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Sipahi
- rotate: false
- xy: 1772, 802
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Slinger
- rotate: false
- xy: 1806, 800
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Spearman
- rotate: false
- xy: 1840, 781
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Submarine
- rotate: false
- xy: 1942, 794
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Swordsman
- rotate: false
- xy: 2010, 759
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Tank
- rotate: false
- xy: 1670, 772
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Tercio
- rotate: false
- xy: 1704, 768
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Trebuchet
- rotate: false
- xy: 1772, 772
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Trireme
- rotate: false
- xy: 1806, 772
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Turtle Ship
- rotate: false
- xy: 2010, 697
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/War Chariot
- rotate: false
- xy: 532, 145
- size: 32, 28
- orig: 32, 28
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/War Elephant
- rotate: false
- xy: 566, 147
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/WaterUnit
- rotate: false
- xy: 600, 172
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/Units/Work Boats
- rotate: false
- xy: 634, 142
- size: 32, 26
- orig: 32, 26
- offset: 0, 0
- index: -1
-TileSets/FantasyHex/road
- rotate: false
- xy: 512, 501
- size: 61, 11
- orig: 61, 11
- offset: 0, 0
- index: -1
-TileSets/Default/road
- rotate: false
- xy: 512, 501
- size: 61, 11
- orig: 61, 11
- offset: 0, 0
- index: -1
-UnitIcons/Spearman
- rotate: false
- xy: 104, 820
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Stealth Bomber
- rotate: false
- xy: 2, 514
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Submarine
- rotate: false
- xy: 308, 718
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Swordsman
+BuildingIcons/Stable
rotate: false
xy: 512, 922
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Tank
+BuildingIcons/Stadium
rotate: false
- xy: 206, 514
+ xy: 2, 310
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Tercio
+BuildingIcons/Statue of Liberty
rotate: false
- xy: 410, 718
+ xy: 104, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Trebuchet
+BuildingIcons/Stock Exchange
rotate: false
- xy: 206, 310
+ xy: 512, 820
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Triplane
+BuildingIcons/Stone Works
+ rotate: false
+ xy: 2, 208
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Stonehenge
+ rotate: false
+ xy: 104, 310
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Sydney Opera House
+ rotate: false
+ xy: 614, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Taj Mahal
+ rotate: false
+ xy: 716, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Temple
+ rotate: false
+ xy: 104, 208
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Terracotta Army
rotate: false
xy: 308, 412
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Trireme
+BuildingIcons/The Great Library
rotate: false
- xy: 410, 513
- size: 100, 101
- orig: 100, 101
+ xy: 410, 514
+ size: 100, 100
+ orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Turtle Ship
+BuildingIcons/The Great Lighthouse
rotate: false
xy: 512, 616
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/War Chariot
+BuildingIcons/The Louvre
rotate: false
- xy: 104, 106
+ xy: 614, 718
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/War Elephant
+BuildingIcons/The Oracle
+ rotate: false
+ xy: 716, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/The Pyramids
+ rotate: false
+ xy: 2, 4
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Theatre
rotate: false
xy: 206, 208
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
-UnitIcons/Warrior
- rotate: false
- xy: 308, 310
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Work Boats
- rotate: false
- xy: 920, 922
- size: 100, 100
- orig: 100, 100
- offset: 0, 0
- index: -1
-UnitIcons/Worker
+BuildingIcons/University
rotate: false
xy: 104, 4
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
+BuildingIcons/Walls
+ rotate: false
+ xy: 308, 208
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Walls of Babylon
+ rotate: false
+ xy: 410, 310
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Wat
+ rotate: false
+ xy: 818, 717
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Windmill
+ rotate: false
+ xy: 206, 4
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+BuildingIcons/Workshop
+ rotate: false
+ xy: 614, 412
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ImprovementIcons/Trading post
+ rotate: false
+ xy: 410, 412
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+NationIcons/Siam
+ rotate: false
+ xy: 104, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+NationIcons/Songhai
+ rotate: false
+ xy: 410, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+NationIcons/Spain
+ rotate: false
+ xy: 104, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+NationIcons/The Ottomans
+ rotate: false
+ xy: 818, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+OtherIcons/Aircraft
+ rotate: false
+ xy: 308, 54
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+OtherIcons/BackArrow
+ rotate: false
+ xy: 614, 360
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+OtherIcons/Down
+ rotate: false
+ xy: 1540, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+OtherIcons/Shield
+ rotate: false
+ xy: 206, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+OtherIcons/Sleep
+ rotate: false
+ xy: 206, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+OtherIcons/Stop
+ rotate: false
+ xy: 206, 412
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+OtherIcons/TableBackground
+ rotate: false
+ xy: 1178, 868
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+OtherIcons/Up
+ rotate: false
+ xy: 1334, 868
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+OtherIcons/whiteDot
+ rotate: false
+ xy: 983, 817
+ size: 1, 1
+ orig: 1, 1
+ offset: 0, 0
+ index: -1
+PolicyIcons/Aristocracy
+ rotate: false
+ xy: 410, 156
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Citizenship
+ rotate: false
+ xy: 1228, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Civil Society
+ rotate: false
+ xy: 920, 651
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Collective Rule
+ rotate: false
+ xy: 1332, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Constitution
+ rotate: false
+ xy: 1384, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Democracy
+ rotate: false
+ xy: 1488, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Entrepreneurship
+ rotate: false
+ xy: 1644, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Fascism
+ rotate: false
+ xy: 1800, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Free Religion
+ rotate: false
+ xy: 1956, 972
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Free Speech
+ rotate: false
+ xy: 1022, 818
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Free Thought
+ rotate: false
+ xy: 1074, 870
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Humanism
+ rotate: false
+ xy: 360, 2
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Landed Elite
+ rotate: false
+ xy: 768, 462
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Legalism
+ rotate: false
+ xy: 870, 563
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Mandate Of Heaven
+ rotate: false
+ xy: 922, 547
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Mercantilism
+ rotate: false
+ xy: 972, 651
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Meritocracy
+ rotate: false
+ xy: 974, 599
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Militarism
+ rotate: false
+ xy: 974, 547
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Military Caste
+ rotate: false
+ xy: 1024, 766
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Military Tradition
+ rotate: false
+ xy: 1024, 714
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Monarchy
+ rotate: false
+ xy: 1076, 766
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Oligarchy
+ rotate: false
+ xy: 1076, 662
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Organized Religion
+ rotate: false
+ xy: 1026, 610
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Patronage
+ rotate: false
+ xy: 1026, 558
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Police State
+ rotate: false
+ xy: 1078, 610
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Populism
+ rotate: false
+ xy: 1078, 558
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Professional Army
+ rotate: false
+ xy: 1026, 506
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Protectionism
+ rotate: false
+ xy: 1078, 506
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Reformation
+ rotate: false
+ xy: 412, 104
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Representation
+ rotate: false
+ xy: 464, 104
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Republic
+ rotate: false
+ xy: 464, 52
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Scientific Revolution
+ rotate: false
+ xy: 616, 308
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Secularism
+ rotate: false
+ xy: 668, 308
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Sovereignty
+ rotate: false
+ xy: 1178, 920
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Theocracy
+ rotate: false
+ xy: 1230, 868
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Total War
+ rotate: false
+ xy: 1282, 920
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Trade Unions
+ rotate: false
+ xy: 1282, 868
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Universal Suffrage
+ rotate: false
+ xy: 1334, 920
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+PolicyIcons/Warrior Code
+ rotate: false
+ xy: 1386, 868
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+ResourceIcons/Sheep
+ rotate: false
+ xy: 104, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Silk
+ rotate: false
+ xy: 206, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Silver
+ rotate: false
+ xy: 308, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Spices
+ rotate: false
+ xy: 410, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Stone
+ rotate: false
+ xy: 614, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Sugar
+ rotate: false
+ xy: 410, 616
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Uranium
+ rotate: false
+ xy: 206, 106
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Whales
+ rotate: false
+ xy: 920, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Wheat
+ rotate: false
+ xy: 1022, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+ResourceIcons/Wine
+ rotate: false
+ xy: 308, 106
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+StatIcons/InterceptRange
+ rotate: false
+ xy: 564, 258
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+StatIcons/Movement
+ rotate: false
+ xy: 1076, 714
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+StatIcons/Range
+ rotate: false
+ xy: 820, 511
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+StatIcons/RangedStrength
+ rotate: false
+ xy: 820, 459
+ size: 50, 50
+ orig: 50, 50
+ offset: 0, 0
+ index: -1
+StatIcons/Specialist
+ rotate: false
+ xy: 308, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/Scientific Theory
+ rotate: false
+ xy: 2, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/Steam Power
+ rotate: false
+ xy: 308, 616
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/Steel
+ rotate: false
+ xy: 410, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/The Wheel
+ rotate: false
+ xy: 104, 106
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/Theology
+ rotate: false
+ xy: 308, 310
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/Trapping
+ rotate: false
+ xy: 512, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TechIcons/Writing
+ rotate: false
+ xy: 716, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Academy
+ rotate: false
+ xy: 2008, 986
+ size: 32, 36
+ orig: 32, 36
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Aluminum
+ rotate: false
+ xy: 872, 533
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Ancient ruins
+ rotate: false
+ xy: 716, 432
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Atoll
+ rotate: false
+ xy: 872, 503
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Bananas
+ rotate: false
+ xy: 446, 22
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Barbarian encampment
+ rotate: false
+ xy: 546, 228
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Barringer Crater
+ rotate: false
+ xy: 1160, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Camp+Deer
+ rotate: false
+ xy: 580, 228
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Camp+Furs
+ rotate: false
+ xy: 1194, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Camp+Ivory
+ rotate: false
+ xy: 1490, 884
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Cattle
+ rotate: false
+ xy: 1592, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Cerro de Potosi
+ rotate: false
+ xy: 1660, 938
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Citadel
+ rotate: false
+ xy: 1762, 935
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/City
+ rotate: false
+ xy: 1796, 935
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+City
+ rotate: false
+ xy: 1796, 935
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+City
+ rotate: false
+ xy: 1796, 935
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/City ruins
+ rotate: false
+ xy: 1830, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Coal
+ rotate: false
+ xy: 1898, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Coast
+ rotate: false
+ xy: 1932, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Coast+Atoll
+ rotate: false
+ xy: 1966, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Coast+Ice
+ rotate: false
+ xy: 1524, 882
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Coast+Oil well
+ rotate: false
+ xy: 1558, 884
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Cotton
+ rotate: false
+ xy: 1592, 884
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Customs house
+ rotate: false
+ xy: 1660, 901
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Deer
+ rotate: false
+ xy: 1694, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert
+ rotate: false
+ xy: 1728, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+City
+ rotate: false
+ xy: 1330, 833
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Fallout
+ rotate: false
+ xy: 1364, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Farm
+ rotate: false
+ xy: 1398, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Flood plains
+ rotate: false
+ xy: 1432, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Flood plains+Farm
+ rotate: false
+ xy: 614, 226
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Flood plains+Trading post
+ rotate: false
+ xy: 648, 226
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Oasis
+ rotate: false
+ xy: 682, 226
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Desert+Trading post
+ rotate: false
+ xy: 818, 429
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Dyes
+ rotate: false
+ xy: 1796, 905
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/El Dorado
+ rotate: false
+ xy: 1830, 911
+ size: 32, 29
+ orig: 32, 29
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Fish
+ rotate: false
+ xy: 1864, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Fishing Boats
+ rotate: false
+ xy: 1898, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Fishing Boats+Whales
+ rotate: false
+ xy: 1932, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Fort
+ rotate: false
+ xy: 1466, 833
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Fountain of Youth
+ rotate: false
+ xy: 906, 513
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Furs
+ rotate: false
+ xy: 940, 517
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Gems
+ rotate: false
+ xy: 1660, 871
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Gold
+ rotate: false
+ xy: 1694, 882
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grand Mesa
+ rotate: false
+ xy: 1728, 878
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland
+ rotate: false
+ xy: 1762, 877
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Fallout
+ rotate: false
+ xy: 1796, 875
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Farm
+ rotate: false
+ xy: 1830, 881
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest
+ rotate: false
+ xy: 1864, 879
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Aluminum
+ rotate: false
+ xy: 1898, 879
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Camp
+ rotate: false
+ xy: 1932, 879
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Camp+Deer
+ rotate: false
+ xy: 1966, 879
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Camp+Furs
+ rotate: false
+ xy: 852, 426
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Coal
+ rotate: false
+ xy: 1694, 849
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Gold
+ rotate: false
+ xy: 1728, 845
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Iron
+ rotate: false
+ xy: 1762, 844
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Lumber mill
+ rotate: false
+ xy: 1796, 842
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Forest+Silver
+ rotate: false
+ xy: 1830, 848
+ size: 32, 31
+ orig: 32, 31
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Jungle
+ rotate: false
+ xy: 1864, 843
+ size: 32, 34
+ orig: 32, 34
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Jungle+Camp
+ rotate: false
+ xy: 1898, 843
+ size: 32, 34
+ orig: 32, 34
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Jungle+Trading post
+ rotate: false
+ xy: 1932, 843
+ size: 32, 34
+ orig: 32, 34
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Marsh
+ rotate: false
+ xy: 1966, 848
+ size: 32, 29
+ orig: 32, 29
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Grassland+Trading post
+ rotate: false
+ xy: 2008, 956
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Great Barrier Reef
+ rotate: false
+ xy: 2000, 896
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill
+ rotate: false
+ xy: 940, 455
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Fallout
+ rotate: false
+ xy: 974, 455
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Forest
+ rotate: false
+ xy: 1008, 459
+ size: 32, 45
+ orig: 32, 45
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Forest+Camp
+ rotate: false
+ xy: 1042, 459
+ size: 32, 45
+ orig: 32, 45
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Forest+Camp+Deer
+ rotate: false
+ xy: 1076, 459
+ size: 32, 45
+ orig: 32, 45
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Forest+Camp+Furs
+ rotate: false
+ xy: 1110, 459
+ size: 32, 45
+ orig: 32, 45
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Forest+Lumber mill
+ rotate: false
+ xy: 1128, 791
+ size: 32, 45
+ orig: 32, 45
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Mine
+ rotate: false
+ xy: 1128, 757
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Quarry
+ rotate: false
+ xy: 1162, 804
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Hill+Terrace Farm
+ rotate: false
+ xy: 1128, 723
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Horses
+ rotate: false
+ xy: 1162, 744
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Incense
+ rotate: false
+ xy: 1162, 714
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Iron
+ rotate: false
+ xy: 1162, 684
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Ivory
+ rotate: false
+ xy: 1196, 780
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Krakatoa
+ rotate: false
+ xy: 1230, 745
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Lakes
+ rotate: false
+ xy: 1230, 715
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Landmark
+ rotate: false
+ xy: 1130, 565
+ size: 32, 36
+ orig: 32, 36
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Manufactory
+ rotate: false
+ xy: 1144, 466
+ size: 32, 39
+ orig: 32, 39
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Marble
+ rotate: false
+ xy: 1898, 813
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Mine
+ rotate: false
+ xy: 2000, 776
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Moai
+ rotate: false
+ xy: 514, 167
+ size: 32, 29
+ orig: 32, 29
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Mount Fuji
+ rotate: false
+ xy: 548, 164
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Mountain
+ rotate: false
+ xy: 718, 394
+ size: 32, 36
+ orig: 32, 36
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Ocean
+ rotate: false
+ xy: 720, 304
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Ocean+Atoll
+ rotate: false
+ xy: 720, 274
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Ocean+Ice
+ rotate: false
+ xy: 754, 344
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Oil
+ rotate: false
+ xy: 754, 314
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Oil well
+ rotate: false
+ xy: 754, 284
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Old Faithful
+ rotate: false
+ xy: 720, 240
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Pasture
+ rotate: false
+ xy: 716, 210
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Pasture+Cattle
+ rotate: false
+ xy: 886, 421
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Pasture+Horses
+ rotate: false
+ xy: 920, 421
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Pasture+Sheep
+ rotate: false
+ xy: 954, 421
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Pasture2
+ rotate: false
+ xy: 750, 196
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Pearls
+ rotate: false
+ xy: 988, 425
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains
+ rotate: false
+ xy: 1090, 429
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+City
+ rotate: false
+ xy: 1124, 422
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Fallout
+ rotate: false
+ xy: 1158, 436
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Farm
+ rotate: false
+ xy: 1158, 406
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Forest
+ rotate: false
+ xy: 1364, 803
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Forest+Camp
+ rotate: false
+ xy: 1398, 803
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Forest+Camp+Deer
+ rotate: false
+ xy: 1432, 803
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Forest+Camp+Furs
+ rotate: false
+ xy: 1466, 798
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Forest+Lumber mill
+ rotate: false
+ xy: 988, 390
+ size: 32, 33
+ orig: 32, 33
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Jungle
+ rotate: false
+ xy: 1022, 392
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Jungle+Trading post
+ rotate: false
+ xy: 1056, 392
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plains+Trading post
+ rotate: false
+ xy: 1090, 399
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation
+ rotate: false
+ xy: 1124, 392
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Bananas
+ rotate: false
+ xy: 1090, 369
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Cotton
+ rotate: false
+ xy: 1124, 362
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Dyes
+ rotate: false
+ xy: 1158, 376
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Incense
+ rotate: false
+ xy: 1158, 346
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Silk
+ rotate: false
+ xy: 1558, 854
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Spices
+ rotate: false
+ xy: 1592, 854
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Sugar
+ rotate: false
+ xy: 1626, 854
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Plantation+Wine
+ rotate: false
+ xy: 1660, 841
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Polder
+ rotate: false
+ xy: 1694, 819
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Quarry
+ rotate: false
+ xy: 1728, 815
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Quarry+Marble
+ rotate: false
+ xy: 1762, 814
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Quarry+Stone
+ rotate: false
+ xy: 1796, 812
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/River-Bottom
+ rotate: false
+ xy: 1864, 781
+ size: 32, 30
+ orig: 32, 30
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/River-BottomLeft
+ rotate: false
+ xy: 1898, 781
+ size: 32, 30
+ orig: 32, 30
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/River-BottomRight
+ rotate: false
+ xy: 1932, 781
+ size: 32, 30
+ orig: 32, 30
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/River-Top
+ rotate: false
+ xy: 1966, 758
+ size: 32, 30
+ orig: 32, 30
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/River-TopLeft
+ rotate: false
+ xy: 2000, 744
+ size: 32, 30
+ orig: 32, 30
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/River-TopRight
+ rotate: false
+ xy: 1022, 360
+ size: 32, 30
+ orig: 32, 30
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Rock of Gibraltar
+ rotate: false
+ xy: 1056, 358
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Sheep
+ rotate: false
+ xy: 1158, 316
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Silk
+ rotate: false
+ xy: 818, 399
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Silver
+ rotate: false
+ xy: 852, 396
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Snow
+ rotate: false
+ xy: 954, 391
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Spices
+ rotate: false
+ xy: 852, 366
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Stone
+ rotate: false
+ xy: 886, 363
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Sugar
+ rotate: false
+ xy: 954, 361
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra
+ rotate: false
+ xy: 988, 330
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+City
+ rotate: false
+ xy: 1022, 323
+ size: 32, 35
+ orig: 32, 35
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Fallout
+ rotate: false
+ xy: 1056, 328
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Forest
+ rotate: false
+ xy: 1090, 305
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Forest+Camp
+ rotate: false
+ xy: 1124, 298
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Forest+Camp+Deer
+ rotate: false
+ xy: 1056, 294
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Forest+Camp+Furs
+ rotate: false
+ xy: 1158, 282
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Forest+Lumber mill
+ rotate: false
+ xy: 1090, 271
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Tundra+Trading post
+ rotate: false
+ xy: 1124, 268
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Uranium
+ rotate: false
+ xy: 818, 309
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Whales
+ rotate: false
+ xy: 954, 303
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Wheat
+ rotate: false
+ xy: 988, 300
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Tiles/Wine
+ rotate: false
+ xy: 1022, 293
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/TopBorder
+ rotate: false
+ xy: 886, 333
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Anti-Aircraft Gun
+ rotate: false
+ xy: 412, 22
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Anti-Tank Gun
+ rotate: false
+ xy: 512, 228
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Archer
+ rotate: false
+ xy: 1126, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Artillery
+ rotate: false
+ xy: 1490, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Ballista
+ rotate: false
+ xy: 750, 432
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Battleship
+ rotate: false
+ xy: 1490, 914
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Berserker
+ rotate: false
+ xy: 1524, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Bowman
+ rotate: false
+ xy: 872, 473
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Brute
+ rotate: false
+ xy: 784, 432
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Camel Archer
+ rotate: false
+ xy: 480, 22
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Cannon
+ rotate: false
+ xy: 1524, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Caravel
+ rotate: false
+ xy: 1558, 944
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Carrier
+ rotate: false
+ xy: 1228, 840
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Catapult
+ rotate: false
+ xy: 1558, 914
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Cavalry
+ rotate: false
+ xy: 1626, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Chariot Archer
+ rotate: false
+ xy: 1694, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Chu-Ko-Nu
+ rotate: false
+ xy: 1728, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/CivilianLandUnit
+ rotate: false
+ xy: 1864, 942
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Companion Cavalry
+ rotate: false
+ xy: 1262, 840
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Conquistador
+ rotate: false
+ xy: 1592, 914
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Cossack
+ rotate: false
+ xy: 1626, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Crossbowman
+ rotate: false
+ xy: 1296, 838
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Cruiser
+ rotate: false
+ xy: 1626, 884
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Destroyer
+ rotate: false
+ xy: 1762, 907
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Foreign Legion
+ rotate: false
+ xy: 1966, 912
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Frigate
+ rotate: false
+ xy: 906, 485
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Galleass
+ rotate: false
+ xy: 940, 489
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Galley
+ rotate: false
+ xy: 974, 519
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Gatling Gun
+ rotate: false
+ xy: 974, 489
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Machine Gun
+ rotate: false
+ xy: 974, 489
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Great Artist
+ rotate: false
+ xy: 2000, 926
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Great Engineer
+ rotate: false
+ xy: 2000, 866
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Worker
+ rotate: false
+ xy: 2000, 866
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Great General
+ rotate: false
+ xy: 2000, 836
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Great Merchant
+ rotate: false
+ xy: 1966, 818
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Settler
+ rotate: false
+ xy: 1966, 818
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Great Scientist
+ rotate: false
+ xy: 2000, 806
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Great War Infantry
+ rotate: false
+ xy: 906, 455
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Infantry
+ rotate: false
+ xy: 906, 455
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Hoplite
+ rotate: false
+ xy: 1162, 774
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Horseman
+ rotate: false
+ xy: 1128, 693
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Hwach'a
+ rotate: false
+ xy: 1128, 663
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Ironclad
+ rotate: false
+ xy: 1196, 810
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Jaguar
+ rotate: false
+ xy: 1196, 750
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Janissary
+ rotate: false
+ xy: 1196, 720
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Keshik
+ rotate: false
+ xy: 1196, 692
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Khan
+ rotate: false
+ xy: 1230, 812
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Knight
+ rotate: false
+ xy: 1230, 782
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Lancer
+ rotate: false
+ xy: 1130, 633
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/LandUnit
+ rotate: false
+ xy: 1130, 603
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Warrior
+ rotate: false
+ xy: 1130, 603
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Landship
+ rotate: false
+ xy: 1130, 535
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Landsknecht
+ rotate: false
+ xy: 1230, 685
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Legion
+ rotate: false
+ xy: 1196, 662
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Longbowman
+ rotate: false
+ xy: 1230, 655
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Longswordsman
+ rotate: false
+ xy: 1830, 818
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Mandekalu Cavalry
+ rotate: false
+ xy: 1130, 507
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Maori Warrior
+ rotate: false
+ xy: 1864, 813
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Marine
+ rotate: false
+ xy: 1932, 813
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Mechanized Infantry
+ rotate: false
+ xy: 1966, 790
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Minuteman
+ rotate: false
+ xy: 514, 198
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Mohawk Warrior
+ rotate: false
+ xy: 548, 198
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Musketeer
+ rotate: false
+ xy: 752, 402
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Musketman
+ rotate: false
+ xy: 718, 364
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Naresuan's Elephant
+ rotate: false
+ xy: 752, 374
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Norwegian Ski Infantry
+ rotate: false
+ xy: 720, 334
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Panzer
+ rotate: false
+ xy: 754, 256
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Paratrooper
+ rotate: false
+ xy: 754, 226
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Persian Immortal
+ rotate: false
+ xy: 1022, 429
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Pikeman
+ rotate: false
+ xy: 1056, 429
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Rifleman
+ rotate: false
+ xy: 1830, 788
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Rocket Artillery
+ rotate: false
+ xy: 1090, 339
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Scout
+ rotate: false
+ xy: 1124, 332
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Ship of the Line
+ rotate: false
+ xy: 784, 198
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Sipahi
+ rotate: false
+ xy: 886, 393
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Slinger
+ rotate: false
+ xy: 920, 391
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Spearman
+ rotate: false
+ xy: 818, 369
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Submarine
+ rotate: false
+ xy: 920, 363
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Swordsman
+ rotate: false
+ xy: 988, 360
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Tank
+ rotate: false
+ xy: 818, 339
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Tercio
+ rotate: false
+ xy: 852, 336
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Trebuchet
+ rotate: false
+ xy: 920, 333
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Trireme
+ rotate: false
+ xy: 954, 333
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Turtle Ship
+ rotate: false
+ xy: 1158, 254
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/War Chariot
+ rotate: false
+ xy: 852, 306
+ size: 32, 28
+ orig: 32, 28
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/War Elephant
+ rotate: false
+ xy: 886, 305
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/WaterUnit
+ rotate: false
+ xy: 920, 305
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/Units/Work Boats
+ rotate: false
+ xy: 788, 226
+ size: 32, 26
+ orig: 32, 26
+ offset: 0, 0
+ index: -1
+TileSets/FantasyHex/road
+ rotate: false
+ xy: 920, 807
+ size: 61, 11
+ orig: 61, 11
+ offset: 0, 0
+ index: -1
+TileSets/Default/road
+ rotate: false
+ xy: 920, 807
+ size: 61, 11
+ orig: 61, 11
+ offset: 0, 0
+ index: -1
+UnitIcons/Scout
+ rotate: false
+ xy: 2, 820
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Settler
+ rotate: false
+ xy: 2, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Ship of the Line
+ rotate: false
+ xy: 2, 616
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Sipahi
+ rotate: false
+ xy: 2, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Spearman
+ rotate: false
+ xy: 206, 616
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Stealth Bomber
+ rotate: false
+ xy: 206, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Submarine
+ rotate: false
+ xy: 308, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Swordsman
+ rotate: false
+ xy: 512, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Tank
+ rotate: false
+ xy: 2, 106
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Tercio
+ rotate: false
+ xy: 206, 310
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Trebuchet
+ rotate: false
+ xy: 614, 616
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Triplane
+ rotate: false
+ xy: 716, 718
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Trireme
+ rotate: false
+ xy: 818, 819
+ size: 100, 101
+ orig: 100, 101
+ offset: 0, 0
+ index: -1
+UnitIcons/Turtle Ship
+ rotate: false
+ xy: 920, 922
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/War Chariot
+ rotate: false
+ xy: 512, 412
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/War Elephant
+ rotate: false
+ xy: 614, 514
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Warrior
+ rotate: false
+ xy: 716, 616
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Work Boats
+ rotate: false
+ xy: 410, 208
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
+UnitIcons/Worker
+ rotate: false
+ xy: 512, 310
+ size: 100, 100
+ orig: 100, 100
+ offset: 0, 0
+ index: -1
UnitIcons/Zero
rotate: false
- xy: 410, 309
+ xy: 818, 615
size: 100, 100
orig: 100, 100
offset: 0, 0
index: -1
UnitPromotionIcons/Accuracy
rotate: false
- xy: 614, 564
+ xy: 1022, 870
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Air Repair
rotate: false
- xy: 716, 666
+ xy: 1124, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Ambush
rotate: false
- xy: 920, 870
+ xy: 308, 2
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Armor Plating
rotate: false
- xy: 206, 54
+ xy: 512, 258
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Barrage
rotate: false
- xy: 308, 156
+ xy: 716, 462
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Blitz
rotate: false
- xy: 410, 257
+ xy: 818, 563
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Boarding Party
rotate: false
- xy: 512, 449
+ xy: 920, 755
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Bombardment
rotate: false
- xy: 1074, 972
+ xy: 1176, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Charge
rotate: false
- xy: 512, 397
+ xy: 920, 703
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Coastal Raider
rotate: false
- xy: 1178, 972
+ xy: 1280, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Cover
rotate: false
- xy: 1334, 972
+ xy: 1436, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
PolicyIcons/Discipline
rotate: false
- xy: 1334, 972
+ xy: 1436, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
StatIcons/Strength
rotate: false
- xy: 1334, 972
+ xy: 1436, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Drill
rotate: false
- xy: 1490, 972
+ xy: 1592, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Evasion
rotate: false
- xy: 1594, 972
+ xy: 1696, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Extended Range
rotate: false
- xy: 1646, 972
+ xy: 1748, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Operational Range
rotate: false
- xy: 1646, 972
+ xy: 1748, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Flight Deck
rotate: false
- xy: 1750, 972
+ xy: 1852, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Formation
rotate: false
- xy: 1802, 972
+ xy: 1904, 972
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Haka War Dance
rotate: false
- xy: 614, 512
+ xy: 1074, 818
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Heal Instantly
rotate: false
- xy: 666, 564
+ xy: 360, 54
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Indirect Fire
rotate: false
- xy: 768, 666
+ xy: 462, 156
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Interception
rotate: false
- xy: 972, 870
+ xy: 666, 360
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Logistics
rotate: false
- xy: 360, 156
+ xy: 922, 599
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/March
rotate: false
- xy: 514, 293
+ xy: 972, 755
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Medic
rotate: false
- xy: 514, 241
+ xy: 972, 703
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Mobility
rotate: false
- xy: 616, 460
+ xy: 1024, 662
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Rejuvenation
rotate: false
- xy: 412, 153
+ xy: 412, 52
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Scouting
rotate: false
- xy: 872, 664
+ xy: 616, 256
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Sentry
rotate: false
- xy: 872, 664
+ xy: 616, 256
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Shock
rotate: false
- xy: 1076, 920
+ xy: 668, 256
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Siege
rotate: false
- xy: 1128, 920
+ xy: 1126, 920
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Sortie
rotate: false
- xy: 1180, 920
+ xy: 1126, 868
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Targeting
rotate: false
- xy: 1336, 920
+ xy: 1230, 920
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Targeting I (air)
rotate: false
- xy: 1336, 920
+ xy: 1230, 920
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Volley
rotate: false
- xy: 1648, 920
+ xy: 1386, 920
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Wolfpack
rotate: false
- xy: 1752, 920
+ xy: 1438, 920
size: 50, 50
orig: 50, 50
offset: 0, 0
index: -1
UnitPromotionIcons/Woodsman
rotate: false
- xy: 1804, 920
+ xy: 1438, 868
size: 50, 50
orig: 50, 50
offset: 0, 0
diff --git a/android/assets/game.png b/android/assets/game.png
index 586317b8..e360a238 100644
Binary files a/android/assets/game.png and b/android/assets/game.png differ
diff --git a/android/assets/game2.png b/android/assets/game2.png
index eb334725..32e917e7 100644
Binary files a/android/assets/game2.png and b/android/assets/game2.png differ
diff --git a/android/assets/jsons/Terrains.json b/android/assets/jsons/Terrains.json
index 4d2ea8fb..56666bbc 100644
--- a/android/assets/jsons/Terrains.json
+++ b/android/assets/jsons/Terrains.json
@@ -68,7 +68,6 @@
"impassable": true,
"RGB": [89, 45, 0]
},
- /*
{
"name": "Snow",
"type": "Land",
@@ -76,7 +75,6 @@
"defenceBonus": -0.1,
"RGB": [153, 255, 255]
},
- */
// Terrain features
{
@@ -139,6 +137,21 @@
"defenceBonus": -0.1,
"occursOn": ["Desert"]
},
+ {
+ "name": "Ice",
+ "type": "TerrainFeature",
+ "impassable": true,
+ "overrideStats": true,
+ "occursOn": ["Ocean", "Coast"]
+ },
+ {
+ "name": "Atoll",
+ "type": "TerrainFeature",
+ "movementCost": 1,
+ "food": 1,
+ "production": 1,
+ "occursOn": ["Coast"]
+ },
// Natural Wonders
{
diff --git a/android/assets/jsons/TileResources.json b/android/assets/jsons/TileResources.json
index daf86fd8..0fdfb43a 100644
--- a/android/assets/jsons/TileResources.json
+++ b/android/assets/jsons/TileResources.json
@@ -48,7 +48,7 @@
{
"name": "Stone",
"resourceType": "Bonus",
- "terrainsCanBeFoundOn": ["Plains","Desert"],
+ "terrainsCanBeFoundOn": ["Plains","Desert","Snow"],
"production": 1,
"improvement": "Quarry",
"improvementStats": {"production": 1},
diff --git a/android/assets/jsons/translations/Italian.properties b/android/assets/jsons/translations/Italian.properties
index 278fbf21..3bb48245 100644
--- a/android/assets/jsons/translations/Italian.properties
+++ b/android/assets/jsons/translations/Italian.properties
@@ -537,11 +537,11 @@ Hide advanced settings = Nascondi avanzate
Map Height = Altezza mappa
Temperature extremeness = Estremità temperatura
Resource richness = Abbondanza risorse
-Terrain Features richness = Abbondanza caratteristiche terrene
+Vegetation richness = Abbondanza vegetazione
+Rare features richness = Abbondanza caratteristiche terrene
Max Coast extension = Estensione delle coste
Biome areas extension = Estensioni biomi
-Water percent = Percentuale d'acqua
-Land percent = Percentuale terrestre
+Water level = Livello dell'acqua
Reset to default = Ripristina default
HIGHLY EXPERIMENTAL - YOU HAVE BEEN WARNED! = IN FASE SPERIMENTALE - TI ABBIAMO AVVERTITO!
@@ -1360,6 +1360,8 @@ Coast = Costa
Ocean = Oceano
Flood plains = Pianure allagate
Impassible = Inaccessibile
+Atoll = Atollo
+Ice = Ghiaccio
# Natural Wonders
diff --git a/android/assets/jsons/translations/template.properties b/android/assets/jsons/translations/template.properties
index 22d0ba9a..846c6b23 100644
--- a/android/assets/jsons/translations/template.properties
+++ b/android/assets/jsons/translations/template.properties
@@ -535,11 +535,11 @@ Hide advanced settings =
Map Height =
Temperature extremeness =
Resource richness =
-Terrain Features richness =
+Vegetation richness =
+Rare features richness =
Max Coast extension =
Biome areas extension =
-Water percent =
-Land percent =
+Water level =
Reset to default =
HIGHLY EXPERIMENTAL - YOU HAVE BEEN WARNED! =
@@ -1358,6 +1358,8 @@ Coast =
Ocean =
Flood plains =
Impassible =
+Atoll =
+Ice =
# Natural Wonders
diff --git a/core/src/com/unciv/Constants.kt b/core/src/com/unciv/Constants.kt
index 577f736f..a937a9d5 100644
--- a/core/src/com/unciv/Constants.kt
+++ b/core/src/com/unciv/Constants.kt
@@ -1,51 +1,55 @@
package com.unciv
-class Constants{
- companion object {
- const val worker = "Worker"
- const val settler = "Settler"
- const val greatGeneral = "Great General"
+object Constants {
+ const val worker = "Worker"
+ const val settler = "Settler"
+ const val greatGeneral = "Great General"
- const val ocean="Ocean"
- const val mountain="Mountain"
- const val forest = "Forest"
- const val jungle = "Jungle"
- const val hill = "Hill"
- const val coast = "Coast"
- const val plains = "Plains"
- const val lakes = "Lakes"
- const val desert = "Desert"
- const val grassland = "Grassland"
- const val tundra = "Tundra"
+ const val ocean = "Ocean"
+ const val coast = "Coast"
+ const val mountain = "Mountain"
+ const val hill = "Hill"
+ const val plains = "Plains"
+ const val lakes = "Lakes"
+ const val desert = "Desert"
+ const val grassland = "Grassland"
+ const val tundra = "Tundra"
+ const val snow = "Snow"
- const val marsh = "Marsh"
+ const val forest = "Forest"
+ const val jungle = "Jungle"
- const val barringerCrater = "Barringer Crater"
- const val grandMesa = "Grand Mesa"
- const val greatBarrierReef = "Great Barrier Reef"
- const val krakatoa = "Krakatoa"
- const val mountFuji = "Mount Fuji"
- const val oldFaithful = "Old Faithful"
- const val rockOfGibraltar = "Rock of Gibraltar"
- const val cerroDePotosi = "Cerro de Potosi"
- const val elDorado = "El Dorado"
- const val fountainOfYouth = "Fountain of Youth"
+ const val marsh = "Marsh"
+ const val oasis = "Oasis"
+ const val atoll = "Atoll"
+ const val ice = "Ice"
+ val vegetation = arrayOf(forest, jungle)
+ val sea = arrayOf(ocean, coast)
- const val barbarianEncampment = "Barbarian encampment"
- const val ancientRuins = "Ancient ruins"
+ const val barringerCrater = "Barringer Crater"
+ const val grandMesa = "Grand Mesa"
+ const val greatBarrierReef = "Great Barrier Reef"
+ const val krakatoa = "Krakatoa"
+ const val mountFuji = "Mount Fuji"
+ const val oldFaithful = "Old Faithful"
+ const val rockOfGibraltar = "Rock of Gibraltar"
+ const val cerroDePotosi = "Cerro de Potosi"
+ const val elDorado = "El Dorado"
+ const val fountainOfYouth = "Fountain of Youth"
- const val peaceTreaty = "Peace Treaty"
- const val researchAgreement = "Research Agreement"
- const val openBorders = "Open Borders"
- const val random = "Random"
- val greatImprovements = listOf("Academy", "Landmark", "Manufactory", "Customs house")
+ const val barbarianEncampment = "Barbarian encampment"
+ const val ancientRuins = "Ancient ruins"
- val unitActionSetUp = "Set Up"
- val unitActionSleep = "Sleep"
- val unitActionSleepUntilHealed = "Sleep until healed"
- val unitActionAutomation = "Automate"
- val unitActionExplore = "Explore"
- val futureTech = "Future Tech"
+ const val peaceTreaty = "Peace Treaty"
+ const val researchAgreement = "Research Agreement"
+ const val openBorders = "Open Borders"
+ const val random = "Random"
+ val greatImprovements = listOf("Academy", "Landmark", "Manufactory", "Customs house")
- }
+ val unitActionSetUp = "Set Up"
+ val unitActionSleep = "Sleep"
+ val unitActionSleepUntilHealed = "Sleep until healed"
+ val unitActionAutomation = "Automate"
+ val unitActionExplore = "Explore"
+ val futureTech = "Future Tech"
}
\ No newline at end of file
diff --git a/core/src/com/unciv/logic/map/MapGenerator.kt b/core/src/com/unciv/logic/map/MapGenerator.kt
index e404185c..bcdf633c 100644
--- a/core/src/com/unciv/logic/map/MapGenerator.kt
+++ b/core/src/com/unciv/logic/map/MapGenerator.kt
@@ -34,13 +34,15 @@ class MapGenerator(val ruleset: Ruleset) {
seedRNG(seed)
generateLand(map)
- divideIntoBiomes(map)
+ raiseMountainsAndHills(map)
+ applyHumidityAndTemperature(map)
spawnLakesAndCoasts(map)
- randomizeTiles(map)
+ spawnVegetation(map)
+ spawnRareFeatures(map)
+ spawnIce(map)
spreadResources(map)
spreadAncientRuins(map)
spawnNaturalWonders(map)
-
return map
}
@@ -94,120 +96,6 @@ class MapGenerator(val ruleset: Ruleset) {
}
}
- private fun randomizeTiles(tileMap: TileMap) {
-
- for (tile in tileMap.values) {
- if (tile.getBaseTerrain().type == TerrainType.Land && RNG.nextDouble() < tileMap.mapParameters.mountainProbability) {
- tile.baseTerrain = Constants.mountain
- tile.setTransients()
- }
- addRandomTerrainFeature(tile, tileMap.mapParameters)
- }
- }
-
- private fun divideIntoBiomes(tileMap: TileMap) {
- val averageTilesPerArea = tileMap.mapParameters.tilesPerBiomeArea
- val waterPercent = tileMap.mapParameters.waterProbability
-
- val maxLatitude = tileMap.values.map { abs(HexMath.getLatitude(it.position)) }.max()!!
-
- val areas = ArrayList()
-
- val terrains = ruleset.terrains.values
- .filter { it.type === TerrainType.Land && it.name != Constants.lakes && it.name != Constants.mountain }
-
- // So we know it's not chosen
- for (tile in tileMap.values.filter { it.baseTerrain == Constants.grassland })
- tile.baseTerrain = ""
-
- while (tileMap.values.any { it.baseTerrain == "" }) // the world could be split into lots off tiny islands, and every island deserves land types
- {
- val emptyTiles = tileMap.values.filter { it.baseTerrain == "" }.toMutableList()
- val numberOfSeeds = ceil(emptyTiles.size / averageTilesPerArea.toFloat()).toInt()
-
-
- for (i in 0 until numberOfSeeds) {
- var terrain = if (RNG.nextDouble() < waterPercent) Constants.ocean
- else terrains.random(RNG).name
-
- val tile = emptyTiles.random(RNG)
-
- val desertBand = maxLatitude * 0.5 * tileMap.mapParameters.temperatureExtremeness
- val tundraBand = maxLatitude * (1 - 0.5 * tileMap.mapParameters.temperatureExtremeness)
-
- if (abs(HexMath.getLatitude(tile.position)) < desertBand) {
-
- if (terrain in arrayOf(Constants.grassland, Constants.tundra))
- terrain = Constants.desert
-
- } else if (abs(HexMath.getLatitude(tile.position)) > tundraBand) {
-
- if (terrain in arrayOf(Constants.grassland, Constants.plains, Constants.desert, Constants.ocean))
- terrain = Constants.tundra
-
- } else {
- if (terrain == Constants.tundra) terrain = Constants.plains
- else if (terrain == Constants.desert) terrain = Constants.grassland
- }
-
- val area = Area(terrain)
- emptyTiles -= tile
- area.addTile(tile)
- areas += area
- }
-
- expandAreas(areas)
- expandAreas(areas)
- }
-
- for (tile in tileMap.values)
- tile.setTransients()
- }
-
- private fun expandAreas(areas: ArrayList) {
- val expandableAreas = ArrayList(areas)
-
- while (expandableAreas.isNotEmpty()) {
- val areaToExpand = expandableAreas.random(RNG)
- if (areaToExpand.tiles.size >= 20) {
- expandableAreas -= areaToExpand
- continue
- }
-
- val availableExpansionTiles = areaToExpand.tiles
- .flatMap { it.neighbors }.distinct()
- .filter { it.baseTerrain == "" }
-
- if (availableExpansionTiles.isEmpty()) expandableAreas -= areaToExpand
- else {
- val expansionTile = availableExpansionTiles.random(RNG)
- areaToExpand.addTile(expansionTile)
-
- val areasToJoin = areas.filter {
- it.terrain == areaToExpand.terrain
- && it != areaToExpand
- && it.tiles.any { tile -> tile in expansionTile.neighbors }
- }
- for (area in areasToJoin) {
- areaToExpand.tiles += area.tiles
- areas.remove(area)
- expandableAreas.remove(area)
- }
- }
- }
- }
-
- private fun addRandomTerrainFeature(tileInfo: TileInfo, mapParameters: MapParameters) {
- if (tileInfo.getBaseTerrain().canHaveOverlay && RNG.nextDouble() < mapParameters.terrainFeatureRichness) {
- val secondaryTerrains = ruleset.terrains.values
- .filter { it.type === TerrainType.TerrainFeature &&
- it.occursOn != null &&
- it.occursOn.contains(tileInfo.baseTerrain) }
- if (secondaryTerrains.any())
- tileInfo.terrainFeature = secondaryTerrains.random(RNG).name
- }
- }
-
private fun spreadAncientRuins(map: TileMap) {
if(map.mapParameters.noRuins)
return
@@ -218,15 +106,15 @@ class MapGenerator(val ruleset: Ruleset) {
tile.improvement = Constants.ancientRuins
}
- private fun spreadResources(mapToReturn: TileMap) {
- val distance = mapToReturn.mapParameters.size.radius
- for (tile in mapToReturn.values)
+ private fun spreadResources(tileMap: TileMap) {
+ val distance = tileMap.mapParameters.size.radius
+ for (tile in tileMap.values)
if (tile.resource != null)
tile.resource = null
- spreadStrategicResources(mapToReturn, distance)
- spreadResource(mapToReturn, distance, ResourceType.Luxury)
- spreadResource(mapToReturn, distance, ResourceType.Bonus)
+ spreadStrategicResources(tileMap, distance)
+ spreadResources(tileMap, distance, ResourceType.Luxury)
+ spreadResources(tileMap, distance, ResourceType.Bonus)
}
//region natural-wonders
@@ -264,16 +152,16 @@ class MapGenerator(val ruleset: Ruleset) {
for (wonder in toBeSpawned) {
when (wonder.name) {
- Constants.barringerCrater -> spawnBarringerCrater(tileMap, ruleset)
- Constants.mountFuji -> spawnMountFuji(tileMap, ruleset)
- Constants.grandMesa -> spawnGrandMesa(tileMap, ruleset)
- Constants.greatBarrierReef -> spawnGreatBarrierReef(tileMap, ruleset, mapRadius)
- Constants.krakatoa -> spawnKrakatoa(tileMap, ruleset)
- Constants.rockOfGibraltar -> spawnRockOfGibraltar(tileMap, ruleset)
- Constants.oldFaithful -> spawnOldFaithful(tileMap, ruleset)
- Constants.cerroDePotosi -> spawnCerroDePotosi(tileMap, ruleset)
- Constants.elDorado -> spawnElDorado(tileMap, ruleset)
- Constants.fountainOfYouth -> spawnFountainOfYouth(tileMap, ruleset)
+ Constants.barringerCrater -> spawnBarringerCrater(tileMap)
+ Constants.mountFuji -> spawnMountFuji(tileMap)
+ Constants.grandMesa -> spawnGrandMesa(tileMap)
+ Constants.greatBarrierReef -> spawnGreatBarrierReef(tileMap)
+ Constants.krakatoa -> spawnKrakatoa(tileMap)
+ Constants.rockOfGibraltar -> spawnRockOfGibraltar(tileMap)
+ Constants.oldFaithful -> spawnOldFaithful(tileMap)
+ Constants.cerroDePotosi -> spawnCerroDePotosi(tileMap)
+ Constants.elDorado -> spawnElDorado(tileMap)
+ Constants.fountainOfYouth -> spawnFountainOfYouth(tileMap)
}
}
}
@@ -296,9 +184,9 @@ class MapGenerator(val ruleset: Ruleset) {
Must be in tundra or desert; cannot be adjacent to grassland; can be adjacent to a maximum
of 2 mountains and a maximum of 4 hills and mountains; avoids oceans; becomes mountain
*/
- private fun spawnBarringerCrater(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnBarringerCrater(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.barringerCrater]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.none { neighbor -> neighbor.getBaseTerrain().name == Constants.grassland }
&& it.neighbors.count{ neighbor -> neighbor.getBaseTerrain().name == Constants.mountain } <= 2
@@ -312,9 +200,9 @@ class MapGenerator(val ruleset: Ruleset) {
Mt. Fuji: Must be in grass or plains; cannot be adjacent to tundra, desert, marsh, or mountains;
can be adjacent to a maximum of 2 hills; becomes mountain
*/
- private fun spawnMountFuji(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnMountFuji(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.mountFuji]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.none { neighbor -> neighbor.getBaseTerrain().name == Constants.tundra }
&& it.neighbors.none { neighbor -> neighbor.getBaseTerrain().name == Constants.desert }
@@ -330,9 +218,9 @@ class MapGenerator(val ruleset: Ruleset) {
Grand Mesa: Must be in plains, desert, or tundra, and must be adjacent to at least 2 hills;
cannot be adjacent to grass; can be adjacent to a maximum of 2 mountains; avoids oceans; becomes mountain
*/
- private fun spawnGrandMesa(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnGrandMesa(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.grandMesa]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.count{ neighbor -> neighbor.getBaseTerrain().name == Constants.hill } >= 2
&& it.neighbors.none { neighbor -> neighbor.getBaseTerrain().name == Constants.grassland }
@@ -345,15 +233,13 @@ class MapGenerator(val ruleset: Ruleset) {
/*
Great Barrier Reef: Specifics currently unknown;
Assumption: at least 1 neighbour not water; no tundra; at least 1 neighbour coast; becomes coast
- TODO: investigate Great Barrier Reef placement requirements
*/
- private fun spawnGreatBarrierReef(mapToReturn: TileMap, ruleset: Ruleset, mapRadius: Int) {
+ private fun spawnGreatBarrierReef(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.greatBarrierReef]!!
- val maxLatitude = abs(HexMath.getLatitude(Vector2(mapRadius.toFloat(), mapRadius.toFloat())))
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
- && abs(HexMath.getLatitude(it.position)) > maxLatitude * 0.1
- && abs(HexMath.getLatitude(it.position)) < maxLatitude * 0.7
+ && abs(it.latitude) > tileMap.maxLatitude * 0.1
+ && abs(it.latitude) < tileMap.maxLatitude * 0.7
&& it.neighbors.all {neighbor -> neighbor.isWater}
&& it.neighbors.any {neighbor ->
neighbor.resource == null && neighbor.improvement == null
@@ -378,13 +264,13 @@ class MapGenerator(val ruleset: Ruleset) {
/*
Krakatoa: Must spawn in the ocean next to at least 1 shallow water tile; cannot be adjacent
to ice; changes tiles around it to shallow water; mountain
- TODO: cannot be adjacent to ice
*/
- private fun spawnKrakatoa(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnKrakatoa(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.krakatoa]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.any { neighbor -> neighbor.getBaseTerrain().name == Constants.coast }
+ && it.neighbors.none { neighbor -> neighbor.getLastTerrain().name == Constants.ice}
}
val location = trySpawnOnSuitableLocation(suitableLocations, wonder)
@@ -403,11 +289,10 @@ class MapGenerator(val ruleset: Ruleset) {
Rock of Gibraltar: Specifics currently unknown
Assumption: spawn on grassland, at least 1 coast and 1 mountain adjacent;
turn neighbours into coast)
- TODO: investigate Rock of Gibraltar placement requirements
*/
- private fun spawnRockOfGibraltar(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnRockOfGibraltar(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.rockOfGibraltar]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.any { neighbor -> neighbor.getBaseTerrain().name == Constants.coast }
&& it.neighbors.count { neighbor -> neighbor.getBaseTerrain().name == Constants.mountain } == 1
@@ -432,9 +317,9 @@ class MapGenerator(val ruleset: Ruleset) {
more than 4 mountains, and cannot be adjacent to more than 3 desert or 3 tundra tiles;
avoids oceans; becomes mountain
*/
- private fun spawnOldFaithful(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnOldFaithful(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.oldFaithful]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.count { neighbor -> neighbor.getBaseTerrain().name == Constants.mountain } <= 4
&& it.neighbors.count { neighbor -> neighbor.getBaseTerrain().name == Constants.mountain ||
@@ -449,9 +334,9 @@ class MapGenerator(val ruleset: Ruleset) {
/*
Cerro de Potosi: Must be adjacent to at least 1 hill; avoids oceans; becomes mountain
*/
- private fun spawnCerroDePotosi(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnCerroDePotosi(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.cerroDePotosi]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.any { neighbor -> neighbor.getBaseTerrain().name == Constants.hill }
}
@@ -462,9 +347,9 @@ class MapGenerator(val ruleset: Ruleset) {
/*
El Dorado: Must be next to at least 1 jungle tile; avoids oceans; becomes flatland plains
*/
- private fun spawnElDorado(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnElDorado(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.elDorado]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name)
&& it.neighbors.any { neighbor -> neighbor.getLastTerrain().name == Constants.jungle }
}
@@ -475,9 +360,9 @@ class MapGenerator(val ruleset: Ruleset) {
/*
Fountain of Youth: Avoids oceans; becomes flatland plains
*/
- private fun spawnFountainOfYouth(mapToReturn: TileMap, ruleset: Ruleset) {
+ private fun spawnFountainOfYouth(tileMap: TileMap) {
val wonder = ruleset.terrains[Constants.fountainOfYouth]!!
- val suitableLocations = mapToReturn.values.filter { it.resource == null && it.improvement == null
+ val suitableLocations = tileMap.values.filter { it.resource == null && it.improvement == null
&& wonder.occursOn!!.contains(it.getLastTerrain().name) }
trySpawnOnSuitableLocation(suitableLocations, wonder)
@@ -485,30 +370,32 @@ class MapGenerator(val ruleset: Ruleset) {
//endregion
// Here, we need each specific resource to be spread over the map - it matters less if specific resources are near each other
- private fun spreadStrategicResources(mapToReturn: TileMap, distance: Int) {
- val resourcesOfType = ruleset.tileResources.values.filter { it.resourceType == ResourceType.Strategic }
- val totalNumberOfResources = mapToReturn.values.count { it.isLand && !it.getBaseTerrain().impassable } *
- mapToReturn.mapParameters.resourceRichness
- val resourcesPerType = (totalNumberOfResources/resourcesOfType.size).toInt()
- for (resource in resourcesOfType) {
- val suitableTiles = mapToReturn.values
+ private fun spreadStrategicResources(tileMap: TileMap, distance: Int) {
+ val strategicResources = ruleset.tileResources.values.filter { it.resourceType == ResourceType.Strategic }
+ val totalNumberOfResources = tileMap.values.count { it.isLand && !it.getBaseTerrain().impassable } *
+ tileMap.mapParameters.resourceRichness
+ val resourcesPerType = (totalNumberOfResources/strategicResources.size).toInt()
+ for (resource in strategicResources) {
+ val suitableTiles = tileMap.values
.filter { it.resource == null && resource.terrainsCanBeFoundOn.contains(it.getLastTerrain().name) }
-
val locations = chooseSpreadOutLocations(resourcesPerType, suitableTiles, distance)
for (location in locations) location.resource = resource.name
}
}
- // Here, we need there to be some luxury/bonus resource - it matters less what
- private fun spreadResource(mapToReturn: TileMap, distance: Int, resourceType: ResourceType) {
+ /**
+ * Spreads resources of type [resourceType] picking locations at [distance] from each other.
+ * [MapParameters.resourceRichness] used to control how many resources to spawn.
+ */
+ private fun spreadResources(tileMap: TileMap, distance: Int, resourceType: ResourceType) {
val resourcesOfType = ruleset.tileResources.values.filter { it.resourceType == resourceType }
- val suitableTiles = mapToReturn.values
+ val suitableTiles = tileMap.values
.filter { it.resource == null && resourcesOfType.any { r -> r.terrainsCanBeFoundOn.contains(it.getLastTerrain().name) } }
- val numberOfResources = mapToReturn.values.count { it.isLand && !it.getBaseTerrain().impassable } *
- mapToReturn.mapParameters.resourceRichness
+ val numberOfResources = tileMap.values.count { it.isLand && !it.getBaseTerrain().impassable } *
+ tileMap.mapParameters.resourceRichness
val locations = chooseSpreadOutLocations(numberOfResources.toInt(), suitableTiles, distance)
val resourceToNumber = Counter()
@@ -533,10 +420,10 @@ class MapGenerator(val ruleset: Ruleset) {
// If possible, we want to equalize the base terrains upon which
// the resources are found, so we save how many have been
// found for each base terrain and try to get one from the lowerst
- val baseTerrainsToChosenTiles = HashMap()
+ val baseTerrainsToChosenTiles = HashMap()
for(tileInfo in availableTiles){
if(tileInfo.baseTerrain !in baseTerrainsToChosenTiles)
- baseTerrainsToChosenTiles.put(tileInfo.baseTerrain,0)
+ baseTerrainsToChosenTiles[tileInfo.baseTerrain] = 0
}
for (i in 1..numberOfResources) {
@@ -556,6 +443,123 @@ class MapGenerator(val ruleset: Ruleset) {
throw Exception("Couldn't choose suitable tiles for $numberOfResources resources!")
}
+ /**
+ * [MapParameters.elevationExponent] favors high elevation
+ */
+ private fun raiseMountainsAndHills(tileMap: TileMap) {
+ val elevationSeed = RNG.nextInt().toDouble()
+ tileMap.setTransients(ruleset)
+ for (tile in tileMap.values.filter { !it.isWater }) {
+ var elevation = getPerlinNoise(tile, elevationSeed, scale = 3.0)
+ elevation = abs(elevation).pow(1.0 - tileMap.mapParameters.elevationExponent.toDouble()) * elevation.sign
+
+ if (elevation <= 0.5) tile.baseTerrain = Constants.plains
+ else if (elevation <= 0.7) tile.baseTerrain = Constants.hill
+ else if (elevation <= 1.0) tile.baseTerrain = Constants.mountain
+ }
+ }
+
+ /**
+ * [MapParameters.tilesPerBiomeArea] to set biomes size
+ * [MapParameters.temperatureExtremeness] to favor very high and very low temperatures
+ */
+ private fun applyHumidityAndTemperature(tileMap: TileMap) {
+ val humiditySeed = RNG.nextInt().toDouble()
+ val temperatureSeed = RNG.nextInt().toDouble()
+
+ tileMap.setTransients(ruleset)
+
+ val scale = tileMap.mapParameters.tilesPerBiomeArea.toDouble()
+
+ for (tile in tileMap.values) {
+ if (tile.isWater || tile.baseTerrain in arrayOf(Constants.mountain, Constants.hill))
+ continue
+
+ val humidity = (getPerlinNoise(tile, humiditySeed, scale = scale, nOctaves = 1) + 1.0) / 2.0
+
+ val randomTemperature = getPerlinNoise(tile, temperatureSeed, scale = scale, nOctaves = 1)
+ val latitudeTemperature = 1.0 - 2.0 * abs(tile.latitude) / tileMap.maxLatitude
+ var temperature = ((5.0 * latitudeTemperature + randomTemperature) / 6.0)
+ temperature = abs(temperature).pow(1.0 - tileMap.mapParameters.temperatureExtremeness) * temperature.sign
+
+ tile.baseTerrain = when {
+ temperature < -0.4 -> {
+ when {
+ humidity < 0.5 -> Constants.snow
+ else -> Constants.tundra
+ }
+ }
+ temperature < 0.8 -> {
+ when {
+ humidity < 0.5 -> Constants.plains
+ else -> Constants.grassland
+ }
+ }
+ temperature <= 1.0 -> {
+ when {
+ humidity < 0.7 -> Constants.desert
+ else -> Constants.plains
+ }
+ }
+ else -> {
+ println(temperature)
+ Constants.lakes
+ }
+
+ }
+ }
+ }
+
+ /**
+ * [MapParameters.vegetationOccurrance] is the threshold for vegetation spawn
+ */
+ private fun spawnVegetation(tileMap: TileMap) {
+ val vegetationSeed = RNG.nextInt().toDouble()
+ val candidateTerrains = Constants.vegetation.flatMap{ ruleset.terrains[it]!!.occursOn!! }
+ for (tile in tileMap.values.asSequence().filter { it.baseTerrain in candidateTerrains && it.terrainFeature == null}) {
+ val vegetation = (getPerlinNoise(tile, vegetationSeed, scale = 3.0, nOctaves = 1) + 1.0) / 2.0
+
+ if (vegetation <= tileMap.mapParameters.vegetationRichness)
+ tile.terrainFeature = Constants.vegetation.filter { ruleset.terrains[it]!!.occursOn!!.contains(tile.baseTerrain) }.random(RNG)
+ }
+ }
+ /**
+ * [MapParameters.rareFeaturesProbability] is the probability of spawning a rare feature
+ */
+ private fun spawnRareFeatures(tileMap: TileMap) {
+ val rareFeatures = ruleset.terrains.values.filter {
+ it.type == TerrainType.TerrainFeature &&
+ it.name !in Constants.vegetation &&
+ it.name != Constants.ice
+ }
+ for (tile in tileMap.values.asSequence().filter { it.terrainFeature == null }) {
+ if (RNG.nextDouble() <= tileMap.mapParameters.rareFeaturesRichness) {
+ val possibleFeatures = rareFeatures.filter { it.occursOn != null && it.occursOn.contains(tile.baseTerrain) }
+ if (possibleFeatures.any())
+ tile.terrainFeature = possibleFeatures.random(RNG).name
+ }
+ }
+ }
+
+ /**
+ * [MapParameters.temperatureExtremeness] as in [applyHumidityAndTemperature]
+ */
+ private fun spawnIce(tileMap: TileMap) {
+ tileMap.setTransients(ruleset)
+ val temperatureSeed = RNG.nextInt().toDouble()
+ for (tile in tileMap.values) {
+ if (tile.baseTerrain !in Constants.sea || tile.terrainFeature != null)
+ continue
+
+ val randomTemperature = getPerlinNoise(tile, temperatureSeed, scale = tileMap.mapParameters.tilesPerBiomeArea.toDouble(), nOctaves = 1)
+ val latitudeTemperature = 1.0 - 2.0 * abs(tile.latitude) / tileMap.maxLatitude
+ var temperature = ((latitudeTemperature + randomTemperature) / 2.0)
+ temperature = abs(temperature).pow(1.0 - tileMap.mapParameters.temperatureExtremeness) * temperature.sign
+ if (temperature < -0.8)
+ tile.terrainFeature = Constants.ice
+ }
+ }
+
companion object MapLandmassGenerator {
var RNG = Random(42)
@@ -564,9 +568,16 @@ class MapGenerator(val ruleset: Ruleset) {
MapType.pangaea -> createPangea(tileMap)
MapType.continents -> createTwoContinents(tileMap)
MapType.perlin -> createPerlin(tileMap)
+ MapType.archipelago -> createArchipelago(tileMap)
MapType.default -> generateLandCellularAutomata(tileMap)
}
}
+ private fun spawnLandOrWater(tile: TileInfo, elevation: Double, threshold: Double) {
+ when {
+ elevation < threshold -> tile.baseTerrain = Constants.ocean
+ else -> tile.baseTerrain = Constants.grassland
+ }
+ }
private fun smooth(tileMap: TileMap) {
for (tileInfo in tileMap.values) {
@@ -585,11 +596,15 @@ class MapGenerator(val ruleset: Ruleset) {
val elevationSeed = RNG.nextInt().toDouble()
for (tile in tileMap.values) {
var elevation = getPerlinNoise(tile, elevationSeed)
+ spawnLandOrWater(tile, elevation, tileMap.mapParameters.waterThreshold.toDouble())
+ }
+ }
- when {
- elevation < 0 -> tile.baseTerrain = Constants.ocean
- else -> tile.baseTerrain = Constants.grassland
- }
+ private fun createArchipelago(tileMap: TileMap) {
+ val elevationSeed = RNG.nextInt().toDouble()
+ for (tile in tileMap.values) {
+ var elevation = getRidgedPerlinNoise(tile, elevationSeed)
+ spawnLandOrWater(tile, elevation, 0.25 + tileMap.mapParameters.waterThreshold.toDouble())
}
}
@@ -598,11 +613,7 @@ class MapGenerator(val ruleset: Ruleset) {
for (tile in tileMap.values) {
var elevation = getPerlinNoise(tile, elevationSeed)
elevation = (elevation + getCircularNoise(tile, tileMap) ) / 2.0
-
- when {
- elevation < 0 -> tile.baseTerrain = Constants.ocean
- else -> tile.baseTerrain = Constants.grassland
- }
+ spawnLandOrWater(tile, elevation, tileMap.mapParameters.waterThreshold.toDouble())
}
}
@@ -611,11 +622,7 @@ class MapGenerator(val ruleset: Ruleset) {
for (tile in tileMap.values) {
var elevation = getPerlinNoise(tile, elevationSeed)
elevation = (elevation + getTwoContinentsTransform(tile, tileMap)) / 2.0
-
- when {
- elevation < 0 -> tile.baseTerrain = Constants.ocean
- else -> tile.baseTerrain = Constants.grassland
- }
+ spawnLandOrWater(tile, elevation, tileMap.mapParameters.waterThreshold.toDouble())
}
}
@@ -628,10 +635,9 @@ class MapGenerator(val ruleset: Ruleset) {
private fun getTwoContinentsTransform(tileInfo: TileInfo, tileMap: TileMap): Double {
val randomScale = RNG.nextDouble()
- val maxLongitude = abs(tileMap.values.map { abs(HexMath.getLongitude(it.position)) }.max()!!)
- val longitudeFactor = abs(HexMath.getLongitude(tileInfo.position))/maxLongitude
+ val longitudeFactor = abs(tileInfo.longitude) / tileMap.maxLongitude
- return min(0.0,-1.0 + (5.0 * longitudeFactor.pow(0.7f) + randomScale) / 3.0)
+ return min(0.2,-1.0 + (5.0 * longitudeFactor.pow(0.6f) + randomScale) / 3.0)
}
private fun percentualDistanceToCenter(tileInfo: TileInfo, tileMap: TileMap): Double {
@@ -644,6 +650,14 @@ class MapGenerator(val ruleset: Ruleset) {
}
}
+ /**
+ * Generates a perlin noise channel combining multiple octaves
+ *
+ * [nOctaves] is the number of octaves
+ * [persistence] is the scaling factor of octave amplitudes
+ * [lacunarity] is the scaling factor of octave frequencies
+ * [scale] is the distance the noise is observed from
+ */
private fun getPerlinNoise(tile: TileInfo, seed: Double,
nOctaves: Int = 6,
persistence: Double = 0.5,
@@ -653,6 +667,18 @@ class MapGenerator(val ruleset: Ruleset) {
return Perlin.noise3d(worldCoords.x.toDouble(), worldCoords.y.toDouble(), seed, nOctaves, persistence, lacunarity, scale)
}
+ /**
+ * Generates ridged perlin noise. As for parameters see [getPerlinNoise]
+ */
+ private fun getRidgedPerlinNoise(tile: TileInfo, seed: Double,
+ nOctaves: Int = 10,
+ persistence: Double = 0.5,
+ lacunarity: Double = 2.0,
+ scale: Double = 15.0): Double {
+ val worldCoords = HexMath.hex2WorldCoords(tile.position)
+ return Perlin.ridgedNoise3d(worldCoords.x.toDouble(), worldCoords.y.toDouble(), seed, nOctaves, persistence, lacunarity, scale)
+ }
+
// region Cellular automata
private fun generateLandCellularAutomata(tileMap: TileMap) {
val mapRadius = tileMap.mapParameters.size.radius
@@ -691,7 +717,6 @@ class MapGenerator(val ruleset: Ruleset) {
private fun getInitialTerrainCellularAutomata(tileInfo: TileInfo, mapParameters: MapParameters): TerrainType {
- val landProbability = mapParameters.landProbability
val mapRadius = mapParameters.size.radius
// default
@@ -701,18 +726,9 @@ class MapGenerator(val ruleset: Ruleset) {
if (HexMath.getDistance(Vector2.Zero, tileInfo.position) > 0.85f * mapRadius) {
if (RNG.nextDouble() < 0.2) return TerrainType.Land else return TerrainType.Water
}
- if (RNG.nextDouble() < landProbability) return TerrainType.Land else return TerrainType.Water
+ if (RNG.nextDouble() < 0.55) return TerrainType.Land else return TerrainType.Water
}
// endregion
}
}
-
-class Area(var terrain: String) {
- val tiles = ArrayList()
- fun addTile(tileInfo: TileInfo) {
- tiles += tileInfo
- tileInfo.baseTerrain = terrain
- }
-}
-
diff --git a/core/src/com/unciv/logic/map/MapParameters.kt b/core/src/com/unciv/logic/map/MapParameters.kt
index 5ad88f92..67dd36d2 100644
--- a/core/src/com/unciv/logic/map/MapParameters.kt
+++ b/core/src/com/unciv/logic/map/MapParameters.kt
@@ -17,6 +17,7 @@ object MapType {
const val pangaea = "Pangaea"
const val continents = "Continents"
const val perlin = "Perlin"
+ const val archipelago = "Archipelago"
// Cellular automata
const val default = "Default"
@@ -39,21 +40,21 @@ class MapParameters {
var seed: Long = 0
var tilesPerBiomeArea = 6
var maxCoastExtension = 2
- var mountainProbability = 0.10f
- var temperatureExtremeness = 0.30f
- var terrainFeatureRichness = 0.30f
- var resourceRichness = 0.10f
- var waterProbability = 0.05f
- var landProbability = 0.55f
+ var elevationExponent = 0.8f
+ var temperatureExtremeness = 0.6f
+ var vegetationRichness = 0.4f
+ var rareFeaturesRichness = 0.05f
+ var resourceRichness = 0.1f
+ var waterThreshold = 0f
fun resetAdvancedSettings() {
tilesPerBiomeArea = 6
maxCoastExtension = 2
- mountainProbability = 0.10f
- temperatureExtremeness = 0.30f
- terrainFeatureRichness = 0.30f
- resourceRichness = 0.10f
- waterProbability = 0.05f
- landProbability = 0.55f
+ elevationExponent = 0.8f
+ temperatureExtremeness = 0.6f
+ vegetationRichness = 0.4f
+ rareFeaturesRichness = 0.05f
+ resourceRichness = 0.1f
+ waterThreshold = 0f
}
}
\ No newline at end of file
diff --git a/core/src/com/unciv/logic/map/Perlin.kt b/core/src/com/unciv/logic/map/Perlin.kt
index 80d6c4e3..f004d3b7 100644
--- a/core/src/com/unciv/logic/map/Perlin.kt
+++ b/core/src/com/unciv/logic/map/Perlin.kt
@@ -1,6 +1,7 @@
package com.unciv.logic.map
import kotlin.math.floor
+import kotlin.math.abs
// version 1.1.3
// From https://rosettacode.org/wiki/Perlin_noise#Kotlin
@@ -54,6 +55,29 @@ object Perlin {
return total/max
}
+ fun ridgedNoise3d(x: Double, y: Double, z: Double,
+ nOctaves: Int = 3,
+ persistence: Double = 0.5,
+ lacunarity: Double = 2.0,
+ scale: Double = 10.0): Double {
+ var freq = 1.0
+ var amp = 1.0
+ var max = 0.0
+ var total = 0.0
+ for (i in 0 until nOctaves) {
+ var value = noise(
+ x * freq / scale,
+ y * freq / scale,
+ z * freq / scale)
+ value = abs(value)
+ total += amp * value
+ max += amp
+ freq *= lacunarity
+ amp *= persistence
+ }
+ return total/max
+ }
+
fun noise(x: Double, y: Double, z: Double): Double {
// Find unit cube that contains point
val xi = floor(x).toInt() and 255
diff --git a/core/src/com/unciv/logic/map/TileInfo.kt b/core/src/com/unciv/logic/map/TileInfo.kt
index 89b5ee97..6b0278e5 100644
--- a/core/src/com/unciv/logic/map/TileInfo.kt
+++ b/core/src/com/unciv/logic/map/TileInfo.kt
@@ -4,6 +4,7 @@ import com.badlogic.gdx.math.Vector2
import com.unciv.Constants
import com.unciv.UncivGame
import com.unciv.UniqueAbility
+import com.unciv.logic.HexMath
import com.unciv.logic.city.CityInfo
import com.unciv.logic.civilization.CivilizationInfo
import com.unciv.models.ruleset.Ruleset
@@ -42,6 +43,11 @@ open class TileInfo {
var hasBottomRiver = false
var hasBottomLeftRiver = false
+ val latitude: Float
+ get() = HexMath.getLatitude(position)
+ val longitude: Float
+ get() = HexMath.getLongitude(position)
+
fun clone(): TileInfo {
val toReturn = TileInfo()
if(militaryUnit!=null) toReturn.militaryUnit=militaryUnit!!.clone()
diff --git a/core/src/com/unciv/logic/map/TileMap.kt b/core/src/com/unciv/logic/map/TileMap.kt
index b97ff99f..0427f789 100644
--- a/core/src/com/unciv/logic/map/TileMap.kt
+++ b/core/src/com/unciv/logic/map/TileMap.kt
@@ -6,6 +6,7 @@ import com.unciv.logic.GameInfo
import com.unciv.logic.HexMath
import com.unciv.logic.civilization.CivilizationInfo
import com.unciv.models.ruleset.Ruleset
+import kotlin.math.abs
class TileMap {
@@ -13,25 +14,21 @@ class TileMap {
@Transient var tileMatrix = ArrayList>() // this works several times faster than a hashmap, the performance difference is really astounding
@Transient var leftX = 0
@Transient var bottomY = 0
+ @delegate:Transient val maxLatitude: Float by lazy { if (values.isEmpty()) 0f else values.map { abs(it.latitude) }.max()!! }
+ @delegate:Transient val maxLongitude: Float by lazy { if (values.isEmpty()) 0f else values.map { abs(it.longitude) }.max()!! }
+
+ var mapParameters = MapParameters()
@Deprecated("as of 2.7.10")
private var tiles = HashMap()
- var mapParameters = MapParameters()
private var tileList = ArrayList()
- constructor() // for json parsing, we need to have a default constructor
-
- fun clone(): TileMap {
- val toReturn = TileMap()
- toReturn.tileList.addAll(tileList.map { it.clone() })
- toReturn.mapParameters = mapParameters
- return toReturn
- }
-
val values: Collection
get() = tileList
+ /** for json parsing, we need to have a default constructor */
+ constructor()
/** generates an hexagonal map of given radius */
constructor(radius:Int, ruleset: Ruleset){
@@ -50,6 +47,12 @@ class TileMap {
setTransients(ruleset)
}
+ fun clone(): TileMap {
+ val toReturn = TileMap()
+ toReturn.tileList.addAll(tileList.map { it.clone() })
+ toReturn.mapParameters = mapParameters
+ return toReturn
+ }
operator fun contains(vector: Vector2): Boolean {
return contains(vector.x.toInt(), vector.y.toInt())
diff --git a/core/src/com/unciv/ui/mapeditor/MapEditorMenuPopup.kt b/core/src/com/unciv/ui/mapeditor/MapEditorMenuPopup.kt
index 5c5b6ddb..f5362385 100644
--- a/core/src/com/unciv/ui/mapeditor/MapEditorMenuPopup.kt
+++ b/core/src/com/unciv/ui/mapeditor/MapEditorMenuPopup.kt
@@ -22,6 +22,12 @@ class MapEditorMenuPopup(mapEditorScreen: MapEditorScreen): Popup(mapEditorScree
mapNameEditor.addListener{ mapEditorScreen.mapName=mapNameEditor.text; true }
add(mapNameEditor).row()
+ val newMapButton = TextButton("New map".tr(),skin)
+ newMapButton.onClick {
+ UncivGame.Current.setScreen(NewMapScreen())
+ }
+ add(newMapButton).row()
+
val clearCurrentMapButton = TextButton("Clear current map".tr(),skin)
clearCurrentMapButton.onClick {
for(tileGroup in mapEditorScreen.mapHolder.tileGroups.values)
diff --git a/core/src/com/unciv/ui/newgamescreen/MapParametersTable.kt b/core/src/com/unciv/ui/newgamescreen/MapParametersTable.kt
index 15570ce2..294ad765 100644
--- a/core/src/com/unciv/ui/newgamescreen/MapParametersTable.kt
+++ b/core/src/com/unciv/ui/newgamescreen/MapParametersTable.kt
@@ -62,6 +62,7 @@ class MapParametersTable(val mapParameters: MapParameters, val isEmptyMapAllowed
MapType.pangaea,
MapType.continents,
MapType.perlin,
+ MapType.archipelago,
if (isEmptyMapAllowed) MapType.empty else null
)
@@ -142,19 +143,19 @@ class MapParametersTable(val mapParameters: MapParameters, val isEmptyMapAllowed
}
- val averageHeightSlider = Slider(0f,1f,0.01f, false, skin).apply {
+ val elevationExponentSlider = Slider(0.5f,1f,0.01f, false, skin).apply {
addListener(object : ChangeListener() {
override fun changed(event: ChangeEvent?, actor: Actor?) {
- mapParameters.mountainProbability = this@apply.value
+ mapParameters.elevationExponent = this@apply.value
}
})
}
- averageHeightSlider.value = mapParameters.mountainProbability
+ elevationExponentSlider.value = mapParameters.elevationExponent
advancedSettingsTable.add("Map Height".toLabel()).left()
- advancedSettingsTable.add(averageHeightSlider).fillX().row()
+ advancedSettingsTable.add(elevationExponentSlider).fillX().row()
- val tempExtremeSlider = Slider(0f,1f,0.01f, false, skin).apply {
+ val tempExtremeSlider = Slider(0.4f,0.8f,0.01f, false, skin).apply {
addListener(object : ChangeListener() {
override fun changed(event: ChangeEvent?, actor: Actor?) {
mapParameters.temperatureExtremeness = this@apply.value
@@ -166,7 +167,7 @@ class MapParametersTable(val mapParameters: MapParameters, val isEmptyMapAllowed
advancedSettingsTable.add(tempExtremeSlider).fillX().row()
- val resourceRichnessSlider = Slider(0f,0.2f,0.01f, false, skin).apply {
+ val resourceRichnessSlider = Slider(0f,0.5f,0.01f, false, skin).apply {
addListener(object : ChangeListener() {
override fun changed(event: ChangeEvent?, actor: Actor?) {
mapParameters.resourceRichness = this@apply.value
@@ -177,17 +178,27 @@ class MapParametersTable(val mapParameters: MapParameters, val isEmptyMapAllowed
advancedSettingsTable.add("Resource richness".toLabel()).left()
advancedSettingsTable.add(resourceRichnessSlider).fillX().row()
-
- val terrainFeatureRichnessSlider = Slider(0f,1f,0.01f, false, skin).apply {
+ val vegetationRichnessSlider = Slider(0f,1f,0.01f, false, skin).apply {
addListener(object : ChangeListener() {
override fun changed(event: ChangeEvent?, actor: Actor?) {
- mapParameters.terrainFeatureRichness = this@apply.value
+ mapParameters.vegetationRichness = this@apply.value
}
})
}
- terrainFeatureRichnessSlider.value = mapParameters.terrainFeatureRichness
- advancedSettingsTable.add("Terrain Features richness".toLabel()).left()
- advancedSettingsTable.add(terrainFeatureRichnessSlider).fillX().row()
+ vegetationRichnessSlider.value = mapParameters.vegetationRichness
+ advancedSettingsTable.add("Vegetation richness".toLabel()).left()
+ advancedSettingsTable.add(vegetationRichnessSlider).fillX().row()
+
+ val rareFeaturesRichnessSlider = Slider(0f,0.5f,0.01f, false, skin).apply {
+ addListener(object : ChangeListener() {
+ override fun changed(event: ChangeEvent?, actor: Actor?) {
+ mapParameters.rareFeaturesRichness = this@apply.value
+ }
+ })
+ }
+ rareFeaturesRichnessSlider.value = mapParameters.rareFeaturesRichness
+ advancedSettingsTable.add("Rare features richness".toLabel()).left()
+ advancedSettingsTable.add(rareFeaturesRichnessSlider).fillX().row()
val maxCoastExtensionSlider = Slider(0f,5f,1f, false, skin).apply {
@@ -202,7 +213,7 @@ class MapParametersTable(val mapParameters: MapParameters, val isEmptyMapAllowed
advancedSettingsTable.add(maxCoastExtensionSlider).fillX().row()
- val tilesPerBiomeAreaSlider = Slider(0f,15f,1f, false, skin).apply {
+ val tilesPerBiomeAreaSlider = Slider(1f,15f,1f, false, skin).apply {
addListener(object : ChangeListener() {
override fun changed(event: ChangeEvent?, actor: Actor?) {
mapParameters.tilesPerBiomeArea = this@apply.value.toInt()
@@ -214,40 +225,28 @@ class MapParametersTable(val mapParameters: MapParameters, val isEmptyMapAllowed
advancedSettingsTable.add(tilesPerBiomeAreaSlider).fillX().row()
- val waterPercentSlider = Slider(0f,1f,0.01f, false, skin).apply {
+ val waterThresholdSlider = Slider(-0.1f,0.1f,0.01f, false, skin).apply {
addListener(object : ChangeListener() {
override fun changed(event: ChangeEvent?, actor: Actor?) {
- mapParameters.waterProbability = this@apply.value
+ mapParameters.waterThreshold = this@apply.value
}
})
}
- waterPercentSlider.value = mapParameters.waterProbability
- advancedSettingsTable.add("Water percent".toLabel()).left()
- advancedSettingsTable.add(waterPercentSlider).fillX().row()
-
-
- val landPercentSlider = Slider(0f,1f,0.01f, false, skin).apply {
- addListener(object : ChangeListener() {
- override fun changed(event: ChangeEvent?, actor: Actor?) {
- mapParameters.landProbability = this@apply.value
- }
- })
- }
- landPercentSlider.value = mapParameters.landProbability
- advancedSettingsTable.add("Land percent".toLabel()).left()
- advancedSettingsTable.add(landPercentSlider).fillX().row()
+ waterThresholdSlider.value = mapParameters.waterThreshold
+ advancedSettingsTable.add("Water level".toLabel()).left()
+ advancedSettingsTable.add(waterThresholdSlider).fillX().row()
val resetToDefaultButton = TextButton("Reset to default".tr(), skin)
resetToDefaultButton.onClick {
mapParameters.resetAdvancedSettings()
- averageHeightSlider.value = mapParameters.mountainProbability
+ elevationExponentSlider.value = mapParameters.elevationExponent
tempExtremeSlider.value = mapParameters.temperatureExtremeness
resourceRichnessSlider.value = mapParameters.resourceRichness
- terrainFeatureRichnessSlider.value = mapParameters.terrainFeatureRichness
+ vegetationRichnessSlider.value = mapParameters.vegetationRichness
+ rareFeaturesRichnessSlider.value = mapParameters.rareFeaturesRichness
maxCoastExtensionSlider.value = mapParameters.maxCoastExtension.toFloat()
tilesPerBiomeAreaSlider.value = mapParameters.tilesPerBiomeArea.toFloat()
- waterPercentSlider.value = mapParameters.waterProbability
- landPercentSlider.value = mapParameters.landProbability
+ waterThresholdSlider.value = mapParameters.waterThreshold
}
advancedSettingsTable.add(resetToDefaultButton).colspan(2).row()
}
diff --git a/docs/Credits.md b/docs/Credits.md
index 0ca5a9ed..6c0d3180 100644
--- a/docs/Credits.md
+++ b/docs/Credits.md
@@ -432,6 +432,8 @@ Unless otherwise specified, all the following are from [the Noun Project](https:
* [Water](https://thenounproject.com/term/water/1762848/) By Kozan for Marsh
* [Harvest](https://thenounproject.com/term/harvest/1022373/) By Made for Flood plains
* [Puddle](https://thenounproject.com/search/?q=puddle&i=1138155) By Bakunetsu Kaito for Lakes
+* [Island](https://thenounproject.com/search/?q=island&i=1546376) By Chanut is Industries for Atoll
+* [Iceberg](https://thenounproject.com/search/?q=iceberg&i=44820) By Jaime Carrion for Ice
## Nations