Всадники Кальрадии
		Модификации => Обмен опытом (в помощь мододелу) => OSP ресурсы: модели, текстуры, скрипты => Тема начата: trueten от 28 Октября, 2009, 20:00
		
			
			- 
				На официальном форуме выложили код с помощью которого игрок получит возможность возводить укрепления на стратегической карте.
 
 Автор: Lumos (http://forums.taleworlds.com/index.php?action=profile;u=34826)
 
 Ссылка на оф-форум - http://forums.taleworlds.com/index.php/topic,80871.0.html (http://forums.taleworlds.com/index.php/topic,80871.0.html)
 
 Этот кит позволит вам:
 - Строить два аванпоста в любом месте на страт. карте;
- Заходить в эти аванпосты;
- Размещать в аванпосте войска для защиты территории;
- Улучшать аванпосты;
- Улучшать патрули (только после улучшения аванпоста), тем самым делая их сильнее.
 
 Планируют добавить:
 - Возможность осады аванпоста;
- Возможность поговорить с охранниками (пока вроде бы не работает);
- Научить ИИ строить аванпосты;
- Заставить ИИ атаковать эти аванпосты;
- Расширить диалоги с патрулирующими войсками.
 
 Внедрение
 
 Внимание: Что бы добавить эту возможность, вам нужно владеть базовыми знаниями модульной системы.
 
 Если вы собираетесь использовать эти наработки в своем моде, то вначале спросите разрешения у автора.
 
 Wherever you want, I've got mine under "spt_village" #-## Outposts begin
 spt_outpost_one        = 212
 spt_outpost_two        = 213
 #-## Outposts begin
Somewhere in the camp menus. Mine is under "camp_recruit_prisoners"       #-## Outposts begin
 ("camp_outposts",[], "Manage your outposts",
 [(jump_to_menu, "mnu_outpost_manage")],
 ),
 #-## Outposts end
At the bottom, before the final bracket #-## Outposts
 ("outpost_manage", 0, "The Outpost Management Menu. ^^ Choose an action:", "none", [],
 [("build_outpost", [], "Build an outpost. (2000 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (ge, ":gold_amount", 2000),
 (eq, "$outpost_one_built", 0),
 (troop_remove_gold, "trp_player", 2000),
 (party_relocate_near_party, "p_outpost_one", "p_main_party"),
 (store_faction_of_party, ":fac_player", "p_main_party"),
 (call_script, "script_give_center_to_faction_aux", "p_outpost_one", ":fac_player"),
 (call_script, "script_give_center_to_lord", "p_outpost_one", "trp_player", 0),
 (party_set_slot, "p_outpost_one", slot_party_type, spt_outpost_one),
 (enable_party, "p_outpost_one"),
 (display_message, "@Outpost built!"),
 (assign, "$outpost_one_built", 1),
 (assign, "$outpost_one_level", 1),
 (assign, "$outpost_one_patrol", 0),
 (else_try),
 (ge, ":gold_amount", 2000),
 (eq, "$outpost_one_built", 1),
 (eq, "$outpost_two_built", 0),
 (troop_remove_gold, "trp_player", 2000),
 (party_relocate_near_party, "p_outpost_two", "p_main_party"),
 (store_faction_of_party, ":fac_player", "p_main_party"),
 (call_script, "script_give_center_to_faction_aux", "p_outpost_two", ":fac_player"),
 (call_script, "script_give_center_to_lord", "p_outpost_two", "trp_player", 0),
 (party_set_slot, "p_outpost_two", slot_party_type, spt_outpost_two),
 (enable_party, "p_outpost_two"),
 (display_message, "@Outpost built!"),
 (assign, "$outpost_two_built", 1),
 (assign, "$outpost_two_level", 1),
 (assign, "$outpost_two_patrol", 0),
 (else_try),
 (eq, "$outpost_one_built", 1),
 (eq, "$outpost_two_built", 1),
 (display_message, "@You have reached the outpost limit!"),
 (else_try),
 (lt, ":gold_amount", 2000),
 (display_message, "@You don't have enough money to build an outpost!"),
 (try_end),
 ]),
 ("camp_end_outpost", [], "Return to your camp.",
 [(jump_to_menu, "mnu_camp")]
 )]
 ),
 
 
 ("outpost_one", 0, "You pass across the barricades and enter the outpost. ^^ What do you want to do?", "none", [],
 [
 ("walk_around_outpost_one", [],
 "Walk around",
 [
 (try_begin),
 (eq, "$outpost_one_level", 1),
 (call_script, "script_setup_outpost_scene_one_one"),
 (set_jump_mission, "mt_ai_training"),
 #   (jump_to_scene, "scn_outpost_one_one"),
 (else_try),
 (eq, "$outpost_one_level", 2),
 (call_script, "script_setup_outpost_scene_one_two"),
 (set_jump_mission, "mt_ai_training"),
 #   (jump_to_scene, "scn_outpost_one_two"),
 (try_end),
 (assign, "$talk_context", 0),
 (faction_get_slot, ":tier_2_troop", "fac_player_supporters_faction", slot_faction_tier_2_troop),
 (faction_get_slot, ":tier_3_troop", "fac_player_supporters_faction", slot_faction_tier_3_troop),
 (modify_visitors_at_site, reg1),
 (reset_visitors),
 (try_begin),
 (gt,":tier_2_troop", 0),
 (assign,reg(0),":tier_3_troop"),
 (assign,reg(1),":tier_3_troop"),
 (assign,reg(2),":tier_2_troop"),
 (assign,reg(3),":tier_2_troop"),
 (else_try),
 (assign,reg(0),"trp_vaegir_infantry"),
 (assign,reg(1),"trp_vaegir_infantry"),
 (assign,reg(2),"trp_vaegir_archer"),
 (assign,reg(3),"trp_vaegir_footman"),
 (try_end),
 (shuffle_range,0,4),
 (set_visitor,25,reg(0)),
 (set_visitor,26,reg(1)),
 (set_visitor,27,reg(2)),
 (set_visitor,28,reg(3)),
 (change_screen_mission),
 ]),
 
 ("upgrade_outpost_one", [(eq, "$outpost_one_level", 1)],
 "Upgrade outpost (better patrols and defences)(2500 denars)",
 [
 (store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (ge, ":gold_amount", 2500),
 (troop_remove_gold, "trp_player", 2500),
 (assign, "$outpost_one_level", 2),
 (display_message, "@Outpost upgraded."),
 (lt, ":gold_amount", 2500),
 (display_message, "@You don't have enough money to upgrade the outpost"),
 (try_end),
 ]),
 
 ("enlist_patrol_outpost_one", [(eq, "$outpost_one_patrol", 0)],
 "Enlist a patrol (700 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_one_built", 1),
 (ge, ":gold_amount", 700),
 (troop_remove_gold, "trp_player", 700),
 (set_spawn_radius, 3),
 (spawn_around_party, "p_outpost_one", "pt_outpost_patrol_one"),
 (assign, ":outpost_patrol_one", reg(0)),
 (store_faction_of_party, ":fac_player", "p_main_party"),
 (party_set_faction, ":outpost_patrol_one", ":fac_player"),
 (party_set_flags, ":outpost_patrol_one", pf_default_behavior, 0),
 (party_set_ai_behavior, ":outpost_patrol_one", ai_bhvr_patrol_location),
 (party_set_ai_object, ":outpost_patrol_one", "p_outpost_one"),
 (display_message, "@Patrol enlisted!"),
 (assign, "$outpost_one_patrol", 1),
 (else_try),
 (lt, ":gold_amount", 700),
 (display_message, "@You don't have enough money to enlist a patrol."),
 (try_end),
 ]),
 
 ("basic_training_patrol_one", [(eq, "$outpost_one_patrol", 1),
 (eq, "$outpost_one_level", 2)],
 "Initiate basic training for the patrol (800 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_one_built", 1),
 (ge, ":gold_amount", 800),
 (troop_remove_gold, "trp_player", 800),
 (party_add_members, "pt_outpost_patrol_one", "trp_nord_trained_footman"),
 (party_remove_members, "pt_outpost_patrol_one", "trp_nord_footman"),
 (display_message, "@Patrol trained!"),
 (assign, "$outpost_one_patrol", 2),
 (else_try),
 (lt, ":gold_amount", 800),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("advanced_training_patrol_one", [(eq, "$outpost_one_patrol", 2),
 (eq, "$outpost_one_level", 2)],
 "Initiate advanced training for the patrol (1200 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_one_built", 1),
 (ge, ":gold_amount", 1200),
 (troop_remove_gold, "trp_player", 1200),
 (party_add_members, "pt_outpost_patrol_one", "trp_nord_warrior"),
 (party_remove_members, "pt_outpost_patrol_one", "trp_nord_trained_footman"),
 (display_message, "@Patrol trained!"),
 (assign, "$outpost_one_patrol", 3),
 (else_try),
 (lt, ":gold_amount", 1200),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("expert_training_patrol_one", [(eq, "$outpost_one_patrol", 3),
 (eq, "$outpost_one_level", 2)],
 "Initiate expert training for the patrol (2500 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_one_built", 1),
 (ge, ":gold_amount", 2500),
 (troop_remove_gold, "trp_player", 2500),
 (party_add_members, "pt_outpost_patrol_one", "trp_nord_veteran"),
 (party_remove_members, "pt_outpost_patrol_one", "trp_nord_warrior"),
 (display_message, "@Patrol trained!"),
 (assign, "$outpost_one_patrol", 4),
 (else_try),
 (lt, ":gold_amount", 2500),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("thorough_training_patrol_one", [(eq, "$outpost_one_patrol", 4),
 (eq, "$outpost_one_level", 2)],
 "Initiate thorough training for the patrol (3500 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_one_built", 1),
 (ge, ":gold_amount", 2500),
 (troop_remove_gold, "trp_player", 2500),
 (party_add_members, "pt_outpost_patrol_one", "trp_nord_champion"),
 (party_remove_members, "pt_outpost_patrol_one", "trp_nord_veteran"),
 (display_message, "@Patrol trained to maximum."),
 (assign, "$outpost_one_patrol", 5),
 (else_try),
 (lt, ":gold_amount", 2500),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("demolish_outpost_one", [],
 "Demolish your outpost. (500 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (ge, ":gold_amount", 500),
 (eq, "$outpost_one_built", 1),
 (disable_party, "p_outpost_one"),
 (display_message, "@Outpost demolished."),
 (assign, "$outpost_one_built", 0),
 #   (assign, "$outpost_one_level", 0), # Un-comment these to delete the outpost's improvements
 #   (assign, "$outpost_one_patrol", 0),
 (change_screen_return),
 (else_try),
 (lt, ":gold_amount", 500),
 (display_message, "@You don't have enough money to demolish the outpost!"),
 (try_end),
 ]),
 
 ("station_garrison_in_outpost_one", [],
 "Station a garrison here",
 [
 (change_screen_exchange_members, 1),
 ]),
 
 ("resume_travelling",[],"Resume travelling.",
 [
 (change_screen_return),
 ]
 ),
 ],
 ),
 
 ("outpost_two", 0, "You pass across the barricades and enter the outpost. ^^ What do you want to do?", "none", [],
 [
 ("walk_around_outpost_two", [],
 "Walk around",
 [
 (try_begin),
 (eq, "$outpost_two_level", 1),
 (call_script, "script_setup_outpost_scene_two_one"),
 (set_jump_mission, "mt_ai_training"),
 #   (jump_to_scene, "scn_outpost_two_one"),
 (else_try),
 (eq, "$outpost_two_level", 2),
 (call_script, "script_setup_outpost_scene_two_two"),
 (set_jump_mission, "mt_ai_training"),
 #   (jump_to_scene, "scn_outpost_two_two"),
 (try_end),
 (assign, "$talk_context", 0),
 (faction_get_slot, ":tier_2_troop", "fac_player_supporters_faction", slot_faction_tier_2_troop),
 (faction_get_slot, ":tier_3_troop", "fac_player_supporters_faction", slot_faction_tier_3_troop),
 (modify_visitors_at_site, reg1),
 (reset_visitors),
 (try_begin),
 (gt,":tier_2_troop", 0),
 (assign,reg(0),":tier_3_troop"),
 (assign,reg(1),":tier_3_troop"),
 (assign,reg(2),":tier_2_troop"),
 (assign,reg(3),":tier_2_troop"),
 (else_try),
 (assign,reg(0),"trp_vaegir_infantry"),
 (assign,reg(1),"trp_vaegir_infantry"),
 (assign,reg(2),"trp_vaegir_archer"),
 (assign,reg(3),"trp_vaegir_footman"),
 (try_end),
 (shuffle_range,0,4),
 (set_visitor,25,reg(0)),
 (set_visitor,26,reg(1)),
 (set_visitor,27,reg(2)),
 (set_visitor,28,reg(3)),
 (change_screen_mission),
 ]),
 
 ("upgrade_outpost_two", [(eq, "$outpost_two_level", 1)],
 "Upgrade outpost (better patrols and defences)(2500 denars)",
 [
 (store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (ge, ":gold_amount", 2500),
 (troop_remove_gold, "trp_player", 2500),
 (assign, "$outpost_two_level", 2),
 (display_message, "@Outpost upgraded."),
 (else_try),
 (lt, ":gold_amount", 2500),
 (display_message, "@You don't have enough money to upgrade the outpost"),
 (try_end),
 ]),
 ("enlist_patrol_outpost_two", [(eq, "$outpost_two_patrol", 0)],
 "Enlist a patrol (700 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_two_built", 1),
 (ge, ":gold_amount", 700),
 (troop_remove_gold, "trp_player", 700),
 (set_spawn_radius, 3),
 (spawn_around_party, "p_outpost_two", "pt_outpost_patrol_two"),
 (assign, ":outpost_patrol_two", reg(0)),
 (store_faction_of_party, ":fac_player", "p_main_party"),
 (party_set_faction, ":outpost_patrol_two", ":fac_player"),
 (party_set_flags, ":outpost_patrol_two", pf_default_behavior, 0),
 (party_set_ai_behavior, ":outpost_patrol_two", ai_bhvr_patrol_location),
 (party_set_ai_object, ":outpost_patrol_two", "p_outpost_two"),
 (display_message, "@Patrol enlisted!"),
 (assign, "$outpost_two_patrol", 1),
 (else_try),
 (lt, ":gold_amount", 700),
 (display_message, "@You don't have enough money to enlist a patrol."),
 (try_end),
 ]),
 
 ("basic_training_patrol_two", [(eq, "$outpost_two_patrol", 1),
 (eq, "$outpost_two_level", 2)],
 "Initiate basic training for the patrol (800 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_two_built", 1),
 (ge, ":gold_amount", 800),
 (troop_remove_gold, "trp_player", 800),
 (party_add_members, "pt_outpost_patrol_two", "trp_nord_trained_footman"),
 (party_remove_members, "pt_outpost_patrol_two", "trp_nord_footman"),
 (display_message, "@Patrol trained!"),
 (assign, "$outpost_two_patrol", 2),
 (else_try),
 (lt, ":gold_amount", 800),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("advanced_training_patrol_two", [(eq, "$outpost_two_patrol", 2),
 (eq, "$outpost_two_level", 2)],
 "Initiate advanced training for the patrol (1200 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_two_built", 1),
 (ge, ":gold_amount", 1200),
 (troop_remove_gold, "trp_player", 1200),
 (party_add_members, "pt_outpost_patrol_two", "trp_nord_warrior"),
 (party_remove_members, "pt_outpost_patrol_two", "trp_nord_trained_footman"),
 (display_message, "@Patrol trained!"),
 (assign, "$outpost_two_patrol", 3),
 (else_try),
 (lt, ":gold_amount", 1200),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("expert_training_patrol_two", [(eq, "$outpost_two_patrol", 3),
 (eq, "$outpost_two_level", 2)],
 "Initiate expert training for the patrol (2500 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_two_built", 1),
 (ge, ":gold_amount", 2500),
 (troop_remove_gold, "trp_player", 2500),
 (party_add_members, "pt_outpost_patrol_two", "trp_nord_veteran"),
 (party_remove_members, "pt_outpost_patrol_two", "trp_nord_warrior"),
 (display_message, "@Patrol trained!"),
 (assign, "$outpost_two_patrol", 4),
 (else_try),
 (lt, ":gold_amount", 2500),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("thorough_training_patrol_two", [(eq, "$outpost_two_patrol", 4),
 (eq, "$outpost_two_level", 2)],
 "Initiate thorough training for the patrol (3500 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (eq, "$outpost_two_built", 1),
 (ge, ":gold_amount", 2500),
 (troop_remove_gold, "trp_player", 2500),
 (party_add_members, "pt_outpost_patrol_two", "trp_nord_champion"),
 (party_remove_members, "pt_outpost_patrol_two", "trp_nord_veteran"),
 (display_message, "@Patrol trained to maximum."),
 (assign, "$outpost_two_patrol", 5),
 (else_try),
 (lt, ":gold_amount", 2500),
 (display_message, "@You don't have enough money to train the patrol."),
 (try_end),
 ]),
 
 ("demolish_outpost_two", [],
 "Demolish your outpost. (500 denars)",
 [(store_troop_gold, ":gold_amount", "trp_player"),
 (try_begin),
 (ge, ":gold_amount", 500),
 (eq, "$outpost_two_built", 1),
 (disable_party, "p_outpost_one"),
 (display_message, "@Outpost demolished."),
 (assign, "$outpost_two_built", 0),
 #   (assign, "$outpost_two_level", 0), # Un-comment these to delete the outpost's improvements
 #   (assign, "$outpost_two_patrol", 0),
 (change_screen_return),
 (else_try),
 (lt, ":gold_amount", 500),
 (display_message, "@You don't have enough money to demolish the outpost!"),
 (try_end),
 ]),
 
 ("station_garrison_in_outpost_two", [],
 "Station a garrison here",
 [
 (change_screen_exchange_members, 1),
 ]),
 
 ("resume_travelling",[],"Resume travelling.",
 [
 (change_screen_return),
 ]
 ),
 ],
 ),
 
 #-## Outposts end
