From c14c117f3e447002defa4d6766f5968bf71aa41d Mon Sep 17 00:00:00 2001
From: Marko Lindqvist <cazfi74@gmail.com>
Date: Sat, 14 Dec 2024 06:21:17 +0200
Subject: [PATCH 41/41] Graphic tags: Use ':' as separator before frame number

See RM #1189

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
---
 client/tilespec.c              |  4 +-
 data/alio/fortresses.spec      |  8 ++--
 data/alio/terrain.spec         |  8 ++--
 data/amplio/moderncities.spec  | 16 +++----
 data/amplio/select.spec        |  8 ++--
 data/amplio/terrain1.spec      | 62 ++++++++++++-------------
 data/amplio/tiles.spec         |  4 +-
 data/amplio2/activities.spec   |  4 +-
 data/amplio2/bases.spec        | 26 +++++------
 data/amplio2/select.spec       |  8 ++--
 data/amplio2/terrain1.spec     | 62 ++++++++++++-------------
 data/hex2t/items.spec          | 20 ++++----
 data/hex2t/select.spec         |  8 ++--
 data/hex2t/tiles.spec          | 64 +++++++++++++-------------
 data/hexemplio/activities.spec |  4 +-
 data/hexemplio/bases.spec      | 16 +++----
 data/hexemplio/select.spec     |  8 ++--
 data/hexemplio/terrain.spec    | 74 +++++++++++++++---------------
 data/isophex/terrain1.spec     | 76 +++++++++++++++---------------
 data/isotrident/cities.spec    | 16 +++----
 data/isotrident/select.spec    |  8 ++--
 data/isotrident/terrain1.spec  | 62 ++++++++++++-------------
 data/trident/select.spec       |  8 ++--
 data/trident/tiles.spec        | 84 +++++++++++++++++-----------------
 24 files changed, 329 insertions(+), 329 deletions(-)

