Implementing Marian Reforms in M2TW
Introduction
The 'marian reforms' mechanic is a leftover from RTW. It is a specific event which is triggered once certain hardcoded conditions are met. The status of the event (activated/not activated) can affect building effects through a specific conditional, as well as the factions' bodyguard units through a unit attribute.
Requirements
In order to be triggered, marian reforms require:
1. removing the 'marian_reforms_disabled' line from descr_strat2. adding the "italy" hidden resource to any region(s) in descr_regions (if the HR is not already defined at the top of your export_descr_buildings, it should also be added there)Code:... start_date 1080 summer end_date 1530 winter timescale 2.00marian_reforms_disabledrebelling_characters_active gladiator_uprising_disabled night_battles_enabled show_date_as_turns brigand_spawn_value 20 pirate_spawn_value 28 ...3. adding a new culture with the internal name "roman" (or renaming an existing one) and assigning at least one faction to itCode:London_Province London england English_Rebels 232 41 46 atlantic, explorers_guild, woodsmens_guild, italy 5 4 religions { catholic 85 orthodox 0 islam 0 pagan 13 heretic 2 }Code:hidden_resources sparta rome italy america atlantic explorers_guild swordsmiths_guild woodsmens_guild teutonic_knights_chapter_house knights_of_santiago_chapter_house crusade jihad arguin horde_target no_pirates no_brigandsThis is a slightly more involved procedure than editing a couple of lines (though it's not hard), and detailing it is beyond the scope of the present tutorial, so please check this thread out for a walkthrough of how to add a new culture in M2. Renaming one is a similar process.
Activation
The marian reforms will be activated when a faction that belongs to the 'roman' culture controls a region with the 'italy' hidden resource and upgrades its settlement to 'huge city'. There will be no message or other visual indication that the activation took place.
Activation 'by default'
It is possible to set the marian reforms as already activated at campaign start by adding the "marian_reforms_activated" line at the top of desc_strat.Code:... start_date 1080 summer end_date 1530 winter timescale 2.00 marian_reforms_activatedmarian_reforms_disabledrebelling_characters_active gladiator_uprising_disabled night_battles_enabled show_date_as_turns brigand_spawn_value 20 pirate_spawn_value 28 ...
Effects
When the reforms are activated, there are two ways they can affect the campaign.
1. Upgraded bodyguard unitsIn order to achieve this certain units must be given the "general_unit_upgrade" attribute in export_descr_unit. Those units must be listed below the regular BG unit of the factions they are available to, otherwise the engine will pick them as the default ones. It is not necessary to have upgraded BGs for every faction.2. Building effects
When the reforms are triggered, the family members of every faction will switch to their upgraded bodyguard unit, if one is available.Code:type NE Late Bodyguard dictionary NE_Late_Bodyguard ; General's Bodyguard category cavalry class heavy voice_type General banner faction main_cavalry banner holy crusade_cavalry soldier NE_Late_Bodyguard, 16, 0, 1 mount armoured horse mount_effect elephant -4, camel -4 attributes sea_faring, hide_forest, very_hardy, can_withdraw, general_unit, general_unit_upgrade formation 2, 4.4, 3, 6, 2, square stat_health 2, 0 stat_pri 13, 8, no, 0, 0, melee, melee_blade, piercing, spear, 25, 1 ;stat_pri_ex 0, 0, 0 stat_pri_attr no stat_sec 14, 4, no, 0, 0, melee, melee_blade, piercing, sword, 25, 1 ;stat_sec_ex 0, 0, 0 stat_sec_attr no stat_pri_armour 9, 5, 3, metal ;stat_armour_ex 9, 10, 0, 0, 5, 3, 3, metal stat_sec_armour 0, 0, flesh stat_heat 6 stat_ground 0, -2, -4, 0 stat_mental 11, normal, trained stat_charge_dist 45 stat_fire_delay 0 stat_food 60, 300 stat_cost 1, 870, 250, 120, 95, 870, 1, 210 armour_ug_levels 5, 6 armour_ug_models NE_Late_Bodyguard, NE_Late_Bodyguard_ug1 ownership england, scotland, france, hre, denmark, poland, hungary era 2 england, scotland, france, hre, denmark, poland, hungary ;unit_info 13, 0, 34This can be achieved by using the "marian_reforms" conditional in export_descr_buildings.
When the reforms are triggered, any building effects with the conditional will become active, while those with a negative conditional will become inactive.Code:recruit_pool "Longbowmen" 1 0.7 6 0 requires factions { england, } and marian_reforms recruit_pool "Highland Archers" 1 0.7 6 0 requires factions { scotland, } and not marian_reforms