At the bottom #-## Outposts begin
 ("outpost_one","Outpost",icon_camp|pf_disabled|pf_is_static|pf_always_visible|pf_show_faction|pf_label_medium, no_menu, pt_none, fac_neutral, 0, ai_bhvr_hold, 0, (-1,-1), [], 100),
 ("outpost_two","Outpost",icon_camp|pf_disabled|pf_is_static|pf_always_visible|pf_show_faction|pf_label_medium, no_menu, pt_none, fac_neutral, 0, ai_bhvr_hold, 0, (-1,-1), [], 100),
 #-## Outposts end
Anywhere after the hardwired stuff. Mine are before "# Caravans" #-## Outposts
 ("outpost_patrol_one","Outpost Patrol",icon_gray_knight|carries_goods(3),0,fac_commoners,soldier_personality,[(trp_nord_footman,20,20)]),
 ("outpost_patrol_two","Outpost Patrol",icon_gray_knight|carries_goods(3),0,fac_commoners,soldier_personality,[(trp_nord_footman,20,20)]),
 #-## Outposts end
In script_game_event_party_encounter. I've given some native code to help you see the spot. Insert only the stuff between "Outposts" and "Outposts end"          (else_try),
 (party_slot_eq, "$g_encountered_party", slot_party_type, spt_ship),
 (jump_to_menu, "mnu_ship_reembark"),
 (else_try),
 (party_slot_eq, "$g_encountered_party", slot_party_type, spt_village),
 (jump_to_menu, "mnu_village"),
 #-## Outposts begin
 (else_try),
 (party_slot_eq, "$g_encountered_party", slot_party_type, spt_outpost_one),
 (jump_to_menu, "mnu_outpost_one"),
 (else_try),
 (party_slot_eq, "$g_encountered_party", slot_party_type, spt_outpost_two),
 (jump_to_menu, "mnu_outpost_two"),
 #-## Outposts end
 (else_try),
 (party_slot_eq, "$g_encountered_party", slot_party_type, spt_cattle_herd),
 (jump_to_menu, "mnu_cattle_herd"),
 At the bottom #-## Outposts begin
 ("setup_outpost_scene_one_one",
 [
 (party_get_current_terrain, ":terrain_type", "p_main_party"),
 (assign, ":scene_to_use", "scn_random_scene"),
 (try_begin),
 (eq, ":terrain_type", rt_steppe),
 (assign, ":scene_to_use", "scn_outpost_one_one_steppe"),
 (else_try),
 (eq, ":terrain_type", rt_plain),
 (assign, ":scene_to_use", "scn_outpost_one_one_plain"),
 (else_try),
 (eq, ":terrain_type", rt_snow),
 (assign, ":scene_to_use", "scn_outpost_one_one_snow"),
 (else_try),
 (eq, ":terrain_type", rt_desert),
 (assign, ":scene_to_use", "scn_outpost_one_one_desert"),#scn_outpost_scene_desert
 (else_try),
 (eq, ":terrain_type", rt_steppe_forest),
 (assign, ":scene_to_use", "scn_outpost_one_one_steppe_forest"),
 (else_try),
 (eq, ":terrain_type", rt_forest),
 (assign, ":scene_to_use", "scn_outpost_one_one_forest"),
 (else_try),
 (eq, ":terrain_type", rt_snow_forest),
 (assign, ":scene_to_use", "scn_outpost_one_one_snow_forest"),
 (else_try),
 (eq, ":terrain_type", rt_desert_forest),
 (assign, ":scene_to_use", "scn_outpost_one_one_desert_forest"),
 (try_end),
 (assign, reg1, ":scene_to_use"),
 (jump_to_scene,":scene_to_use"),
 ]),
 ("setup_outpost_scene_one_two",
 [
 (party_get_current_terrain, ":terrain_type", "p_main_party"),
 (assign, ":scene_to_use", "scn_random_scene"),
 (try_begin),
 (eq, ":terrain_type", rt_steppe),
 (assign, ":scene_to_use", "scn_outpost_one_two_steppe"),
 (else_try),
 (eq, ":terrain_type", rt_plain),
 (assign, ":scene_to_use", "scn_outpost_one_two_plain"),
 (else_try),
 (eq, ":terrain_type", rt_snow),
 (assign, ":scene_to_use", "scn_outpost_one_two_snow"),
 (else_try),
 (eq, ":terrain_type", rt_desert),
 (assign, ":scene_to_use", "scn_outpost_one_two_desert"),#scn_outpost_scene_desert
 (else_try),
 (eq, ":terrain_type", rt_steppe_forest),
 (assign, ":scene_to_use", "scn_outpost_one_two_steppe_forest"),
 (else_try),
 (eq, ":terrain_type", rt_forest),
 (assign, ":scene_to_use", "scn_outpost_one_two_forest"),
 (else_try),
 (eq, ":terrain_type", rt_snow_forest),
 (assign, ":scene_to_use", "scn_outpost_one_two_snow_forest"),
 (else_try),
 (eq, ":terrain_type", rt_desert_forest),
 (assign, ":scene_to_use", "scn_outpost_one_two_desert_forest"),
 (try_end),
 (assign, reg1, ":scene_to_use"),
 (jump_to_scene,":scene_to_use"),
 ]),
 
 ("setup_outpost_scene_two_one",
 [
 (party_get_current_terrain, ":terrain_type", "p_main_party"),
 (assign, ":scene_to_use", "scn_random_scene"),
 (try_begin),
 (eq, ":terrain_type", rt_steppe),
 (assign, ":scene_to_use", "scn_outpost_two_one_steppe"),
 (else_try),
 (eq, ":terrain_type", rt_plain),
 (assign, ":scene_to_use", "scn_outpost_two_one_plain"),
 (else_try),
 (eq, ":terrain_type", rt_snow),
 (assign, ":scene_to_use", "scn_outpost_two_one_snow"),
 (else_try),
 (eq, ":terrain_type", rt_desert),
 (assign, ":scene_to_use", "scn_outpost_two_one_desert"),#scn_outpost_scene_desert
 (else_try),
 (eq, ":terrain_type", rt_steppe_forest),
 (assign, ":scene_to_use", "scn_outpost_two_one_steppe_forest"),
 (else_try),
 (eq, ":terrain_type", rt_forest),
 (assign, ":scene_to_use", "scn_outpost_two_one_forest"),
 (else_try),
 (eq, ":terrain_type", rt_snow_forest),
 (assign, ":scene_to_use", "scn_outpost_two_one_snow_forest"),
 (else_try),
 (eq, ":terrain_type", rt_desert_forest),
 (assign, ":scene_to_use", "scn_outpost_two_one_desert_forest"),
 (try_end),
 (assign, reg1, ":scene_to_use"),
 (jump_to_scene,":scene_to_use"),
 ]),
 ("setup_outpost_scene_two_two",
 [
 (party_get_current_terrain, ":terrain_type", "p_main_party"),
 (assign, ":scene_to_use", "scn_random_scene"),
 (try_begin),
 (eq, ":terrain_type", rt_steppe),
 (assign, ":scene_to_use", "scn_outpost_two_two_steppe"),
 (else_try),
 (eq, ":terrain_type", rt_plain),
 (assign, ":scene_to_use", "scn_outpost_two_two_plain"),
 (else_try),
 (eq, ":terrain_type", rt_snow),
 (assign, ":scene_to_use", "scn_outpost_two_two_snow"),
 (else_try),
 (eq, ":terrain_type", rt_desert),
 (assign, ":scene_to_use", "scn_outpost_two_two_desert"),#scn_outpost_scene_desert
 (else_try),
 (eq, ":terrain_type", rt_steppe_forest),
 (assign, ":scene_to_use", "scn_outpost_two_two_steppe_forest"),
 (else_try),
 (eq, ":terrain_type", rt_forest),
 (assign, ":scene_to_use", "scn_outpost_two_two_forest"),
 (else_try),
 (eq, ":terrain_type", rt_snow_forest),
 (assign, ":scene_to_use", "scn_outpost_two_two_snow_forest"),
 (else_try),
 (eq, ":terrain_type", rt_desert_forest),
 (assign, ":scene_to_use", "scn_outpost_two_two_desert_forest"),
 (try_end),
 (assign, reg1, ":scene_to_use"),
 (jump_to_scene,":scene_to_use"),
 ]),
 #-## Outposts end
