These maps show you the preferred trading town of each village, and what they produce. You can then deduce different things depending on what's of interest to you. Workshop placements are just an example, but you could also use these maps to determine where your raids will be the most harmful to your enemy's economy. I suppose there are many other applications, Bannerlord's campaign is a dynamic system where anything can influence everything. It's up to the player to be creative with what to deduce from all this data.
I'm not sure, maybe you're right.
I suppose it's still valid. You don't have much control over your caravans as a player, so these maps are more for those who trade by themselves.
These maps show the preferred trading town for each village, but they need to be in the same kingdom. That's why Gersegos doesn't trade with Epicrotea at the start of the campaign. It wants to, but it can't. In other words, these maps show what the situation would be, if all the surroundings were united under the same kingdom.
And here I thought you were trying to achieve something with your daily gibe.
I like the idea, not sure why though. Gimme a couple days.
Not sure what to think of the impassable terrain. On one hand it annoys me a lot in my travels (in part because you can't always tell what is impassable), on the other hand I think they add a unique tactical identity to each and every corner of the map. Granted, it does feel rushed. Could've been done much better.
One town only. Villages that are linked to a castle go for the closest friendly town, which can lead to some funny situations.
Sure, however I never felt like you were supposed to take Calradia seriously, unlike Middle Earth. M&B has that light-hearted, almost humorous tone similar to children's stories, and I don't mind it, quite the contrary. It reminds me of the maps I used to make as a kid.
Lord of Shadows 说:
Zamensis 说:
["swadian_inf_multiplayer_ai","3_milicien_vet", "Swadian Sergeants", tf_guarantee_all, no_scene, reserved, fac_kingdom_7, [itm_mace_3,itm_mace_4,itm_spiked_mace,itm_cartridges,itm_swadia_pistol,itm_spiked_helmet,itm_leather_boots,itm_nomad_boots,itm_red_shirt,itm_red_shirt_sp,itm_tabard,itm_1752_tabard_a,itm_1752_tabard_b,itm_1752_tabard_c], level_3_attrib, wpz(120,100,100), knows_common_3, swadian_face_young_1, swadian_face_middle_2 ],
["spiked_mace", "Spiked Mace 28b", [("spiked_mace_new",0)], itp_type_one_handed_wpn|itp_can_knock_down|itp_merchandise| itp_primary|itp_wooden_parry, itc_scimitar|itcf_carry_mace_left_hip,180 , weight(3.5)|difficulty(0)|spd_rtng(98) | weapon_length(70)|swing_damage(28 , blunt) | thrust_damage(0 , pierce),imodbits_pick ],
["mace_3", "SpikedDick 23", [("mace_c",0)], itp_type_one_handed_wpn|itp_can_knock_down|itp_merchandise| itp_primary|itp_wooden_parry, itc_scimitar|itcf_carry_mace_left_hip, 152 , weight(2.75)|difficulty(0)|spd_rtng(98) | weapon_length(70)|swing_damage(23 , blunt) | thrust_damage(0 , pierce),imodbits_mace ],
["mace_4", "Winged 24", [("mace_b",0)], itp_type_one_handed_wpn|itp_can_knock_down|itp_merchandise| itp_primary|itp_wooden_parry, itc_scimitar|itcf_carry_mace_left_hip, 212 , weight(2.75)|difficulty(0)|spd_rtng(98) | weapon_length(70)|swing_damage(24 , blunt) | thrust_damage(0 , pierce),imodbits_mace ],
(try_begin),
(this_or_next|eq, ":troop_no", "trp_knight_1_10"),
(this_or_next|eq, ":troop_no", "trp_knight_1_11"),
...
#Currently called from process_ai_state, could be called from elsewhere
#It is used for lord to (1)Court ladies (2)Collect rents (3)Look for volunteers
("troop_does_business_in_center",
("troop_does_business_in_center",
[
(store_script_param, ":troop_no", 1),
(store_script_param, ":center_no", 2),
### These two lines :
(store_script_param, ":party_no", 3),
(party_stack_get_troop_id, ":party_leader", ":party_no", 0),
(try_begin),
(this_or_next|eq, ":party_leader", "trp_knight_1_10"),
(this_or_next|eq, ":party_leader", "trp_knight_1_11"),
...
SCRIPT ERROR ON OPCODE 23: Invalid Script Parameter ID:2; LINE NO:2:
At script: troop_does_business_in_center
### HERE ARE MY CHANGES
(try_begin),
(is_between, ":party_leader",npc_alt_lord_begin, npc_alt_lord_end),
(faction_get_slot, ":party_template_a", ":party_faction", slot_faction_reinforcements_alt_a),
(faction_get_slot, ":party_template_b", ":party_faction", slot_faction_reinforcements_alt_b),
(faction_get_slot, ":party_template_c", ":party_faction", slot_faction_reinforcements_alt_c),
(else_try),
### END OF MY CHANGES
npc_alt_lord_begin = "trp_knight_1_16"
npc_alt_lord_end = "trp_knight_1_18"