diff --git a/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_a_m.xml b/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_a_m.xml
new file mode 100644
index 0000000000..0cbed1602f
--- /dev/null
+++ b/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_a_m.xml
@@ -0,0 +1,100 @@
+
+
+
+
+
+ skeletal/new/m_tunic_short.dae
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ player_trans_norm_spec.xml
+
diff --git a/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_b_m.xml b/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_b_m.xml
new file mode 100644
index 0000000000..6dc4efc300
--- /dev/null
+++ b/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_b_m.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+ skeletal/new/m_tunic_short.dae
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ player_trans_norm_spec.xml
+
diff --git a/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_e_m.xml b/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_e_m.xml
new file mode 100644
index 0000000000..b526d822a1
--- /dev/null
+++ b/binaries/data/mods/public/art/actors/units/carthaginians/infantry_spearman_e_m.xml
@@ -0,0 +1,114 @@
+
+
+
+
+
+ skeletal/new/m_armor_tunic_short.dae
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ player_trans_norm_spec.xml
+
diff --git a/binaries/data/mods/public/art/textures/ui/session/portraits/units/cart/infantry_spearman_2.png b/binaries/data/mods/public/art/textures/ui/session/portraits/units/cart/infantry_spearman_2.png
new file mode 100644
index 0000000000..0a98003695
--- /dev/null
+++ b/binaries/data/mods/public/art/textures/ui/session/portraits/units/cart/infantry_spearman_2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:adb6408f9af869767bd402a2b58b3af19adf6621bc54ad16b741319b02df9421
+size 101835
diff --git a/binaries/data/mods/public/simulation/data/civs/cart.json b/binaries/data/mods/public/simulation/data/civs/cart.json
index 19db79ade6..010d544e3c 100644
--- a/binaries/data/mods/public/simulation/data/civs/cart.json
+++ b/binaries/data/mods/public/simulation/data/civs/cart.json
@@ -21,14 +21,19 @@
],
"CivBonuses": [
{
- "Name": "Commercial Acumen",
- "History": "",
- "Description": "Merchant Ships +25% trade gain."
+ "Name": "Trademasters",
+ "History": "The Carthaginians were broadly known for their extensive trade over the Mediterranean Sea.",
+ "Description": "Trade ships are available in the Village Phase."
},
{
- "Name": "Desirable Products",
- "History": "",
- "Description": "Docks and Markets +10% international trade bonus."
+ "Name": "Mining Economy",
+ "History": "The Carthaginian economy was centered around mining, with stone comprising much of Carthage's structures.",
+ "Description": "Stone mining technologies are free and instant."
+ },
+ {
+ "Name": "Numidian Cavalry",
+ "History": "The Numidian cavalry's horses, ancestors of the Berber horse, were small compared with other horses of the era, and were well adapted for faster movement over long distances.",
+ "Description": "Cavalry Javelineers +10% walk speed."
}
],
"WallSets": [
diff --git a/binaries/data/mods/public/simulation/data/technologies/celtic_auxiliaries.json b/binaries/data/mods/public/simulation/data/technologies/celtic_auxiliaries.json
new file mode 100644
index 0000000000..dbc6066a92
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/technologies/celtic_auxiliaries.json
@@ -0,0 +1,25 @@
+{
+ "genericName": "Celtic Auxiliaries",
+ "description": "The Second Punic War, Celtic troops were mainly auxiliaries.",
+ "cost": {
+ "metal": 550
+ },
+ "requirements": {
+ "all": [
+ { "tech": "phase_city" },
+ { "civ": "cart" }
+ ]
+ },
+ "requirementsTooltip": "Unlocked in City Phase.",
+ "icon": "handshake.png",
+ "researchTime": 45,
+ "tooltip": "Mercenaries −50% metal cost but +50 food cost.",
+ "modifications": [
+ { "value": "Cost/Resources/metal", "multiply": 0.5 },
+ { "value": "Cost/Resources/food", "add": 50 },
+ { "value": "Loot/metal", "multiply": 0.5 },
+ { "value": "Loot/food", "add": 5 }
+ ],
+ "affects": ["Mercenary Swordsman"],
+ "soundComplete": "interface/alarm/alarm_upgradearmory.xml"
+}
diff --git a/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_01.json b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_01.json
new file mode 100644
index 0000000000..c9aa137fd7
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_01.json
@@ -0,0 +1,17 @@
+{
+ "genericName": "Servants",
+ "autoResearch": true,
+ "description": "Hire servants to help quarry stone. Increases stone gathering rates.",
+ "requirements": {
+ "all": [
+ { "tech": "phase_village" }
+ ]
+ },
+ "icon": "mining_stone_01.png",
+ "tooltip": "Workers +25% stone gather rate.",
+ "modifications": [
+ { "value": "ResourceGatherer/Rates/stone.rock", "multiply": 1.25 }
+ ],
+ "affects": ["Worker"],
+ "soundComplete": "interface/alarm/alarm_upgradearmory.xml"
+}
\ No newline at end of file
diff --git a/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_02.json b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_02.json
new file mode 100644
index 0000000000..d2f0fbd043
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_02.json
@@ -0,0 +1,17 @@
+{
+ "genericName": "Servants",
+ "autoResearch": true,
+ "description": "Hire servants to help quarry stone. Increases stone gathering rates.",
+ "requirements": {
+ "all": [
+ { "tech": "phase_town" }
+ ]
+ },
+ "icon": "mining_stone_02.png",
+ "tooltip": "Workers +25% stone gather rate.",
+ "modifications": [
+ { "value": "ResourceGatherer/Rates/stone.rock", "multiply": 1.25 }
+ ],
+ "affects": ["Worker"],
+ "soundComplete": "interface/alarm/alarm_upgradearmory.xml"
+}
\ No newline at end of file
diff --git a/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_03.json b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_03.json
new file mode 100644
index 0000000000..1fee1662f1
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_stone_03.json
@@ -0,0 +1,17 @@
+{
+ "genericName": "Servants",
+ "autoResearch": true,
+ "description": "Hire servants to help quarry stone. Increases stone gathering rates.",
+ "requirements": {
+ "all": [
+ { "tech": "phase_city" }
+ ]
+ },
+ "icon": "mining_stone_03.png",
+ "tooltip": "Workers +25% stone gather rate.",
+ "modifications": [
+ { "value": "ResourceGatherer/Rates/stone.rock", "multiply": 1.25 }
+ ],
+ "affects": ["Worker"],
+ "soundComplete": "interface/alarm/alarm_upgradearmory.xml"
+}
\ No newline at end of file
diff --git a/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_walls.json b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_walls.json
index d19872074f..9dcf158908 100644
--- a/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_walls.json
+++ b/binaries/data/mods/public/simulation/data/technologies/civbonuses/cart_walls.json
@@ -3,7 +3,7 @@
"autoResearch": true,
"description": "Carthaginians built their city walls in three concentric circuits. These walls were never breached. Even when the city was taken by the Romans, it was via the city's harbor, not by storming its walls.",
"icon": "wall.png",
- "tooltip": "City Walls +100% build time, +100% stone cost, and +200% health.",
+ "tooltip": "City Walls +200% health, but +100% build time and stone cost.",
"requirements": { "civ": "cart" },
"modifications": [
{ "value": "Cost/BuildTime", "multiply": 2 },
diff --git a/binaries/data/mods/public/simulation/data/technologies/gather_mining_serfs.json b/binaries/data/mods/public/simulation/data/technologies/gather_mining_serfs.json
index c5d39f55fd..9eb59ceb93 100644
--- a/binaries/data/mods/public/simulation/data/technologies/gather_mining_serfs.json
+++ b/binaries/data/mods/public/simulation/data/technologies/gather_mining_serfs.json
@@ -9,7 +9,12 @@
"stone": 200
},
"supersedes": "gather_mining_servants",
- "requirements": { "tech": "phase_town" },
+ "requirements": {
+ "all": [
+ { "tech": "phase_town" },
+ { "notciv": "cart" }
+ ]
+ },
"requirementsTooltip": "Unlocked in Town Phase.",
"icon": "mining_stone_02.png",
"researchTime": 50,
diff --git a/binaries/data/mods/public/simulation/data/technologies/gather_mining_servants.json b/binaries/data/mods/public/simulation/data/technologies/gather_mining_servants.json
index ebe606de7d..9379846fac 100644
--- a/binaries/data/mods/public/simulation/data/technologies/gather_mining_servants.json
+++ b/binaries/data/mods/public/simulation/data/technologies/gather_mining_servants.json
@@ -12,7 +12,12 @@
"food": 200,
"stone": 100
},
- "requirements": { "tech": "phase_village" },
+ "requirements": {
+ "all": [
+ { "tech": "phase_village" },
+ { "notciv": "cart" }
+ ]
+ },
"icon": "mining_stone_01.png",
"researchTime": 40,
"tooltip": "Workers +25% stone gather rate.",
diff --git a/binaries/data/mods/public/simulation/data/technologies/gather_mining_slaves.json b/binaries/data/mods/public/simulation/data/technologies/gather_mining_slaves.json
index b0625bd3fb..8d78642f0a 100644
--- a/binaries/data/mods/public/simulation/data/technologies/gather_mining_slaves.json
+++ b/binaries/data/mods/public/simulation/data/technologies/gather_mining_slaves.json
@@ -14,7 +14,12 @@
"stone": 300
},
"supersedes": "gather_mining_serfs",
- "requirements": { "tech": "phase_city" },
+ "requirements": {
+ "all": [
+ { "tech": "phase_city" },
+ { "notciv": "cart" }
+ ]
+ },
"requirementsTooltip": "Unlocked in City Phase.",
"icon": "mining_stone_03.png",
"researchTime": 60,
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart/embassy_celtic.xml b/binaries/data/mods/public/simulation/templates/structures/cart/embassy_celtic.xml
index f9329b899a..dbfbd48797 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart/embassy_celtic.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart/embassy_celtic.xml
@@ -25,6 +25,11 @@
+
+
+ celtic_auxiliaries
+
+
units/{native}/infantry_swordsman_gaul_b
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart/embassy_iberian.xml b/binaries/data/mods/public/simulation/templates/structures/cart/embassy_iberian.xml
index 91f007329d..49cf6a5847 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart/embassy_iberian.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart/embassy_iberian.xml
@@ -2,7 +2,8 @@
- 200
+ 100
+ 100
@@ -13,7 +14,8 @@
structures/embassy_iberian.png
- 40
+ 20
+ 20
@@ -22,7 +24,6 @@
units/{native}/infantry_javelineer_iber_b
units/{native}/infantry_slinger_iber_b
- units/{native}/cavalry_swordsman_iber_b
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart/embassy_italic.xml b/binaries/data/mods/public/simulation/templates/structures/cart/embassy_italic.xml
index 1a675d1c53..28aee99141 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart/embassy_italic.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart/embassy_italic.xml
@@ -2,7 +2,8 @@
- 200
+ 100
+ 100
@@ -20,14 +21,15 @@
structures/embassy_italic.png
- 40
+ 20
+ 20
- units/{native}/infantry_swordsman_ital_b
+ units/{native}/infantry_spearman_ital_b
units/{native}/cavalry_spearman_ital_b
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/cavalry_javelineer_b.xml b/binaries/data/mods/public/simulation/templates/units/cart/cavalry_javelineer_b.xml
index 83069d090a..a8438c2b6c 100644
--- a/binaries/data/mods/public/simulation/templates/units/cart/cavalry_javelineer_b.xml
+++ b/binaries/data/mods/public/simulation/templates/units/cart/cavalry_javelineer_b.xml
@@ -10,6 +10,9 @@
units/cart/cavalry_javelineer_a
+
+ 1.1
+
units/carthaginians/cavalry_javelinist_b_m.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_a.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_a.xml
index 5289547be5..a9bde8a9f5 100644
--- a/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_a.xml
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_a.xml
@@ -7,6 +7,6 @@
units/cart/infantry_javelineer_iber_e
- units/iberians/infantry_javelinist_a.xml
+ units/iberians/infantry_javelinist_a_fire.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_b.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_b.xml
index be95326ab9..c7c3085eb0 100644
--- a/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_b.xml
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_b.xml
@@ -1,5 +1,19 @@
+
+
+
+
+ 3000
+
+ 1
+
+ Stack
+ 9000
+
+
+
+
structures/{civ}/super_dock
@@ -8,6 +22,11 @@
structures/{civ}/embassy_italic
+
+
+ 80
+
+
cart
Iberian Mercenary Skirmisher
@@ -18,10 +37,13 @@
phase_town
+
+ 8
+
units/cart/infantry_javelineer_iber_a
- units/iberians/infantry_javelinist_b.xml
+ units/iberians/infantry_javelinist_b_fire.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_e.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_e.xml
index 4e9907eaa0..1ee54696b2 100644
--- a/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_e.xml
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_javelineer_iber_e.xml
@@ -5,6 +5,6 @@
- units/iberians/infantry_javelinist_e.xml
+ units/iberians/infantry_javelinist_e_fire.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_slinger_iber_b.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_slinger_iber_b.xml
index 177c1bae18..a1663de89f 100644
--- a/binaries/data/mods/public/simulation/templates/units/cart/infantry_slinger_iber_b.xml
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_slinger_iber_b.xml
@@ -1,5 +1,14 @@
+
+
+
+ 1.15
+
+ 50
+ 1750
+
+
structures/{civ}/super_dock
@@ -8,6 +17,11 @@
structures/{civ}/embassy_italic
+
+
+ 75
+
+
cart
Balearic Slinger
@@ -18,6 +32,9 @@
phase_town
+
+ 7
+
units/cart/infantry_slinger_iber_a
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_a.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_a.xml
new file mode 100644
index 0000000000..b693f134a5
--- /dev/null
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_a.xml
@@ -0,0 +1,12 @@
+
+
+
+ Advanced
+
+
+ units/cart/infantry_spearman_ital_e
+
+
+ units/carthaginians/infantry_spearman_a_m.xml
+
+
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_b.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_b.xml
new file mode 100644
index 0000000000..2b712baed1
--- /dev/null
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_b.xml
@@ -0,0 +1,27 @@
+
+
+
+
+ structures/{civ}/super_dock
+ structures/{civ}/embassy_celtic
+ structures/{civ}/embassy_iberian
+ structures/{civ}/embassy_italic
+
+
+
+ cart
+ Samnite Spearman
+ Seḫīr Romaḥ
+ units/cart/infantry_spearman_ital_b
+ units/cart/infantry_spearman_2.png
+
+ phase_town
+
+
+
+ units/cart/infantry_spearman_ital_a
+
+
+ units/carthaginians/infantry_spearman_b_m.xml
+
+
diff --git a/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_e.xml b/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_e.xml
new file mode 100644
index 0000000000..fa5a00a06d
--- /dev/null
+++ b/binaries/data/mods/public/simulation/templates/units/cart/infantry_spearman_ital_e.xml
@@ -0,0 +1,10 @@
+
+
+
+ Elite
+
+
+
+ units/carthaginians/infantry_spearman_e_m.xml
+
+