diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/bkg/arc_left.dds b/binaries/data/mods/official/art/textures/ui/session/icons/bkg/arc_left.dds
new file mode 100644
index 0000000000..52d403fa0c
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/bkg/arc_left.dds
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c7dd98503e225f30830fa6f9ab6a24f7e184612d19f78eb0d6157083a5f0ac82
+size 8320
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/bkg/arc_up.dds b/binaries/data/mods/official/art/textures/ui/session/icons/bkg/arc_up.dds
new file mode 100644
index 0000000000..9a82c25ab4
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/bkg/arc_up.dds
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:94123d16c3f76e59fd64754c49653c2ce3f335f9ad3d3d9fe0be7fa47957e6ef
+size 8320
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/bkg/button_flare.dds b/binaries/data/mods/official/art/textures/ui/session/icons/bkg/button_flare.dds
deleted file mode 100644
index a2d3c461c9..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/icons/bkg/button_flare.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:afaf75280be20facc47ab742fbad61a438c849239d48539c6b5712b146482de3
-size 8320
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/bkg/button_idle.dds b/binaries/data/mods/official/art/textures/ui/session/icons/bkg/button_idle.dds
deleted file mode 100644
index 3df1b96817..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/icons/bkg/button_idle.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:e1ca290822ee3bfc748d4382b5e8f70d3b162cb28daa9af1540ca92c228e8bf4
-size 8320
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/armour.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/armour.txt
new file mode 100644
index 0000000000..1a713c83c0
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/armour.txt
@@ -0,0 +1,4 @@
+rating,Rating,
+hack,Hack,
+pierce,Pierce,
+crush,Crush,
\ No newline at end of file
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/attack.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/attack.txt
new file mode 100644
index 0000000000..1a713c83c0
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/attack.txt
@@ -0,0 +1,4 @@
+rating,Rating,
+hack,Hack,
+pierce,Pierce,
+crush,Crush,
\ No newline at end of file
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/command.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/command.txt
new file mode 100644
index 0000000000..1285fc1804
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/command.txt
@@ -0,0 +1,16 @@
+patrol,Patrol,
+townbell,Town Bell,
+lock,Lock,
+unlock,Unlock,
+kill,Kill,
+explore,Explore,
+rally,Rally,
+stop,Stop,
+heal,Heal,
+repair,Repair,
+herd,Herd,
+escort,Escort,
+move,Move,
+attack,Attack,
+build,Build,
+retreat,Retreat,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/find.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/find.txt
new file mode 100644
index 0000000000..a7465e0d41
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/find.txt
@@ -0,0 +1,4 @@
+citizen,Citizen,
+military,Military,
+hero,Hero,
+civcentre,Civic Centre,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/formation.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/formation.txt
new file mode 100644
index 0000000000..713e4f2321
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/formation.txt
@@ -0,0 +1,10 @@
+box,Box,
+column_c,Column Closed,
+line_c,Line Closed,
+column_o,Column Open,
+line_o,Line Open,
+flank,Flank,
+skirmish,Skirmish,
+wedge,Wedge,
+testudo,Testudo,
+phalanx,Phalanx,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/garrison.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/garrison.txt
new file mode 100644
index 0000000000..464c2e318a
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/garrison.txt
@@ -0,0 +1,3 @@
+garrison,Garrison,
+unload,Unload,
+unloadtotarget,Unload to Target,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/gather.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/gather.txt
new file mode 100644
index 0000000000..1ccc47bfb4
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/gather.txt
@@ -0,0 +1,9 @@
+food,Food,
+wood,Wood,
+stone,Stone,
+ore,Ore,
+fish,Fish,
+fruit,Fruit,
+grain,Grain,
+meat,Meat,
+milk,Milk,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/menu.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/menu.txt
new file mode 100644
index 0000000000..4af55e02f6
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/menu.txt
@@ -0,0 +1,5 @@
+game,Game,
+diplomacy,Diplomacy,
+objectives,Objectives,
+score,Score,
+chat,Chat,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/minimap.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/minimap.txt
new file mode 100644
index 0000000000..8fbf7ce5e0
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/minimap.txt
@@ -0,0 +1,7 @@
+flare,Flare,
+terrain,Terrain,
+territories,Territories,
+friendorfoe,FriendorFoe,
+economic,Economic,
+military,Military,
+resources,Resources,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/rank.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/rank.txt
new file mode 100644
index 0000000000..9952a76205
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/rank.txt
@@ -0,0 +1,2 @@
+advanced,Advanced,
+elite,Elite,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/replay.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/replay.txt
new file mode 100644
index 0000000000..68d8d44053
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/replay.txt
@@ -0,0 +1,7 @@
+pause,Pause,
+play,Play,
+rewind,Rewind,
+fastforward,Fast Forward,
+start,Start,
+end,End,
+cycle,Cycle,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/resource.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/resource.txt
new file mode 100644
index 0000000000..120eba9d90
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/resource.txt
@@ -0,0 +1,5 @@
+food,Food,
+wood,Wood,
+stone,Stone,
+ore,Ore,
+population,Population,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/stance.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/stance.txt
new file mode 100644
index 0000000000..9fc4f23866
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/stance.txt
@@ -0,0 +1,5 @@
+aggress,Aggress,
+defend,Defend,
+avoid,Avoid,
+stand,Stand,
+hold,Hold,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/statistic.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/statistic.txt
new file mode 100644
index 0000000000..4d80490421
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/statistic.txt
@@ -0,0 +1,7 @@
+accuracy,Accuracy,
+vision,Vision,
+speed,Speed,
+range,Range,
+capacity,Capacity,
+health,Health,
+stamina,Stamina,
diff --git a/binaries/data/mods/official/art/textures/ui/session/icons/sheets/tab.txt b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/tab.txt
new file mode 100644
index 0000000000..052becda48
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/icons/sheets/tab.txt
@@ -0,0 +1,9 @@
+structciv,Construct Civic Buildings,
+structmil,Construct Military Buildings,
+train,Train,
+research,Research,
+barter,Barter,
+allegiance,Allegiance,
+selection,Selection,
+garrison,Garrison,
+command,Command,
diff --git a/binaries/data/mods/official/art/textures/ui/session/portraits/sheets/civ.txt b/binaries/data/mods/official/art/textures/ui/session/portraits/sheets/civ.txt
new file mode 100644
index 0000000000..c69976970d
--- /dev/null
+++ b/binaries/data/mods/official/art/textures/ui/session/portraits/sheets/civ.txt
@@ -0,0 +1,60 @@
+infantry_swordsman_b,Basic Infantry Swordsman,
+infantry_swordsman_a,Advanced Infantry Swordsman,
+infantry_swordsman_e,Elite Infantry Swordsman,
+infantry_spearman_b,Basic Infantry Spearman,
+infantry_spearman_a,Advanced Infantry Spearman,
+infantry_spearman_e,Elite Infantry Spearman,
+infantry_javelinist_b,Basic Infantry Javelinist,
+infantry_javelinist_a,Advanced Infantry Javelinist,
+infantry_javelinist_e,Elite Infantry Javelinist,
+infantry_archer_b,Basic Infantry Archer,
+infantry_archer_a,Advanced Infantry Archer,
+infantry_archer_e,Elite Infantry Archer,
+infantry_slinger_b,Basic Infantry Slinger,
+infantry_slinger_a,Advanced Infantry Slinger,
+infantry_slinger_e,Elite Infantry Slinger,
+cavalry_swordsman_b,Basic Cavalry Swordsman,
+cavalry_swordsman_a,Advanced Cavalry Swordsman,
+cavalry_swordsman_e,Elite Cavalry Swordsman,
+cavalry_spearman_b,Basic Cavalry Spearman,
+cavalry_spearman_a,Advanced Cavalry Spearman,
+cavalry_spearman_e,Elite Cavalry Spearman,
+cavalry_javelinist_b,Basic Cavalry Javelinist,
+cavalry_javelinist_a,Advanced Infantry Javelinist,
+cavalry_javelinist_e,Elite Infantry Javelinist,
+cavalry_archer_b,Basic Infantry Archer,
+cavalry_archer_a,Advanced Infantry Archer,
+cavalry_archer_e,Elite Infantry Archer,
+super_siege,Super Siege,
+support_female_citizen,Female Citizen,
+support_healer,Healer,
+support_trader,Trader,
+siege_onager,Onager,
+siege_ram,Ram,
+siege_ballista,Ballista,
+ship_merchant,Merchant Ship,
+ship_bireme,Light Warship,
+ship_trireme,Medium Warship,
+ship_quinquereme,Heavy Warship,
+super_infantry,Super Infantry,
+super_cavalry,Super Cavalry,
+hero_1,Hero,
+hero_2,Hero,
+hero_3,Hero,
+civil_centre,Civic Centre,
+house,House,
+farmstead,Farmstead,
+field,Field,
+corral,Corral,
+mill,Mill,
+scout_tower,Outpost,
+wall,Wall,
+wall_tower,Wall Tower,
+wall_gate,Wall Gate,
+dock,Dock,
+temple,Temple,
+barracks,Barracks,
+market,Market,
+fortress,Fortress,
+sb1,Special Building,
+sb2,Special Building,
\ No newline at end of file
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_bg.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_bg.dds
deleted file mode 100644
index b06fd71732..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_bg.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bd811e8fa7723c08622ef872b6552ee9f940793e439d5eb13f95a055b3b7432f
-size 65664
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_dummy.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_dummy.dds
deleted file mode 100644
index 3831a05182..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_dummy.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bb0006da15406a0249f26f215db03b94162206ff40d00c38b779ad51834a4238
-size 65664
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom1.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom1.dds
deleted file mode 100644
index 123cedfc04..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom1.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:109c4332856945a2c25fd3dd0b27da0e7903804457cf1421d3b6075606b4ac93
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom1_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom1_lit.dds
deleted file mode 100644
index 4b37ee655a..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom1_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:4ef333a2430cb493abd982bf522dfdad9216566e940fd10ecd0b7c4f9c505b09
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom2.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom2.dds
deleted file mode 100644
index 2767478e8f..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom2.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:b10524a4008edbe162e661fb3454d71b0993fbc7a6fbd38f110f09e76f0be53f
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom2_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom2_lit.dds
deleted file mode 100644
index 59831c8e48..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom2_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:67bfb18991f7fdb757951eed00133e22fc8aaa66b9d541589f583f0c3f4a639b
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom3.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom3.dds
deleted file mode 100644
index bfbaca44a7..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom3.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:5780511408863e8e6cd6adfde7680a41f10af1d5302702c5c10aaf056487812d
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom3_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom3_lit.dds
deleted file mode 100644
index 89a0e0ea8c..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom3_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bd7002dda720cc1404850051eb2b889b0a9f99e8461eb2c6cebd9e8351f078fa
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom4.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom4.dds
deleted file mode 100644
index 459ee7f3d8..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom4.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:dd3a536b405c8a2b8790b6645e9b1bf7e59a4b0a91f67429acd6c770b1c466c1
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom4_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom4_lit.dds
deleted file mode 100644
index f171e5a3e8..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segbottom4_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:c7d6d76343c4096033fdd3e8f6f9997de6b80daa154700e190a3cc94adbe9b59
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft1.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft1.dds
deleted file mode 100644
index cc091b0221..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft1.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:f661abd74c1fdf1a8ab56fd18af4e437f84c52923756d3eb189a2a3f755aae0d
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft1_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft1_lit.dds
deleted file mode 100644
index 092a42d780..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft1_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:5fcd5d36683c3bcf12cb242785db532aee6804c72f36bf4603476bed863749ff
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft2.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft2.dds
deleted file mode 100644
index ec215c3c84..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft2.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:3675e10b0f3217c26d5642a3bcf6af1663816c7893bdf21abb95bdc3d23816ce
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft2_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft2_lit.dds
deleted file mode 100644
index f8cf0801b7..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft2_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:94657d3218858bb99f24f459370cc4b8d253adc8a9e0d6e2a30c6d1b613f5272
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft3.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft3.dds
deleted file mode 100644
index a4b0950902..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft3.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bb0c4d917c68113643f936ddabb7fdbe0010c1e6aa2209d1c5a92731e5fb5e21
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft3_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft3_lit.dds
deleted file mode 100644
index c3afb181cb..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft3_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:e438e76c411778777859ae4dde58d4fd4ed1f0856970e1e60ee0b7ab53d74ec0
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft4.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft4.dds
deleted file mode 100644
index 492d0d2923..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft4.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:a0ce0cf9819b9a553f0cbbea951b1f062feb1243daeac3d97ad416466a9b84ad
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft4_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft4_lit.dds
deleted file mode 100644
index 44e56839c7..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segleft4_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:a92498d657a4e84a55e0a0b4868e151dc4e1a93676d29573bdfb83889f98335e
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop1.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop1.dds
deleted file mode 100644
index dc819144a0..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop1.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:695541aee9c7ddec0424356d314df414c733ddf126bd7f657531990e74ad11a9
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop1_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop1_lit.dds
deleted file mode 100644
index f5e9357485..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop1_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:f135c163c7ed157ca1ef31a77c9ef111cc7829cfe657a8521842e89db0c2bbbd
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop2.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop2.dds
deleted file mode 100644
index f76d57016b..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop2.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:2c4ea15a9a2bda0bc1e1e638cd335d68899ba07837b498d6429d5073939c17cd
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop2_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop2_lit.dds
deleted file mode 100644
index 39e4617011..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop2_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:9ed1461ab900538b3e3d8fb617fb734099d1e3e8b981b7e577f1101d8d8e5fa5
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop3.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop3.dds
deleted file mode 100644
index 5be07c40b5..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop3.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:20a2333a154fde6fea6cfa8a851426c00817c605e2338ce0a13fbcc83ff2cdda
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop3_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop3_lit.dds
deleted file mode 100644
index f0eff22274..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop3_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:4d6a4950dfa7499a62437e77b44910417f456764ee53363ff8193f1425ce3faa
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop4.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop4.dds
deleted file mode 100644
index 56d3ca863b..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop4.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:d66376202152e1ee752fde2a3108e713dd1cafddebc788dca4c98497dd884c11
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop4_lit.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop4_lit.dds
deleted file mode 100644
index 6384c11959..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_minimap_segtop4_lit.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:1058fb0f87e39a117d704f1c2b1d60fe5dd3d22e27ee08ec41f37563b57222f5
-size 4224
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_status_bg_bottom.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_status_bg_bottom.dds
deleted file mode 100644
index 6f974ecabb..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_status_bg_bottom.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:6c4af37eff50104f1f096d5fe86f8cd5a22d44b833094f466aa9cebc4d19a8fe
-size 65664
diff --git a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_status_bg_top.dds b/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_status_bg_top.dds
deleted file mode 100644
index 6f974ecabb..0000000000
--- a/binaries/data/mods/official/art/textures/ui/session/ui_session_panel_status_bg_top.dds
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:6c4af37eff50104f1f096d5fe86f8cd5a22d44b833094f466aa9cebc4d19a8fe
-size 65664
diff --git a/binaries/data/mods/official/gui/test/4_session.xml b/binaries/data/mods/official/gui/test/4_session.xml
index 6a69493820..06f7c3d99f 100644
--- a/binaries/data/mods/official/gui/test/4_session.xml
+++ b/binaries/data/mods/official/gui/test/4_session.xml
@@ -65,95 +65,87 @@
diff --git a/binaries/data/mods/official/gui/test/functions_page_session.js b/binaries/data/mods/official/gui/test/functions_page_session.js
index 9d87817c18..bcc5615fa8 100644
--- a/binaries/data/mods/official/gui/test/functions_page_session.js
+++ b/binaries/data/mods/official/gui/test/functions_page_session.js
@@ -36,211 +36,45 @@ function initSession()
function initCellReference()
{
cellGroup = new Array();
+
+ // Define categories of cell groups by checking their reference files in the same locations as the icon sheets.
+ addCellGroupCategory ("art/textures/ui/session/icons/sheets/");
+ // (Note that we don't use this and we probably shouldn't, since the entities state which icon cell they should use; it makes it easier to remember which icon is used
+ // for which unit if we have this reference sheet, though.)
+ addCellGroupCategory ("art/textures/ui/session/portraits/sheets/");
+}
+
+// ====================================================================
+
+function addCellGroupCategory(iconSheetPath)
+{
+ // Get array list of all icon sheet reference files.
+ iconSheets = buildFileList (iconSheetPath, "*.txt", true);
+ // Alphabetically sort the array.
+ iconSheets.sort();
- // Define the cells in this icon sheet.
- groupName = "Armour";
- addCell (groupName, "rating", "Rating");
- addCell (groupName, "hack", "Hack");
- addCell (groupName, "pierce", "Pierce");
- addCell (groupName, "crush", "Crush");
-
- // Define the cells in this icon sheet.
- groupName = "Attack";
- addCell (groupName, "rating", "Rating");
- addCell (groupName, "hack", "Hack");
- addCell (groupName, "pierce", "Pierce");
- addCell (groupName, "crush", "Crush");
+ // Seek through all icon sheets.
+ for (sheet = 0; sheet < iconSheets.length; sheet++)
+ {
+ // Get the current icon sheet name.
+ groupName = iconSheets[sheet];
+ // Remove path and extension information so we just have the group name.
+ groupName = groupName.replace (iconSheetPath, "");
+ groupName = groupName.replace (".txt", "");
+ groupName = toTitleCase(groupName);
- // Define the cells in this icon sheet.
- groupName = "Command";
- addCell (groupName, "patrol", "Patrol");
- addCell (groupName, "townbell", "Town Bell");
- addCell (groupName, "lock", "Lock");
- addCell (groupName, "unlock", "Unlock");
- addCell (groupName, "kill", "Kill");
- addCell (groupName, "explore", "Explore");
- addCell (groupName, "rally", "Rally");
- addCell (groupName, "stop", "Stop");
- addCell (groupName, "heal", "Heal");
- addCell (groupName, "repair", "Repair");
- addCell (groupName, "herd", "Herd");
- addCell (groupName, "escort", "Escort");
- addCell (groupName, "move", "Move");
- addCell (groupName, "attack", "Attack");
- addCell (groupName, "build", "Build");
- addCell (groupName, "retreat", "Retreat");
-
- // Define the cells in this icon sheet.
- groupName = "Find";
- addCell (groupName, "citizen", "Citizen");
- addCell (groupName, "military", "Military");
- addCell (groupName, "hero", "Hero");
- addCell (groupName, "civcentre", "Civic Centre");
+ // Get the elements from the current icon sheet.
+ iconArray = readFileLines (iconSheets[sheet]);
- // Define the cells in this icon sheet.
- groupName = "Formation";
- addCell (groupName, "box", "Box");
- addCell (groupName, "column_c", "Column Closed");
- addCell (groupName, "line_c", "Line Closed");
- addCell (groupName, "column_o", "Column Open");
- addCell (groupName, "line_o", "Line Open");
- addCell (groupName, "flank", "Flank");
- addCell (groupName, "skirmish", "Skirmish");
- addCell (groupName, "wedge", "Wedge");
- addCell (groupName, "testudo", "Testudo");
- addCell (groupName, "phalanx", "Phalanx");
-
- // Define the cells in this icon sheet.
- groupName = "Garrison";
- addCell (groupName, "garrison", "Garrison");
- addCell (groupName, "unload", "Unload");
- addCell (groupName, "unloadtotarget", "Unload to Target");
-
- // Define the cells in this icon sheet.
- groupName = "Gather";
- addCell (groupName, "food", "Food");
- addCell (groupName, "wood", "Wood");
- addCell (groupName, "stone", "Stone");
- addCell (groupName, "ore", "Ore");
- addCell (groupName, "fish", "Fish");
- addCell (groupName, "fruit", "Fruit");
- addCell (groupName, "grain", "Grain");
- addCell (groupName, "meat", "Meat");
- addCell (groupName, "milk", "Milk");
-
- // Define the cells in this icon sheet.
- groupName = "Menu";
- addCell (groupName, "game", "Game");
- addCell (groupName, "diplomacy", "Diplomacy");
- addCell (groupName, "objectives", "Objectives");
- addCell (groupName, "score", "Score");
- addCell (groupName, "chat", "Chat");
-
- // Define the cells in this icon sheet.
- groupName = "MiniMap";
- addCell (groupName, "flare", "Flare");
- addCell (groupName, "flare", "Terrain");
- addCell (groupName, "flare", "Territories");
- addCell (groupName, "friendorfoe", "Friend or Foe");
- addCell (groupName, "economic", "Economic");
- addCell (groupName, "military", "Military");
- addCell (groupName, "resources", "Resources");
-
- // Define the cells in this icon sheet.
- groupName = "Rank";
- addCell (groupName, "advanced", "Advanced");
- addCell (groupName, "elite", "Elite");
-
- // Define the cells in this icon sheet.
- groupName = "Replay";
- addCell (groupName, "pause", "Pause");
- addCell (groupName, "play", "Play");
- addCell (groupName, "rewind", "Rewind");
- addCell (groupName, "fastforward", "Fast Forward");
- addCell (groupName, "start", "Start");
- addCell (groupName, "end", "End");
- addCell (groupName, "cycle", "Cycle");
-
- // Define the cells in this icon sheet.
- groupName = "Resource";
- addCell (groupName, "food", "Food");
- addCell (groupName, "wood", "Wood");
- addCell (groupName, "stone", "Stone");
- addCell (groupName, "ore", "Ore");
- addCell (groupName, "population", "Population");
-
- // Define the cells in this icon sheet.
- groupName = "Stance";
- addCell (groupName, "aggress", "Aggress");
- addCell (groupName, "defend", "Defend");
- addCell (groupName, "avoid", "Avoid");
- addCell (groupName, "stand", "Stand");
- addCell (groupName, "hold", "Hold");
-
- // Define the cells in this icon sheet.
- groupName = "Statistic";
- addCell (groupName, "accuracy", "Accuracy");
- addCell (groupName, "vision", "Vision");
- addCell (groupName, "speed", "Speed");
- addCell (groupName, "range", "Range");
- addCell (groupName, "capacity", "Capacity");
- addCell (groupName, "health", "Health");
- addCell (groupName, "stamina", "Stamina");
-
- // Define the cells in this icon sheet.
- groupName = "Tab";
- addCell (groupName, "structciv", "Construct Civic Buildings");
- addCell (groupName, "structmil", "Construct Military Buildings");
- addCell (groupName, "train", "Train");
- addCell (groupName, "research", "Research");
- addCell (groupName, "barter", "Barter");
- addCell (groupName, "allegiance", "Allegiance");
- addCell (groupName, "selection", "Selection");
- addCell (groupName, "garrison", "Garrison");
- addCell (groupName, "command", "Command");
-
- // Define the cells in this icon sheet.
- groupName = "Civ";
- addCell (groupName, "infantry_swordsman_b", "Basic Infantry Swordsman");
- addCell (groupName, "infantry_swordsman_a", "Advanced Infantry Swordsman");
- addCell (groupName, "infantry_swordsman_e", "Elite Infantry Swordsman");
- addCell (groupName, "infantry_spearman_b", "Basic Infantry Spearman");
- addCell (groupName, "infantry_spearman_a", "Advanced Infantry Spearman");
- addCell (groupName, "infantry_spearman_e", "Elite Infantry Spearman");
- addCell (groupName, "infantry_javelinist_b", "Basic Infantry Javelinist");
- addCell (groupName, "infantry_javelinist_a", "Advanced Infantry Javelinist");
- addCell (groupName, "infantry_javelinist_e", "Elite Infantry Javelinist");
- addCell (groupName, "infantry_archer_b", "Basic Infantry Archer");
- addCell (groupName, "infantry_archer_a", "Advanced Infantry Archer");
- addCell (groupName, "infantry_archer_e", "Elite Infantry Archer");
- addCell (groupName, "infantry_slinger_b", "Basic Infantry Slinger");
- addCell (groupName, "infantry_slinger_a", "Advanced Infantry Slinger");
- addCell (groupName, "infantry_slinger_e", "Elite Infantry Slinger");
- addCell (groupName, "cavalry_swordsman_b", "Basic Cavalry Swordsman");
- addCell (groupName, "cavalry_swordsman_a", "Advanced Cavalry Swordsman");
- addCell (groupName, "cavalry_swordsman_e", "Elite Cavalry Swordsman");
- addCell (groupName, "cavalry_spearman_b", "Basic Cavalry Spearman");
- addCell (groupName, "cavalry_spearman_a", "Advanced Cavalry Spearman");
- addCell (groupName, "cavalry_spearman_e", "Elite Cavalry Spearman");
- addCell (groupName, "cavalry_javelinist_b", "Basic Cavalry Javelinist");
- addCell (groupName, "cavalry_javelinist_a", "Advanced Infantry Javelinist");
- addCell (groupName, "cavalry_javelinist_e", "Elite Infantry Javelinist");
- addCell (groupName, "cavalry_archer_b", "Basic Infantry Archer");
- addCell (groupName, "cavalry_archer_a", "Advanced Infantry Archer");
- addCell (groupName, "cavalry_archer_e", "Elite Infantry Archer");
- addCell (groupName, "super_siege", "Super Siege");
- addCell (groupName, "support_female_citizen", "Female Citizen");
- addCell (groupName, "support_healer", "Healer");
- addCell (groupName, "support_trader", "Trader");
- addCell (groupName, "siege_onager", "Onager");
- addCell (groupName, "siege_ram", "Ram");
- addCell (groupName, "siege_ballista", "Ballista");
- addCell (groupName, "ship_merchant", "Merchant Ship");
- addCell (groupName, "ship_bireme", "Light Warship");
- addCell (groupName, "ship_trireme", "Medium Warship");
- addCell (groupName, "ship_quinquereme", "Heavy Warship");
- addCell (groupName, "super_infantry", "Super Infantry");
- addCell (groupName, "super_cavalry", "Super Cavalry");
- addCell (groupName, "hero_1", "Hero");
- addCell (groupName, "hero_2", "Hero");
- addCell (groupName, "hero_3", "Hero");
- addCell (groupName, "civil_centre", "Civic Centre");
- addCell (groupName, "house", "House");
- addCell (groupName, "farmstead", "Farmstead");
- addCell (groupName, "field", "Field");
- addCell (groupName, "corral", "Corral");
- addCell (groupName, "mill", "Mill");
- addCell (groupName, "scout_tower", "Outpost");
- addCell (groupName, "wall", "Wall");
- addCell (groupName, "wall_tower", "Wall Tower");
- addCell (groupName, "wall_gate", "Wall Gate");
- addCell (groupName, "dock", "Dock");
- addCell (groupName, "temple", "Temple");
- addCell (groupName, "barracks", "Barracks");
- addCell (groupName, "market", "Market");
- addCell (groupName, "fortress", "Fortress");
- addCell (groupName, "sb1", "Special Building");
- addCell (groupName, "sb2", "Special Building");
+ // For each row in the icon sheet file,
+ for (row = 0; row < iconArray.length; row++)
+ {
+ // Get the individual fields in the array as another array.
+ iconElements = iconArray[row].split (",");
+ // Add this cell to the current group.
+ addCell (groupName, iconElements[0], iconElements[1]);
+ }
+ }
}
// ====================================================================
diff --git a/binaries/data/mods/official/gui/test/functions_sim_player.js b/binaries/data/mods/official/gui/test/functions_sim_player.js
index fc788c9cb8..320b753839 100644
--- a/binaries/data/mods/official/gui/test/functions_sim_player.js
+++ b/binaries/data/mods/official/gui/test/functions_sim_player.js
@@ -225,7 +225,7 @@ function refreshResource (resourceName, resourceIndex)
if (resourceIndex == 0)
{
// The first coordinate is in the exact centre of the screen.
- Crd[crdResult].coord[coordGroup].x = -Crd[crdResult-2].coord[coordGroup].width - 5;
+ Crd[crdResult].coord[coordGroup].x = -Crd[crdResult].coord[coordGroup].width - 5;
}
else
{ // Resources other than the first one get stacked in sequence to the sides of it.
diff --git a/binaries/data/mods/official/gui/test/sprite1.xml b/binaries/data/mods/official/gui/test/sprite1.xml
index 8c769a9180..56232af57a 100644
--- a/binaries/data/mods/official/gui/test/sprite1.xml
+++ b/binaries/data/mods/official/gui/test/sprite1.xml
@@ -773,6 +773,19 @@
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-