diff --git a/client/tilespec.c b/client/tilespec.c
index f9928cf676..5744f2f35b 100644
--- a/client/tilespec.c
+++ b/client/tilespec.c
@@ -3001,7 +3001,7 @@ static struct anim *anim_load(struct tileset *t, const char *tag,
   int i;
 
   do {
-    fc_snprintf(buf, sizeof(buf), "%s_%d", tag, frames++);
+    fc_snprintf(buf, sizeof(buf), "%s:%d", tag, frames++);
   } while (sprite_exists(t, buf));
 
   if (--frames == 0) {
@@ -3015,7 +3015,7 @@ static struct anim *anim_load(struct tileset *t, const char *tag,
   ret = anim_new(frames, time_per_frame);
 
   for (i = 0; i < frames; i++) {
-    fc_snprintf(buf, sizeof(buf), "%s_%d", tag, i);
+    fc_snprintf(buf, sizeof(buf), "%s:%d", tag, i);
     ret->sprites[i] = load_sprite(t, buf, TRUE, TRUE, FALSE);
     if (ret->sprites[i] == nullptr) {
       tileset_error(LOG_FATAL, tileset_name_get(t),
diff --git a/data/alio/fortresses.spec b/data/alio/fortresses.spec
index 59f9000a60..a040dcb12c 100644
--- a/data/alio/fortresses.spec
+++ b/data/alio/fortresses.spec
@@ -24,9 +24,9 @@ pixel_border = 1
 
 tiles = { "row", "column", "tag"
 
- 0,  0, "base.force_fortress_bg_0"
- 1,  0, "base.force_fortress_fg_0"
+ 0,  0, "base.force_fortress_bg:0"
+ 1,  0, "base.force_fortress_fg:0"
 
- 0,  1, "base.tower_bg_0"
- 1,  1, "base.tower_fg_0"
+ 0,  1, "base.tower_bg:0"
+ 1,  1, "base.tower_fg:0"
 }
diff --git a/data/alio/terrain.spec b/data/alio/terrain.spec
index afb2d723ef..ef6e6bfb7f 100644
--- a/data/alio/terrain.spec
+++ b/data/alio/terrain.spec
@@ -28,10 +28,10 @@ dy = 64
 pixel_border = 1
 
 tiles = { "row", "column","tag"
-  0,    0,  "ts.thermal_vent_0"
-  1,    0,  "ts.glowing_rocks_0"
-  2,    0,  "ts.huge_plant_0"
-  3,    0,  "ts.alien_mine_0"
+  0,    0,  "ts.thermal_vent:0"
+  1,    0,  "ts.glowing_rocks:0"
+  2,    0,  "ts.huge_plant:0"
+  3,    0,  "ts.alien_mine:0"
 
   0,    1,  "t.l0.radiating_rocks1"
   5,    1,  "t.l1.radiating_rocks1"
diff --git a/data/amplio/moderncities.spec b/data/amplio/moderncities.spec
index ef0b64ae49..864758cfa8 100644
--- a/data/amplio/moderncities.spec
+++ b/data/amplio/moderncities.spec
@@ -61,19 +61,19 @@ tiles = { "row", "column", "tag"
 ; used by all city styles
 
  0,  0, "city.disorder"
- 0,  1, "base.airbase_mg_0"
+ 0,  1, "base.airbase_mg:0"
  0,  2, "tx.airbase_full"
- 0,  4, "base.outpost_fg_0"
- 0,  5, "base.outpost_bg_0"
+ 0,  4, "base.outpost_fg:0"
+ 0,  5, "base.outpost_bg:0"
  0,  6, "city.electricage_occupied_0"
  0,  6, "city.modern_occupied_0"
  0,  6, "city.postmodern_occupied_0"
- 0,  8, "base.buoy_mg_0"
- 0,  9, "extra.ruins_mg_0"
+ 0,  8, "base.buoy_mg:0"
+ 0,  9, "extra.ruins_mg:0"
 
- 1,  1, "base.airstrip_mg_0"
- 1,  4, "base.fortress_fg_0"
- 1,  5, "base.fortress_bg_0"
+ 1,  1, "base.airstrip_mg:0"
+ 1,  4, "base.fortress_fg:0"
+ 1,  5, "base.fortress_bg:0"
 ;
 ; city tiles
 ;
diff --git a/data/amplio/select.spec b/data/amplio/select.spec
index 40ff0b05b9..cc07ad3119 100644
--- a/data/amplio/select.spec
+++ b/data/amplio/select.spec
@@ -23,8 +23,8 @@ dy = 48
 pixel_border = 0
 
 tiles = { "row", "column", "tag"
-  0, 0, "unit.select_0"
-  0, 1, "unit.select_1"
-  0, 2, "unit.select_2"
-  0, 3, "unit.select_3"
+  0, 0, "unit.select:0"
+  0, 1, "unit.select:1"
+  0, 2, "unit.select:2"
+  0, 3, "unit.select:3"
 }
diff --git a/data/amplio/terrain1.spec b/data/amplio/terrain1.spec
index ac605e1a39..4e02b318fc 100644
--- a/data/amplio/terrain1.spec
+++ b/data/amplio/terrain1.spec
@@ -53,41 +53,41 @@ tiles = { "row", "column", "tag"
 
 ; Terrain special resources:
 
- 0,  2, "ts.oasis_0"
- 0,  4, "ts.oil_0"
+ 0,  2, "ts.oasis:0"
+ 0,  4, "ts.oil:0"
 
- 1,  2, "ts.buffalo_0"
- 1,  4, "ts.wheat_0"
+ 1,  2, "ts.buffalo:0"
+ 1,  4, "ts.wheat:0"
 
- 2,  2, "ts.pheasant_0"
- 2,  4, "ts.silk_0"
+ 2,  2, "ts.pheasant:0"
+ 2,  4, "ts.silk:0"
 
- 3,  2, "ts.coal_0"
- 3,  4, "ts.wine_0"
+ 3,  2, "ts.coal:0"
+ 3,  4, "ts.wine:0"
 
- 4,  2, "ts.gold_0"
- 4,  4, "ts.iron_0"
+ 4,  2, "ts.gold:0"
+ 4,  4, "ts.iron:0"
 
- 5,  2, "ts.tundra_game_0"
- 5,  4, "ts.furs_0"
+ 5,  2, "ts.tundra_game:0"
+ 5,  4, "ts.furs:0"
 
- 6,  2, "ts.arctic_ivory_0"
- 6,  4, "ts.arctic_oil_0"
+ 6,  2, "ts.arctic_ivory:0"
+ 6,  4, "ts.arctic_oil:0"
 
- 7,  2, "ts.peat_0"
- 7,  4, "ts.spice_0"
+ 7,  2, "ts.peat:0"
+ 7,  4, "ts.spice:0"
 
- 8,  2, "ts.gems_0"
- 8,  4, "ts.fruit_0"
+ 8,  2, "ts.gems:0"
+ 8,  4, "ts.fruit:0"
 
- 9,  2, "ts.fish_0"
- 9,  4, "ts.whales_0"
+ 9,  2, "ts.fish:0"
+ 9,  4, "ts.whales:0"
 
- 10, 2, "ts.seals_0"
- 10, 4, "ts.forest_game_0"
+ 10, 2, "ts.seals:0"
+ 10, 4, "ts.forest_game:0"
 
- 11, 2, "ts.horses_0"
- 11, 4, "ts.grassland_resources_0", "ts.river_resources_0"
+ 11, 2, "ts.horses:0"
+ 11, 4, "ts.grassland_resources:0", "ts.river_resources:0"
 
 ; Roads
  12, 0, "road.road_isolated"
@@ -112,15 +112,15 @@ tiles = { "row", "column", "tag"
  13, 8, "road.rail_nw"
 
 ; Other extras
- 0,  6, "tx.oil_mine_0"
+ 0,  6, "tx.oil_mine:0"
  1,  6, "tx.irrigation"
  2,  6, "tx.farmland"
- 3,  6, "tx.mine_0"
- 4,  6, "tx.pollution_0"
- 5,  6, "tx.village_0"
- 6,  6, "tx.fallout_0"
- 7,  6, "tx.oil_rig_0"
- 8,  6, "tx.nets_0"
+ 3,  6, "tx.mine:0"
+ 4,  6, "tx.pollution:0"
+ 5,  6, "tx.village:0"
+ 6,  6, "tx.fallout:0"
+ 7,  6, "tx.oil_rig:0"
+ 8,  6, "tx.nets:0"
 
  15,  0, "t.dither_tile"
  15,  0, "tx.darkness"
diff --git a/data/amplio/tiles.spec b/data/amplio/tiles.spec
index 38aedf0d2a..5088d355b1 100644
--- a/data/amplio/tiles.spec
+++ b/data/amplio/tiles.spec
@@ -29,8 +29,8 @@ tiles = { "row", "column", "tag"
   0, 18, "unit.auto_attack",
          "unit.auto_worker"
   0, 19, "unit.stack"
-  0, 16, "unit.action_decision_want_1"
-  1, 16, "unit.action_decision_want_0"
+  0, 16, "unit.action_decision_want:1"
+  1, 16, "unit.action_decision_want:0"
   1, 17, "unit.loaded"
   1, 18, "unit.connect"
   1, 19, "unit.auto_explore"
diff --git a/data/amplio2/activities.spec b/data/amplio2/activities.spec
index 10df1928e6..4ec06d68a2 100644
--- a/data/amplio2/activities.spec
+++ b/data/amplio2/activities.spec
@@ -54,8 +54,8 @@ tiles = { "row", "column", "tag"
   4, 0, "unit.goto"
   4, 1, "unit.convert"
   4, 2, "unit.auto_explore"
-  4, 3, "unit.action_decision_want_0"
-  4, 4, "unit.action_decision_want_1"
+  4, 3, "unit.action_decision_want:0"
+  4, 4, "unit.action_decision_want:1"
 
 ; [GS]
   5,  0, "unit.irrigation"
diff --git a/data/amplio2/bases.spec b/data/amplio2/bases.spec
index b83f62db49..b2c001eb41 100644
--- a/data/amplio2/bases.spec
+++ b/data/amplio2/bases.spec
@@ -27,27 +27,27 @@ pixel_border = 1
 
 tiles = { "row", "column", "tag"
 ;[HH][GS]
- 0,  0, "base.airbase_mg_0"
+ 0,  0, "base.airbase_mg:0"
  0,  1, "tx.airbase_full"
 ;[HH]
- 0,  3, "base.fortress_fg_0"
- 0,  4, "base.fortress_bg_0"
+ 0,  3, "base.fortress_fg:0"
+ 0,  4, "base.fortress_bg:0"
 ;[HH][GS]
- 1,  0, "base.airstrip_mg_0"
+ 1,  0, "base.airstrip_mg:0"
 ;[El]
- 1,  1, "base.buoy_mg_0"
+ 1,  1, "base.buoy_mg:0"
 ;[VC]
- 1,  2, "extra.ruins_mg_0"
+ 1,  2, "extra.ruins_mg:0"
 ;[HH][GS]
- 1,  3, "base.outpost_fg_0"
- 1,  4, "base.outpost_bg_0"
+ 1,  3, "base.outpost_fg:0"
+ 1,  4, "base.outpost_bg:0"
 ; [SK]
- 1,  5, "extra.transport_hub_mg_0"
+ 1,  5, "extra.transport_hub_mg:0"
  ;[Lexxie]
- 2,  2, "base.castle2_fg_0"      ; Alternate castle (larger 'closed' version which makes hidden units more plausible ...
- 2,  3, "base.castle2_bg_0"      ; ... but also hides the terrain graphics)
- 2,  4, "base.castle_fg_0"
- 2,  5, "base.castle_bg_0"
+ 2,  2, "base.castle2_fg:0"      ; Alternate castle (larger 'closed' version which makes hidden units more plausible ...
+ 2,  3, "base.castle2_bg:0"      ; ... but also hides the terrain graphics)
+ 2,  4, "base.castle_fg:0"
+ 2,  5, "base.castle_bg:0"
 ;[HH]
  0,  2, "cd.occupied",
       "city.european_occupied_0",
diff --git a/data/amplio2/select.spec b/data/amplio2/select.spec
index 20f0567fc3..949a316b4d 100644
--- a/data/amplio2/select.spec
+++ b/data/amplio2/select.spec
@@ -23,8 +23,8 @@ dy = 48
 pixel_border = 0
 
 tiles = { "row", "column", "tag"
-  0, 0, "unit.select_0"
-  0, 1, "unit.select_1"
-  0, 2, "unit.select_2"
-  0, 3, "unit.select_3"
+  0, 0, "unit.select:0"
+  0, 1, "unit.select:1"
+  0, 2, "unit.select:2"
+  0, 3, "unit.select:3"
 }
diff --git a/data/amplio2/terrain1.spec b/data/amplio2/terrain1.spec
index 9ddb6dbad4..3cd7a82dff 100644
--- a/data/amplio2/terrain1.spec
+++ b/data/amplio2/terrain1.spec
@@ -55,41 +55,41 @@ tiles = { "row", "column", "tag"
 
 ; Terrain special resources:
 
- 0,  2, "ts.oasis_0"
- 0,  4, "ts.oil_0"
+ 0,  2, "ts.oasis:0"
+ 0,  4, "ts.oil:0"
 
- 1,  2, "ts.buffalo_0"
- 1,  4, "ts.wheat_0"
+ 1,  2, "ts.buffalo:0"
+ 1,  4, "ts.wheat:0"
 
- 2,  2, "ts.pheasant_0"
- 2,  4, "ts.silk_0"
+ 2,  2, "ts.pheasant:0"
+ 2,  4, "ts.silk:0"
 
- 3,  2, "ts.coal_0"
- 3,  4, "ts.wine_0"
+ 3,  2, "ts.coal:0"
+ 3,  4, "ts.wine:0"
 
- 4,  2, "ts.gold_0"
- 4,  4, "ts.iron_0"
+ 4,  2, "ts.gold:0"
+ 4,  4, "ts.iron:0"
 
- 5,  2, "ts.tundra_game_0"
- 5,  4, "ts.furs_0"
+ 5,  2, "ts.tundra_game:0"
+ 5,  4, "ts.furs:0"
 
- 6,  2, "ts.arctic_ivory_0"
- 6,  4, "ts.arctic_oil_0"
+ 6,  2, "ts.arctic_ivory:0"
+ 6,  4, "ts.arctic_oil:0"
 
- 7,  2, "ts.peat_0"
- 7,  4, "ts.spice_0"
+ 7,  2, "ts.peat:0"
+ 7,  4, "ts.spice:0"
 
- 8,  2, "ts.gems_0"
- 8,  4, "ts.fruit_0"
+ 8,  2, "ts.gems:0"
+ 8,  4, "ts.fruit:0"
 
- 9,  2, "ts.fish_0"
- 9,  4, "ts.whales_0"
+ 9,  2, "ts.fish:0"
+ 9,  4, "ts.whales:0"
 
- 10, 2, "ts.seals_0"
- 10, 4, "ts.forest_game_0"
+ 10, 2, "ts.seals:0"
+ 10, 4, "ts.forest_game:0"
 
- 11, 2, "ts.horses_0"
- 11, 4, "ts.grassland_resources_0", "ts.river_resources_0"
+ 11, 2, "ts.horses:0"
+ 11, 4, "ts.grassland_resources:0", "ts.river_resources:0"
 
 ; Roads
  12, 0, "road.road_isolated"
@@ -114,15 +114,15 @@ tiles = { "row", "column", "tag"
  13, 8, "road.rail_nw"
 
 ; Add-ons
- 0,  6, "tx.oil_mine_0"
+ 0,  6, "tx.oil_mine:0"
  1,  6, "tx.irrigation"
  2,  6, "tx.farmland"
- 3,  6, "tx.mine_0"
- 4,  6, "tx.pollution_0"
- 5,  6, "tx.village_0"
- 6,  6, "tx.fallout_0"
- 7,  6, "tx.oil_rig_0"
- 8,  6, "tx.nets_0"
+ 3,  6, "tx.mine:0"
+ 4,  6, "tx.pollution:0"
+ 5,  6, "tx.village:0"
+ 6,  6, "tx.fallout:0"
+ 7,  6, "tx.oil_rig:0"
+ 8,  6, "tx.nets:0"
 
  15,  0, "t.dither_tile"
  15,  0, "tx.darkness"
diff --git a/data/hex2t/items.spec b/data/hex2t/items.spec
index 88a4a07285..647d5937c0 100644
--- a/data/hex2t/items.spec
+++ b/data/hex2t/items.spec
@@ -36,15 +36,15 @@ tiles = { "row", "column", "tag"
 ; used by all city styles
 
  1,  0, "city.disorder"
- 1,  1, "base.airbase_mg_0"
+ 1,  1, "base.airbase_mg:0"
  1,  2, "tx.airbase_full"
- 1,  3, "base.airstrip_mg_0"
- 1,  5, "base.buoy_mg_0"
- 1,  6, "extra.ruins_mg_0"
- 3,  8, "base.outpost_fg_0"
- 3,  9, "base.outpost_bg_0"
- 4,  8, "base.fortress_fg_0"
- 4,  9, "base.fortress_bg_0"
+ 1,  3, "base.airstrip_mg:0"
+ 1,  5, "base.buoy_mg:0"
+ 1,  6, "extra.ruins_mg:0"
+ 3,  8, "base.outpost_fg:0"
+ 3,  9, "base.outpost_bg:0"
+ 4,  8, "base.fortress_fg:0"
+ 4,  9, "base.fortress_bg:0"
 
 ; default city tiles
  2,  2, "cd.city"
@@ -212,8 +212,8 @@ tiles = { "row", "column", "tag"
 
 ; Unit activity letters:  (note unit icons have just "u.")
 
-  0, 11, "unit.action_decision_want_1"
-  0, 12, "unit.action_decision_want_0"
+  0, 11, "unit.action_decision_want:1"
+  0, 12, "unit.action_decision_want:0"
   0, 13, "unit.convert"
   0, 14, "unit.auto_attack",
          "unit.auto_worker"
diff --git a/data/hex2t/select.spec b/data/hex2t/select.spec
index 7054ca539d..6b613f0d6f 100644
--- a/data/hex2t/select.spec
+++ b/data/hex2t/select.spec
@@ -24,8 +24,8 @@ dy = 37
 pixel_border = 0
 
 tiles = { "row", "column", "tag"
-  0, 0, "unit.select_0"
-  0, 1, "unit.select_1"
-  0, 2, "unit.select_2"
-  0, 3, "unit.select_3"
+  0, 0, "unit.select:0"
+  0, 1, "unit.select:1"
+  0, 2, "unit.select:2"
+  0, 3, "unit.select:3"
 }
diff --git a/data/hex2t/tiles.spec b/data/hex2t/tiles.spec
index 602215d2f0..16e0efcd1b 100644
--- a/data/hex2t/tiles.spec
+++ b/data/hex2t/tiles.spec
@@ -99,45 +99,45 @@ tiles = { "row", "column","tag"
 
 ; Terrain special resources:
 
-  4, 0, "ts.oasis_0"
-  5, 0, "ts.oil_0"
-  4, 1, "ts.buffalo_0"
-  5, 1, "ts.wheat_0"
-  5, 2, "ts.grassland_resources_0", "ts.river_resources_0"
-  4, 3, "ts.pheasant_0"
-  5, 3, "ts.silk_0"
-  4, 4, "ts.coal_0"
-  5, 4, "ts.wine_0"
-  4, 5, "ts.gold_0"
-  5, 5, "ts.iron_0"
-  4, 6, "ts.tundra_game_0"
-  5, 6, "ts.furs_0"
-  4, 7, "ts.arctic_ivory_0"
-  5, 7, "ts.arctic_oil_0"
-  4, 8, "ts.peat_0"
-  5, 8, "ts.spice_0"
-  4, 9, "ts.gems_0"
-  5, 9, "ts.fruit_0"
-  4, 10, "ts.fish_0"
-  5, 10, "ts.whales_0"
-
-  6, 7, "ts.seals_0"
-  6, 8, "ts.forest_game_0"
-  6, 9, "ts.horses_0"
+  4, 0, "ts.oasis:0"
+  5, 0, "ts.oil:0"
+  4, 1, "ts.buffalo:0"
+  5, 1, "ts.wheat:0"
+  5, 2, "ts.grassland_resources:0", "ts.river_resources:0"
+  4, 3, "ts.pheasant:0"
+  5, 3, "ts.silk:0"
+  4, 4, "ts.coal:0"
+  5, 4, "ts.wine:0"
+  4, 5, "ts.gold:0"
+  5, 5, "ts.iron:0"
+  4, 6, "ts.tundra_game:0"
+  5, 6, "ts.furs:0"
+  4, 7, "ts.arctic_ivory:0"
+  5, 7, "ts.arctic_oil:0"
+  4, 8, "ts.peat:0"
+  5, 8, "ts.spice:0"
+  4, 9, "ts.gems:0"
+  5, 9, "ts.fruit:0"
+  4, 10, "ts.fish:0"
+  5, 10, "ts.whales:0"
+
+  6, 7, "ts.seals:0"
+  6, 8, "ts.forest_game:0"
+  6, 9, "ts.horses:0"
 
 
 ; Extras
 
-  6, 0, "tx.oil_mine_0"
-  6, 10, "tx.oil_rig_0"
-  6, 1, "tx.mine_0"
+  6, 0, "tx.oil_mine:0"
+  6, 10, "tx.oil_rig:0"
+  6, 1, "tx.mine:0"
   6, 2, "tx.irrigation"
   6, 3, "tx.farmland"
-  6, 4, "tx.pollution_0"
-  6, 5, "tx.fallout_0"
-  6, 6, "tx.village_0"
+  6, 4, "tx.pollution:0"
+  6, 5, "tx.fallout:0"
+  6, 6, "tx.village:0"
 
-  7, 10, "tx.nets_0"
+  7, 10, "tx.nets:0"
 
 ; Random stuff
 
diff --git a/data/hexemplio/activities.spec b/data/hexemplio/activities.spec
index 61868404e0..0cd76ed8f5 100644
--- a/data/hexemplio/activities.spec
+++ b/data/hexemplio/activities.spec
@@ -71,7 +71,7 @@ tiles = { "row", "column", "tag"
   3,  3, "unit.oil_mine"                ;[GS]
   3,  4, "unit.oil_rig"                 ;[GS]
 
-  4,  0, "unit.action_decision_want_0"
-  4,  1, "unit.action_decision_want_1"
+  4,  0, "unit.action_decision_want:0"
+  4,  1, "unit.action_decision_want:1"
 
 }
diff --git a/data/hexemplio/bases.spec b/data/hexemplio/bases.spec
index 40fa1fd923..1f64154e9f 100644
--- a/data/hexemplio/bases.spec
+++ b/data/hexemplio/bases.spec
@@ -51,23 +51,23 @@ pixel_border = 1
 tiles = { "row", "column", "tag"
 
 ;[HH][GS]
- 0,  0, "base.airstrip_mg_0"
+ 0,  0, "base.airstrip_mg:0"
  1,  0, "tx.airstrip_full"
 ;[HH][GS]
- 0,  1, "base.airbase_mg_0"
+ 0,  1, "base.airbase_mg:0"
  1,  1, "tx.airbase_full"
 ;[HH][GS]
- 1,  2, "base.outpost_fg_0"
- 0,  2, "base.outpost_bg_0"
+ 1,  2, "base.outpost_fg:0"
+ 0,  2, "base.outpost_bg:0"
 ;[HH]
- 1,  3, "base.fortress_fg_0"
- 0,  3, "base.fortress_bg_0"
+ 1,  3, "base.fortress_fg:0"
+ 0,  3, "base.fortress_bg:0"
 ;[HH]
  0,  4, "city.disorder"
 ;[El]
- 1,  4, "base.buoy_mg_0"
+ 1,  4, "base.buoy_mg:0"
 ;[VC]
- 0,  5, "extra.ruins_mg_0"
+ 0,  5, "extra.ruins_mg:0"
 ;[HH]
  1,  5, "city.european_occupied_0"
  1,  5, "city.classical_occupied_0"
diff --git a/data/hexemplio/select.spec b/data/hexemplio/select.spec
index 7726659b01..bf02ba456e 100644
--- a/data/hexemplio/select.spec
+++ b/data/hexemplio/select.spec
@@ -23,8 +23,8 @@ dy = 38
 pixel_border = 1
 
 tiles = { "row", "column", "tag"
-  0, 0, "unit.select_0"
-  0, 1, "unit.select_1"
-  0, 2, "unit.select_2"
-  0, 3, "unit.select_3"
+  0, 0, "unit.select:0"
+  0, 1, "unit.select:1"
+  0, 2, "unit.select:2"
+  0, 3, "unit.select:3"
 }
diff --git a/data/hexemplio/terrain.spec b/data/hexemplio/terrain.spec
index 3f3cdc0ef7..52d7a3a36d 100644
--- a/data/hexemplio/terrain.spec
+++ b/data/hexemplio/terrain.spec
@@ -60,51 +60,51 @@ tiles = { "row", "column","tag"
   5,    0,  "t.l1.inaccessible1"
 
 ; Terrain special resources:
- 1,   0, "ts.oil_0"                             ;[?]
- 1,   0, "ts.arctic_oil_0"                      ;[?]
- 1,   1, "ts.buffalo_0"                         ;[?]
- 1,   2, "ts.grassland_resources_0"             ;[?]
- 1,   2, "ts.river_resources_0"                 ;[?]
- 1,   3, "ts.tundra_game_0"                     ;[?]
- 1,   4, "ts.arctic_ivory_0"                    ;[?]
- 1,   5, "ts.peat_0"                            ;[?]
- 1,   6, "ts.coal_0"                            ;[?]
- 1,   7, "ts.forest_game_0"                     ;[?]
- 1,   8, "ts.gold_0"                            ;[?]
+ 1,   0, "ts.oil:0"                             ;[?]
+ 1,   0, "ts.arctic_oil:0"                      ;[?]
+ 1,   1, "ts.buffalo:0"                         ;[?]
+ 1,   2, "ts.grassland_resources:0"             ;[?]
+ 1,   2, "ts.river_resources:0"                 ;[?]
+ 1,   3, "ts.tundra_game:0"                     ;[?]
+ 1,   4, "ts.arctic_ivory:0"                    ;[?]
+ 1,   5, "ts.peat:0"                            ;[?]
+ 1,   6, "ts.coal:0"                            ;[?]
+ 1,   7, "ts.forest_game:0"                     ;[?]
+ 1,   8, "ts.gold:0"                            ;[?]
 
- 2,   0, "ts.oasis_0"                           ;[BFW]
- 2,   1, "ts.wheat_0"                           ;[?]
- 2,   2, "ts.pheasant_0"                        ;[?]
- 2,   3, "ts.furs_0"                            ;[?]
- 2,   4, "ts.seals_0"                           ;[?]
- 2,   5, "ts.spice_0"                           ;[?]
- 2,   6, "ts.wine_0"                            ;[?]
- 2,   7, "ts.silk_0"                            ;[?]
- 2,   8, "ts.iron_0"                            ;[?]
+ 2,   0, "ts.oasis:0"                           ;[BFW]
+ 2,   1, "ts.wheat:0"                           ;[?]
+ 2,   2, "ts.pheasant:0"                        ;[?]
+ 2,   3, "ts.furs:0"                            ;[?]
+ 2,   4, "ts.seals:0"                           ;[?]
+ 2,   5, "ts.spice:0"                           ;[?]
+ 2,   6, "ts.wine:0"                            ;[?]
+ 2,   7, "ts.silk:0"                            ;[?]
+ 2,   8, "ts.iron:0"                            ;[?]
 
- 3,   6, "ts.fruit_0"                           ;[?]
- 3,   7, "ts.gems_0"                            ;[?]
- 3,   8, "ts.fish_0"                            ;[?]
+ 3,   6, "ts.fruit:0"                           ;[?]
+ 3,   7, "ts.gems:0"                            ;[?]
+ 3,   8, "ts.fish:0"                            ;[?]
 
- 4,   8, "ts.whales_0"                          ;[?]
+ 4,   8, "ts.whales:0"                          ;[?]
 
 ; Strategic Resources
- 3,   0, "ts.saltpeter_0"                       ;[?]
- 3,   1, "ts.aluminum_0"                        ;[?]
- 3,   2, "ts.uranium_0"                         ;[?]
- 3,   3, "ts.horses_0"                          ;[?]
- 3,   4, "ts.elephant_0"                        ;[AF]
- 3,   5, "ts.rubber_0"                          ;[GS]
+ 3,   0, "ts.saltpeter:0"                       ;[?]
+ 3,   1, "ts.aluminum:0"                        ;[?]
+ 3,   2, "ts.uranium:0"                         ;[?]
+ 3,   3, "ts.horses:0"                          ;[?]
+ 3,   4, "ts.elephant:0"                        ;[AF]
+ 3,   5, "ts.rubber:0"                          ;[GS]
 
 ;add-ons
- 4, 0, "tx.oil_mine_0"                          ;[?]
- 4, 1, "tx.mine_0"                              ;[?]
- 4, 2, "tx.oil_rig_0"                           ;[?][GS]
+ 4, 0, "tx.oil_mine:0"                          ;[?]
+ 4, 1, "tx.mine:0"                              ;[?]
+ 4, 2, "tx.oil_rig:0"                           ;[?][GS]
  4, 3, "tx.irrigation"                          ;[GS]
  4, 4, "tx.farmland"                            ;[GS]
- 4, 5, "tx.fallout_0"                           ;[?][GS]
- 4, 6, "tx.pollution_0"                         ;[?]
- 4, 7, "tx.village_0"                           ;[BFW][GS]
+ 4, 5, "tx.fallout:0"                           ;[?][GS]
+ 4, 6, "tx.pollution:0"                         ;[?]
+ 4, 7, "tx.village:0"                           ;[BFW][GS]
 
 ;misc
  5, 5, "mask.tile"
@@ -131,7 +131,7 @@ tiles = { "row", "column","tag"
  6, 2, "path.normal"          ; tip of path with MP remaining
  6, 3, "path.waypoint"
 
- 6, 4, "tx.nets_0"
+ 6, 4, "tx.nets:0"
 
 ; Irrigation (as special type), and whether north, south, east, west
 
diff --git a/data/isophex/terrain1.spec b/data/isophex/terrain1.spec
index 30b9870f8d..d16bc25cde 100644
--- a/data/isophex/terrain1.spec
+++ b/data/isophex/terrain1.spec
@@ -43,40 +43,40 @@ tiles = { "row", "column","tag"
 
 ; Terrain special resources:
 
-  1,    0, "ts.oil_0"
-  2,    0, "ts.oasis_0"
-  1,    1, "ts.buffalo_0"
-  2,    1, "ts.wheat_0"
-  1,    2, "ts.grassland_resources_0"
-  1,    2, "ts.river_resources_0"
-  2,    2, "ts.pheasant_0"
-  1,    3, "ts.tundra_game_0"
-  2,    3, "ts.furs_0"
-  1,    4, "ts.arctic_ivory_0"
-  2,    4, "ts.arctic_oil_0"
-  1,    5, "ts.peat_0"
-  2,    5, "ts.spice_0"
-  1,    6, "ts.gems_0"
-  2,    6, "ts.fruit_0"
-  1,    7, "ts.forest_game_0"
-  2,    7, "ts.silk_0"
-  1,    8, "ts.coal_0"
-  2,    8, "ts.wine_0"
-  1,    9, "ts.gold_0"
-  2,    9, "ts.iron_0"
-  1,   10, "ts.fish_0"
-  2,   10, "ts.whales_0"
-
-  3,    6, "ts.seals_0"
+  1,    0, "ts.oil:0"
+  2,    0, "ts.oasis:0"
+  1,    1, "ts.buffalo:0"
+  2,    1, "ts.wheat:0"
+  1,    2, "ts.grassland_resources:0"
+  1,    2, "ts.river_resources:0"
+  2,    2, "ts.pheasant:0"
+  1,    3, "ts.tundra_game:0"
+  2,    3, "ts.furs:0"
+  1,    4, "ts.arctic_ivory:0"
+  2,    4, "ts.arctic_oil:0"
+  1,    5, "ts.peat:0"
+  2,    5, "ts.spice:0"
+  1,    6, "ts.gems:0"
+  2,    6, "ts.fruit:0"
+  1,    7, "ts.forest_game:0"
+  2,    7, "ts.silk:0"
+  1,    8, "ts.coal:0"
+  2,    8, "ts.wine:0"
+  1,    9, "ts.gold:0"
+  2,    9, "ts.iron:0"
+  1,   10, "ts.fish:0"
+  2,   10, "ts.whales:0"
+
+  3,    6, "ts.seals:0"
 
 ; Strategic Resources
 
-  3,    0, "ts.saltpeter_0"
-  3,    1, "ts.aluminum_0"
-  3,    2, "ts.uranium_0"
-  3,    3, "ts.horses_0"
-  3,    4, "ts.elephant_0"
-  3,    5, "ts.rubber_0"
+  3,    0, "ts.saltpeter:0"
+  3,    1, "ts.aluminum:0"
+  3,    2, "ts.uranium:0"
+  3,    3, "ts.horses:0"
+  3,    4, "ts.elephant:0"
+  3,    5, "ts.rubber:0"
 
 ; Roads
 
@@ -116,15 +116,15 @@ tiles = { "row", "column","tag"
 
 ;add-ons
 
-  4,    0, "tx.oil_mine_0"
-  4,    1, "tx.oil_rig_0"
-  4,    2, "tx.mine_0"
+  4,    0, "tx.oil_mine:0"
+  4,    1, "tx.oil_rig:0"
+  4,    2, "tx.mine:0"
   4,    3, "tx.irrigation"
   4,    4, "tx.farmland"
-  4,    5, "tx.fallout_0"
-  4,    6, "tx.pollution_0"
-  4,    7, "tx.village_0"
-  4,    8, "tx.nets_0"
+  4,    5, "tx.fallout:0"
+  4,    6, "tx.pollution:0"
+  4,    7, "tx.village:0"
+  4,    8, "tx.nets:0"
 
 ; misc
 
diff --git a/data/isotrident/cities.spec b/data/isotrident/cities.spec
index 1565bb160b..0ee4bc26f5 100644
--- a/data/isotrident/cities.spec
+++ b/data/isotrident/cities.spec
@@ -62,15 +62,15 @@ tiles = { "row", "column", "tag"
 ; used by all city styles
 
  0,  0, "city.disorder"
- 0,  1, "base.airbase_mg_0"
+ 0,  1, "base.airbase_mg:0"
  0,  2, "tx.airbase_full"
- 0,  3, "base.airstrip_mg_0"
- 0,  4, "base.fortress_fg_0"
- 0,  5, "base.fortress_bg_0"
- 0,  6, "extra.ruins_mg_0"
- 0,  7, "base.buoy_mg_0"
- 0,  8, "base.outpost_fg_0"
- 0,  9, "base.outpost_bg_0"
+ 0,  3, "base.airstrip_mg:0"
+ 0,  4, "base.fortress_fg:0"
+ 0,  5, "base.fortress_bg:0"
+ 0,  6, "extra.ruins_mg:0"
+ 0,  7, "base.buoy_mg:0"
+ 0,  8, "base.outpost_fg:0"
+ 0,  9, "base.outpost_bg:0"
 
 ;
 ; city tiles
diff --git a/data/isotrident/select.spec b/data/isotrident/select.spec
index bbbd004bab..7a58422e07 100644
--- a/data/isotrident/select.spec
+++ b/data/isotrident/select.spec
@@ -21,8 +21,8 @@ dy = 32
 pixel_border = 0
 
 tiles = { "row", "column", "tag"
-  0, 0, "unit.select_0"
-  0, 1, "unit.select_1"
-  0, 2, "unit.select_2"
-  0, 3, "unit.select_3"
+  0, 0, "unit.select:0"
+  0, 1, "unit.select:1"
+  0, 2, "unit.select:2"
+  0, 3, "unit.select:3"
 }
diff --git a/data/isotrident/terrain1.spec b/data/isotrident/terrain1.spec
index b1c2d338c9..0bd2412ccc 100644
--- a/data/isotrident/terrain1.spec
+++ b/data/isotrident/terrain1.spec
@@ -55,40 +55,40 @@ tiles = { "row", "column","tag"
 
 ; Terrain special resources:
 
- 0,   2, "ts.oasis_0"
- 0,   3, "ts.oil_0"
+ 0,   2, "ts.oasis:0"
+ 0,   3, "ts.oil:0"
 
- 1,   2, "ts.buffalo_0"
- 1,   3, "ts.wheat_0"
+ 1,   2, "ts.buffalo:0"
+ 1,   3, "ts.wheat:0"
 
- 2,  2, "ts.fish_0"
- 2,  3, "ts.whales_0"
+ 2,  2, "ts.fish:0"
+ 2,  3, "ts.whales:0"
 
- 7,   7, "ts.grassland_resources_0", "ts.river_resources_0"
+ 7,   7, "ts.grassland_resources:0", "ts.river_resources:0"
 
- 3,   2, "ts.pheasant_0"
- 3,   3, "ts.silk_0"
+ 3,   2, "ts.pheasant:0"
+ 3,   3, "ts.silk:0"
 
- 4,   2, "ts.coal_0"
- 4,   3, "ts.wine_0"
+ 4,   2, "ts.coal:0"
+ 4,   3, "ts.wine:0"
 
- 5,   2, "ts.gold_0"
- 5,   3, "ts.iron_0"
+ 5,   2, "ts.gold:0"
+ 5,   3, "ts.iron:0"
 
- 6,   2, "ts.tundra_game_0"
- 6,   3, "ts.furs_0"
+ 6,   2, "ts.tundra_game:0"
+ 6,   3, "ts.furs:0"
 
- 7,   2, "ts.arctic_ivory_0"
- 7,   3, "ts.arctic_oil_0"
+ 7,   2, "ts.arctic_ivory:0"
+ 7,   3, "ts.arctic_oil:0"
 
- 8,   2, "ts.peat_0"
- 8,   3, "ts.spice_0"
+ 8,   2, "ts.peat:0"
+ 8,   3, "ts.spice:0"
 
- 9,   2, "ts.gems_0"
- 9,   3, "ts.fruit_0"
- 9,   4, "ts.horses_0"
- 9,   5, "ts.seals_0"
- 9,   6, "ts.forest_game_0"
+ 9,   2, "ts.gems:0"
+ 9,   3, "ts.fruit:0"
+ 9,   4, "ts.horses:0"
+ 9,   5, "ts.seals:0"
+ 9,   6, "ts.forest_game:0"
 
 
 ; Maglevs
@@ -122,15 +122,15 @@ tiles = { "row", "column","tag"
  12, 8, "road.rail_nw"
 
 ; Add-ons
- 2, 7, "tx.oil_mine_0"
- 2, 8, "tx.oil_rig_0"
+ 2, 7, "tx.oil_mine:0"
+ 2, 8, "tx.oil_rig:0"
  3, 7, "tx.irrigation"
  4, 7, "tx.farmland"
- 5, 7, "tx.mine_0"
- 6, 7, "tx.pollution_0"
- 8, 7, "tx.village_0"
- 8, 8, "tx.nets_0"
- 9, 7, "tx.fallout_0"
+ 5, 7, "tx.mine:0"
+ 6, 7, "tx.pollution:0"
+ 8, 7, "tx.village:0"
+ 8, 8, "tx.nets:0"
+ 9, 7, "tx.fallout:0"
 }
 
 
diff --git a/data/trident/select.spec b/data/trident/select.spec
index 61967286cc..b9e3bd12e6 100644
--- a/data/trident/select.spec
+++ b/data/trident/select.spec
@@ -21,8 +21,8 @@ dy = 30
 pixel_border = 0
 
 tiles = { "row", "column", "tag"
-  0, 0, "unit.select_0"
-  0, 1, "unit.select_1"
-  0, 2, "unit.select_2"
-  0, 3, "unit.select_3"
+  0, 0, "unit.select:0"
+  0, 1, "unit.select:1"
+  0, 2, "unit.select:2"
+  0, 3, "unit.select:3"
 }
diff --git a/data/trident/tiles.spec b/data/trident/tiles.spec
index fe37e5a762..12216139b7 100644
--- a/data/trident/tiles.spec
+++ b/data/trident/tiles.spec
@@ -453,58 +453,58 @@ tiles = { "row", "column", "tag"
 
 ; Terrain special resources:
 
- 14,  0, "ts.spice_0"
- 14,  1, "ts.furs_0"
- 14,  2, "ts.peat_0"
- 14,  3, "ts.arctic_ivory_0"
- 14,  4, "ts.fruit_0"
- 14,  5, "ts.iron_0"
- 14,  6, "ts.whales_0"
- 14,  7, "ts.wheat_0"
- 14,  8, "ts.pheasant_0"
- 14,  9, "ts.buffalo_0"
- 14, 10, "ts.silk_0"
- 14, 11, "ts.wine_0"
-
- 15,  0, "ts.seals_0"
- 15,  1, "ts.oasis_0"
- 15,  2, "ts.forest_game_0"
- 15,  3, "ts.grassland_resources_0"
- 15,  4, "ts.coal_0"
- 15,  5, "ts.gems_0"
- 15,  6, "ts.gold_0"
- 15,  7, "ts.fish_0"
- 15,  8, "ts.horses_0"
- 15,  9, "ts.river_resources_0"
- 15, 10, "ts.oil_0", "ts.arctic_oil_0"
- 15, 11, "ts.tundra_game_0"
+ 14,  0, "ts.spice:0"
+ 14,  1, "ts.furs:0"
+ 14,  2, "ts.peat:0"
+ 14,  3, "ts.arctic_ivory:0"
+ 14,  4, "ts.fruit:0"
+ 14,  5, "ts.iron:0"
+ 14,  6, "ts.whales:0"
+ 14,  7, "ts.wheat:0"
+ 14,  8, "ts.pheasant:0"
+ 14,  9, "ts.buffalo:0"
+ 14, 10, "ts.silk:0"
+ 14, 11, "ts.wine:0"
+
+ 15,  0, "ts.seals:0"
+ 15,  1, "ts.oasis:0"
+ 15,  2, "ts.forest_game:0"
+ 15,  3, "ts.grassland_resources:0"
+ 15,  4, "ts.coal:0"
+ 15,  5, "ts.gems:0"
+ 15,  6, "ts.gold:0"
+ 15,  7, "ts.fish:0"
+ 15,  8, "ts.horses:0"
+ 15,  9, "ts.river_resources:0"
+ 15, 10, "ts.oil:0", "ts.arctic_oil:0"
+ 15, 11, "ts.tundra_game:0"
 
 ; Terrain Strategic Resources
 
- 15, 12, "ts.aluminum_0"
- 15, 13, "ts.uranium_0"
- 15, 14, "ts.saltpeter_0"
- 15, 15, "ts.elephant_0"
+ 15, 12, "ts.aluminum:0"
+ 15, 13, "ts.uranium:0"
+ 15, 14, "ts.saltpeter:0"
+ 15, 15, "ts.elephant:0"
 
 ; Terrain improvements and similar:
 
  16,  0, "tx.farmland"
  16,  1, "tx.irrigation"
- 16,  2, "tx.mine_0"
- 16,  3, "tx.oil_mine_0"
- 16,  4, "tx.pollution_0"
- 16,  5, "tx.fallout_0"
- 16, 13, "tx.oil_rig_0"
- 16, 14, "tx.nets_0"
+ 16,  2, "tx.mine:0"
+ 16,  3, "tx.oil_mine:0"
+ 16,  4, "tx.pollution:0"
+ 16,  5, "tx.fallout:0"
+ 16, 13, "tx.oil_rig:0"
+ 16, 14, "tx.nets:0"
 
 ; Bases
- 16,  6, "base.buoy_mg_0"
- 16,  7, "extra.ruins_mg_0"
- 16,  8, "tx.village_0"
- 16,  9, "base.airstrip_mg_0"
- 16, 10, "base.airbase_mg_0"
- 16, 11, "base.outpost_mg_0"
- 16, 12, "base.fortress_bg_0"
+ 16,  6, "base.buoy_mg:0"
+ 16,  7, "extra.ruins_mg:0"
+ 16,  8, "tx.village:0"
+ 16,  9, "base.airstrip_mg:0"
+ 16, 10, "base.airbase_mg:0"
+ 16, 11, "base.outpost_mg:0"
+ 16, 12, "base.fortress_bg:0"
 
 ; Numbers: city size: (also used for goto)
 
-- 
2.45.2

