Lord Jamestown, вот этот скрипт из Руси
#script_cf_add_town_wakler
#arg1=type
("cf_add_town_wakler", [
(store_script_param_1,":type"),
# (assign,":spawn_at",-1),
# (assign, ":max_weight", -1),
# (try_for_range,":i",32,40),
# # (entry_point_get_position,pos1,":i"),
# # (assign,":empty",1),
# # (try_for_agents,":agent"),
# # (eq,":empty",1) ,
# # (agent_get_position,pos2,":agent"),
# # (get_distance_between_positions,":dist",pos1,pos2),
# # (le,":dist",1000),
# # #(assign,":empty",0),
# # (try_end),
# # (eq,":empty",1),
# (store_random_in_range, ":weight", 0, 100),
# (gt,":weight",":max_weight"),
# (assign, ":spawn_at", ":i"),
# (assign, ":max_weight", ":weight"),
# (try_end),
#(gt,":spawn_at",0),
# (assign,reg1,":spawn_at"),
# (display_message,"@spawn_at={reg1}"),
(call_script,"script_get_random_in_range",32,40),
(assign,":spawn_at",reg0),
# (assign,reg3,":spawn_at"),
# (assign,reg4,":type"),
# (display_message,"@spawn_at={reg0} {reg4}"),
(store_faction_of_party,":fac","$current_town"),
(try_begin),
(eq,":type",1), #guard - очевидно добавляет фракционные войска из соотв. ярусов (tier)
# (store_faction_of_party,":fac","$current_town"),
(this_or_next|is_between,":fac", npc_kingdoms_begin,npc_kingdoms_end),#sp. R.
(eq,":fac","fac_kingdom_5"),###это для минорной фракции Литвы т.ч. можно убрать
(call_script,"script_get_random_in_range",slot_faction_tier_2_troop ,slot_faction_tier_5_troop+1),
(assign,":rnd",reg0),
(faction_get_slot,":troop",":fac",":rnd"),
(else_try),
(eq,":type",2),#pilgrim - пилигримы
(try_begin),
(eq,":fac","fac_kingdom_2"),###только для 2-ой фракции, в Руси это ЗолотоОрдынцы
(call_script,"script_get_random_in_range","trp_town_walker_5","trp_town_walker_7"),
(else_try),
(call_script,"script_get_random_in_range","trp_town_walker_3","trp_town_walker_5"),
(try_end),
(assign,":troop",reg0),
(else_try),
(eq,":type",3),#shnobleman - Нобили т.е. богатые горожане
(try_begin),
(eq,":fac","fac_kingdom_2"),###опять только Золотая Орда
(call_script,"script_get_random_in_range","trp_town_walker_9","trp_Ramun_the_slave_trader"),
(else_try),
(call_script,"script_get_random_in_range","trp_town_walker_7","trp_town_walker_9"),
(try_end),
(assign,":troop",reg0),
(else_try),#townperson
(try_begin),
(eq,":fac","fac_kingdom_2"),###снова Орда
(call_script,"script_get_random_in_range","trp_horde_townsman","trp_village_walker_1"),
(else_try),
(call_script,"script_get_random_in_range","trp_town_walker_1","trp_horde_townsman"),
(try_end),
(assign,":troop",reg0),
(try_end),
###Обрати внимание на следующую закомментированую секцию. скорее-всего в ней собака и зарыта
#(store_random_in_range, ":weight", 0, 100),
#(try_begin),
#(ge,":weight",50),#townperson
#(store_random_in_range,":troop","trp_town_walker_1","trp_village_walker_1"),
#(else_try),
#(ge,":weight",40),#pilgrim
#(store_random_in_range,":troop","trp_town_walker_3","trp_town_walker_5"),
#(else_try),
#(ge,":weight",30),#shnobleman
#(store_random_in_range,":troop","trp_town_walker_5","trp_Ramun_the_slave_trader"),
#(else_try),#guard
#(store_faction_of_party,":fac","$current_town"),
#(this_or_next|is_between,":fac","fac_kingdom_1","fac_kingdoms_end"),
#(eq,":fac","fac_kingdom_5"),
#(store_random_in_range,":rnd",slot_faction_tier_1_troop ,slot_faction_tier_5_troop+1),
#(faction_get_slot,":troop",":fac",":rnd"),
#(try_end),
#(assign,reg1,":spawn_at"),
#(assign,reg2,":troop"),
#(display_message,"@{reg1} {reg2}"),
(add_visitors_to_current_scene, ":spawn_at", ":troop", 1),
#(display_message,"@spawn"),
(val_add,"$town_walker_spawned",1),
]),
предварительно надо добавить Новых горожан, пилигримов, прочую нечисть в module_troops.py
опять же кусок кода из Руси, сразу после "spy_walker_2"
#rusmod
["town_walker_3","Pilgrim","Townsmen",tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
[itm_pilgrim_disguise,itm_pilgrim_hood,itm_practice_staff],
def_attrib|level(4),wp(60),knows_common,man_face_young_1, man_face_old_2],
["town_walker_4","Pilgrim","Townswomen",tf_female|tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
[itm_pilgrim_disguise,itm_pilgrim_hood,itm_practice_staff],
def_attrib|level(2),wp(40),knows_common,woman_face_1,woman_face_2],
["town_walker_5","Pilgrim","Townsmen",tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
[itm_sarranid_cloth_robe,itm_sarranid_cloth_robe_b],
def_attrib|level(4),wp(60),knows_common,man_face_young_1, man_face_old_2],
# ["town_walker_6","Pilgrim","Townswomen",tf_female|tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
# [itm_pilgrim_disguise,itm_pilgrim_hood,itm_practice_staff],
# def_attrib|level(2),wp(40),knows_common,woman_face_1,woman_face_2],
["town_walker_7","Rich Townsman","Townsmen",tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
[itm_rich_outfit,itm_courtly_outfit,itm_nobleman_outfit,itm_eur_nobleman_outfit_b,itm_eur_nobleman_outfit_d,itm_blue_hose,itm_woolen_hose,itm_nomad_boots],
def_attrib|level(4),wp(60),knows_common,man_face_young_1, man_face_old_2],
["town_walker_8","Rich Townswoman","Townswomen",tf_female|tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
[itm_court_dress, itm_lady_dress_blue, itm_lady_dress_ruby, itm_lady_dress_green, itm_turret_hat_blue, itm_leather_boots, itm_turret_hat_green,itm_turret_hat_ruby,itm_wimple_with_veil],
def_attrib|level(2),wp(40),knows_common,woman_face_1,woman_face_2],
["town_walker_9","Rich Townsman","Townsmen",tf_mongol|tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
[itm_knife_9,itm_knife_10,itm_knife_8,itm_mon_fur_coat,itm_mon_fur_coat_b,itm_mon_fur_coat_c,itm_mongol_high_boots,itm_mongol_low_boots],
def_attrib|level(4),wp(60),knows_common,khergit_face_middle_1, khergit_face_old_2],
# ["town_walker_10","Rich Townswoman","Townswomen",tf_female|tf_guarantee_boots|tf_guarantee_armor,0,0,fac_commoners,
# [itm_court_dress, itm_lady_dress_blue, itm_lady_dress_ruby, itm_lady_dress_green, itm_turret_hat_blue, itm_leather_boots, itm_turret_hat_green,itm_turret_hat_ruby,itm_wimple_with_veil],
# def_attrib|level(2),wp(40),knows_common,woman_face_1,woman_face_2],
и в module_mission_templates.py в шаблон "town_center" надо добавить следующий триггер:
#rusmod
(.1, 0, ti_once, [],
[
###тут просто перечисляются подходящие города. можно сделать для всех
(this_or_next|eq,"$current_town","p_town_0"),
(this_or_next|eq,"$current_town","p_town_1"),
(this_or_next|eq,"$current_town","p_town_4"),
(this_or_next|eq,"$current_town","p_town_9"),
(this_or_next|eq,"$current_town","p_town_12"),
(this_or_next|eq,"$current_town","p_town_14"),
(this_or_next|eq,"$current_town","p_town_15"),
(this_or_next|eq,"$current_town","p_town_17"),
(this_or_next|eq,"$current_town","p_town_18"),
(this_or_next|eq,"$current_town","p_town_19"),
(this_or_next|eq,"$current_town","p_town_20"),
(this_or_next|eq,"$current_town","p_town_21"),
(this_or_next|eq,"$current_town","p_town_22"),
(eq,"$current_town","p_town_23"),
###
(try_begin),
(is_currently_night),###ночью
(try_for_range,":counter",0,10),
(call_script,"script_cf_add_town_wakler",1),
(try_end),
(else_try),
(try_for_range,":counter",0,26),
(try_begin),
(lt,":counter",10),
(assign,":pick_one",0),
(else_try),
(lt,":counter",20),
(assign,":pick_one",1),
(else_try),
(lt,":counter",22),
(assign,":pick_one",2),
(else_try),
(assign,":pick_one",3),
(try_end),
(call_script,"script_cf_add_town_wakler",":pick_one"),
(try_end),
(try_end),
]),
#rusmod_end
есть еще интересный мод на эту тему. кажется тоже увеличивает кол-во аборигенов
http://forums.taleworlds.com/index.php?topic=183200.0http://www.nexusmods.com/mountandblade/mods/3057/?http://rusmnb.ru/index.php?topic=20498.0