Всадники Кальрадии
Модификации => Обмен опытом (в помощь мододелу) => 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 версию, долго мучался почему не появляется оутпост и ошибки потом вылетают, оказалось надо начать новую игру, со старыми сохранениями продолжить не выйдет.