For now this is a useless dialog, it just bugfixes some things. At the bottom #-## Outposts begin
 [anyone ,"start",
 [
 (eq, "$g_encountered_party", "pt_outpost_patrol_one")
 ],
 "Good day, {sir/madam}. Is there anything we can do for you?", "patrol_one_1",[]],
 [anyone|plyr,"patrol_one_1", [], "Just do your business.", "close_window",[]],
 [anyone|plyr,"patrol_one_1", [], "No, not really.", "close_window",[]],
 
 [anyone ,"start",
 [
 (eq, "$g_encountered_party", "pt_outpost_patrol_two")
 ],
 "Good day, {sir/madam}. Is there anything we can do for you?", "patrol_two_1",[]],
 [anyone|plyr,"patrol_two_1", [], "Just do your business.", "close_window",[]],
 [anyone|plyr,"patrol_two_1", [], "No, not really.", "close_window",[]],
 #-## Outposts end
At the bottom. I've generated some scenes for you, but you can make your own #-## Outposts
 ("outpost_one_one_steppe",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000002c678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe"),
 ("outpost_one_one_plain",sf_generate,"none", "none", (0,0),(100,100),-100,"0x30054da28004050000005a76800022aa00002e3b",
 [],[],"outer_terrain_plain"),
 ("outpost_one_one_snow",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000004c678e240003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_snow"),
 ("outpost_one_one_desert",sf_generate,"none", "none", (0,0),(100,100),-100,"0x0000000055878e1ec003f0ff0000445800002b7500007d87",
 [],[],"outer_terrain_desert"),
 ("outpost_one_one_steppe_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000ac678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe_forest"),
 ("outpost_one_one_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000bc678e248003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_forest"),
 ("outpost_one_one_snow_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000cc678e1e8003f0ff107a3fff0043c9af00007d87",
 [],[],"outer_terrain_snow_forest"),
 ("outpost_one_one_desert_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000dc678e240003f0ff107a3fff08cbd537000068de",
 [],[],"outer_terrain_desert_forest"),
 
 ("outpost_one_two_steppe",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000002c678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe"),
 ("outpost_one_two_plain",sf_generate,"none", "none", (0,0),(100,100),-100,"0x30054da28004050000005a76800022aa00002e3b",
 [],[],"outer_terrain_plain"),
 ("outpost_one_two_snow",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000004c678e240003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_snow"),
 ("outpost_one_two_desert",sf_generate,"none", "none", (0,0),(100,100),-100,"0x0000000055878e1ec003f0ff0000445800002b7500007d87",
 [],[],"outer_terrain_desert"),
 ("outpost_one_two_steppe_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000ac678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe_forest"),
 ("outpost_one_two_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000bc678e248003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_forest"),
 ("outpost_one_two_snow_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000cc678e1e8003f0ff107a3fff0043c9af00007d87",
 [],[],"outer_terrain_snow_forest"),
 ("outpost_one_two_desert_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000dc678e240003f0ff107a3fff08cbd537000068de",
 [],[],"outer_terrain_desert_forest"),
 
 ("outpost_two_one_steppe",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000002c678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe"),
 ("outpost_two_one_plain",sf_generate,"none", "none", (0,0),(100,100),-100,"0x30054da28004050000005a76800022aa00002e3b",
 [],[],"outer_terrain_plain"),
 ("outpost_two_one_snow",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000004c678e240003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_snow"),
 ("outpost_two_one_desert",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000005c678e240003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_desert"),
 ("outpost_two_one_steppe_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000ac678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe_forest"),
 ("outpost_two_one_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000bc678e248003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_forest"),
 ("outpost_two_one_snow_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000cc678e1e8003f0ff107a3fff0043c9af00007d87",
 [],[],"outer_terrain_snow_forest"),
 ("outpost_two_one_desert_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000dc678e240003f0ff107a3fff08cbd537000068de",
 [],[],"outer_terrain_desert_forest"),
 
 ("outpost_two_two_steppe",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000002c678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe"),
 ("outpost_two_two_plain",sf_generate,"none", "none", (0,0),(100,100),-100,"0x30054da28004050000005a76800022aa00002e3b",
 [],[],"outer_terrain_plain"),
 ("outpost_two_two_snow",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000004c678e240003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_snow"),
 ("outpost_two_two_desert",sf_generate,"none", "none", (0,0),(100,100),-100,"0x000000005c678e240003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_desert"),
 ("outpost_two_two_steppe_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000ac678e1e8003f0ff107a3fff00004b7700007d87",
 [],[],"outer_terrain_steppe_forest"),
 ("outpost_two_two_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000bc678e248003f0ff107a3fff08cbd53700007d87",
 [],[],"outer_terrain_forest"),
 ("outpost_two_two_snow_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000cc678e1e8003f0ff107a3fff0043c9af00007d87",
 [],[],"outer_terrain_snow"),
 ("outpost_two_two_desert_forest",sf_generate,"none", "none", (0,0),(100,100),-100,"0x00000000dc678e240003f0ff107a3fff08cbd537000068de",
 [],[],"outer_terrain_desert"),
 #-## Outposts end
 
 
 Также один из форумчан, bobirov, выложил Bob's Fort Kit v0.5 (скачать (http://www.mbrepository.com/file.php?id=1537)) - уже готовый патч
- 
				Враги его штурмовать могут?
			
- 
				Пока нет.
			
- 
				Очень даже интересно.
			
- 
				Вот это класс
 
- 
				Прикольно
			
- 
				многообещающе... пробуем
			
- 
				Ух тыы... Круто. Всегда мечтал о форте.
			
- 
				Други подскажите в каких файлах находятся изменения?
 Хочу вырезать все данный о форте и вставить в мод исходников от которого у меня нет.
- 
				Angristпопробуй скомпилировать эти исходники например
			
- 
				сравнивая файлы натива и бобс форта я вроде бы нашел все различия. но при изменении файлов и добавлении нужных частей, после загрузки мода форт создать не получается (не появляется вариант в миню лагеря), хотя все изменения с процессом игры некак не комфликтуют... что-то я все же не нашел.
 
 я вот не понимаю что такое констэнтс.пи , тоесть какие файлы сие создает.
 
 Добавлено: 19 Ноября, 2009, 19:36
 и дайлогс.пи за чкакие файлы отвечает.
 
 Добавлено: 19 Ноября, 2009, 20:23
 НАШЕЛ я косяк, в файле минюс пропустил разницу. там не только в конце добавлено, там еще и разумеется внесена правка в меню лагеря и добавлена возможность строить форт, я сие в прошлый раз проглядел а потом логикой допер что изменения должны быть.
 
 Но код там дюже большой - на пол странице.... наверное час прокапаюсь прежде чем найду логику в изменениях..
 
 Добавлено: 19 Ноября, 2009, 23:30
 в общем у меня получилос, но при полном заимствовании файлов menus, quick_strings и scripts.
 Остальные файлы я попровил вручную найдя что и куда вставлять/заменять.
 
 А в этих трех сие смог сделать не полностью((
 мозг взрывается, подумаю завтра.
 
 Если кто-то уже занимался моей неблагодарной работой, сообщите результаты.  8-)
- 
				А как исправить то? какой код вставлял?пожалуйста посмотри и напиши!
			
- 
				в ручную без модульки я в этоге добился только появления в форту, но все нпс в форту не работали и как исправить не знаю, в общем я забил.
			
- 
				Bob's Fort Kit v0.5 ставить на Натив или с модами потянет ?
			
- 
				блин я не могу никак ево установить можна поподробней под какими строками вставлять ети ?буду благодарен
			
- 
				Может кто подскажет? Код работает прекрасно, все строится и т.п., но "построенные"  патрули почему то догоняя всяких лутеров вступают в битву, появляется значок битвы, но через пару секунд лутер смывается целый, а патруль стоит пару сек а потом опять его догоняет и так до бесконечности, т.е. битвы самой как таковой не происходит. И еще интересно, если самому быстро успеть присоединиться к битве пока значок битвы висит то все нормально, присоединяюсь и бьюсь вместе с патрулем. В чем может быть причина такого поведения патрулей?
			
- 
				Может кто подскажет? Код работает прекрасно, все строится и т.п., но "построенные"  патрули почему то догоняя всяких лутеров вступают в битву, появляется значок битвы, но через пару секунд лутер смывается целый, а патруль стоит пару сек а потом опять его догоняет и так до бесконечности, т.е. битвы самой как таковой не происходит. И еще интересно, если самому быстро успеть присоединиться к битве пока значок битвы висит то все нормально, присоединяюсь и бьюсь вместе с патрулем. В чем может быть причина такого поведения патрулей?
 
 Почему то мне кажется что это механика игры такая. Я уже не однократно наблюдал в Нетиве такое поведение других отрядов. Когда один отряд в проигрышной ситуации, то он отступает, а второй отряд будучи сильнее продолжает его догонять.
- 
				Почему то мне кажется что это механика игры такая. Я уже не однократно наблюдал в Нетиве такое поведение других отрядов. Когда один отряд в проигрышной ситуации, то он отступает, а второй отряд будучи сильнее продолжает его догонять.
 
 Да, патруль приостанавливается на несколько секунд, похоже на то, как ты оставляешь пару воинов типа и отступаешь, придется это как то скриптово решать
- 
				на любой мод можно ставить? или только на Ванилу?
			
- 
				Guseyn_Guseynli (http://rusmnb.ru/index.php?action=profile;u=26007), то бы добавить эту возможность, вам нужно владеть базовыми знаниями модульной системы. 
 Надеюсь вам это немного отвечает на вопрос в какой мод вы можете вставить.
 Также один из форумчан, bobirov, выложил Bob's Fort Kit v0.5 (скачать) - уже готовый патч, после установки коего игрок будет возводить именно такой вот форт: 
 А вот это надо спросить у автора, скорее всего на Натив, а во на какаю версию... то же спросить надо у автора
- 
				На Warband пойдет?
			
- 
				Код вообще- это лишь код, он и на Варбанд пойдёт и на ИГ, куда вставишь туда и пойдёт
			
- 
				 Лучше разместить для новичков файлы в каких все готово не файлы МС а уже готовые.  
			
- 
				 Лучше разместить для новичков файлы в каких все готово не файлы МС а уже готовые Займитесь, тут люди для модинга используют а не для гаманья. Для гаманья вам в раздел Мини-модов или модов, всё что там есть то можно использовать сразу.
- 
				Огромное спасибо.
			
- 
				Вмастрячил 0,8 версию, долго мучался почему не появляется оутпост и ошибки потом вылетают, оказалось надо начать новую игру, со старыми сохранениями продолжить не выйдет.