What does this do: Originally made for 1.011, the codes have been unchanged since back than, but the codes itself do still work with Warband, although the positions of bridges on the world map did change.If you implent this, you and your troops will fight the enemy on a bridge if you were near a bridge on the world map. For infantry it's easier to fight on bridges, since cavalry don't have space to maneuver. You can use this as strategical advantage.
How do I implent it: You need the modulesystem for this, than follow these steps.
1. In module_game_menus look for ("encounter_attack",[
Than all you have to do is to add the bold stuff from the code in the spoiler into that.
2. Also you need to put these scene objs in the SceneObj folder of your mod.
Link for bridge scenery: http://www.mediafire.com/?5tyn2ymhdzo
3. The final step is to add the text in the spoiler in module_scenes. Just add it on the bottom.
That's all, any questions or mistakes I made, tell me please.
How do I implent it: You need the modulesystem for this, than follow these steps.
1. In module_game_menus look for ("encounter_attack",[
Than all you have to do is to add the bold stuff from the code in the spoiler into that.
"Charge the enemy.",[
(assign, "$g_battle_result", 0),
(assign, "$g_engaged_enemy", 1),
(call_script, "script_calculate_renown_value"),
(call_script, "script_calculate_battle_advantage"),
(set_battle_advantage, reg0),
(set_party_battle_mode),
(try_begin),
(eq, "$g_encounter_type", enctype_fighting_against_village_raid),
(assign, "$g_village_raid_evil", 0),
(set_jump_mission,"mt_village_raid"),
(party_get_slot, ":scene_to_use", "$g_encounter_is_in_village", slot_castle_exterior),
(jump_to_scene, ":scene_to_use"),
(else_try),
(eq, "$g_encounter_type", enctype_catched_during_village_raid),
(assign, "$g_village_raid_evil", 0),
(set_jump_mission,"mt_village_raid"),
(party_get_slot, ":scene_to_use", "$g_encounter_is_in_village", slot_castle_exterior),
(jump_to_scene, ":scene_to_use"),
(else_try), #Arch3r#
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_1"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_1"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_2"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_2"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_3"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_3"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_4"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_4"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_5"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_5"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_6"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_6"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_7"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_7"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_8"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_8"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_9"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_9"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_10"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_10"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_11"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_11"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_12"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_12"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_13"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_13"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_14"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_14"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
# (else_try),
# (party_get_position,pos1,"p_main_party"),
# (party_get_position,pos2,"p_bridge_15"),
# (get_distance_between_positions,":cur_distance",pos1,pos2),
# (lt,":cur_distance",100),
# (assign, ":scene_to_use", "scn_bridge_15"),
# (set_jump_mission,"mt_lead_charge"),
# (jump_to_scene, ":scene_to_use"),
(else_try),
(set_jump_mission,"mt_lead_charge"),
(call_script, "script_setup_random_scene"),
(try_end),
(assign, "$g_battle_result", 0),
(assign, "$g_engaged_enemy", 1),
(call_script, "script_calculate_renown_value"),
(call_script, "script_calculate_battle_advantage"),
(set_battle_advantage, reg0),
(set_party_battle_mode),
(try_begin),
(eq, "$g_encounter_type", enctype_fighting_against_village_raid),
(assign, "$g_village_raid_evil", 0),
(set_jump_mission,"mt_village_raid"),
(party_get_slot, ":scene_to_use", "$g_encounter_is_in_village", slot_castle_exterior),
(jump_to_scene, ":scene_to_use"),
(else_try),
(eq, "$g_encounter_type", enctype_catched_during_village_raid),
(assign, "$g_village_raid_evil", 0),
(set_jump_mission,"mt_village_raid"),
(party_get_slot, ":scene_to_use", "$g_encounter_is_in_village", slot_castle_exterior),
(jump_to_scene, ":scene_to_use"),
(else_try), #Arch3r#
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_1"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_1"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_2"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_2"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_3"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_3"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_4"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_4"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_5"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_5"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_6"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_6"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_7"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_7"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_8"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_8"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_9"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_9"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_10"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_10"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_11"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_11"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_12"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_12"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_13"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_13"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
(else_try),
(party_get_position,pos1,"p_main_party"),
(party_get_position,pos2,"p_bridge_14"),
(get_distance_between_positions,":cur_distance",pos1,pos2),
(lt,":cur_distance",100),
(assign, ":scene_to_use", "scn_bridge_14"),
(set_jump_mission,"mt_lead_charge"),
(jump_to_scene, ":scene_to_use"),
# (else_try),
# (party_get_position,pos1,"p_main_party"),
# (party_get_position,pos2,"p_bridge_15"),
# (get_distance_between_positions,":cur_distance",pos1,pos2),
# (lt,":cur_distance",100),
# (assign, ":scene_to_use", "scn_bridge_15"),
# (set_jump_mission,"mt_lead_charge"),
# (jump_to_scene, ":scene_to_use"),
(else_try),
(set_jump_mission,"mt_lead_charge"),
(call_script, "script_setup_random_scene"),
(try_end),
Link for bridge scenery: http://www.mediafire.com/?5tyn2ymhdzo
3. The final step is to add the text in the spoiler in module_scenes. Just add it on the bottom.
##Arch3r
("bridge_1",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_2",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_3",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_4",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_5",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_6",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_7",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_8",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_9",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_10",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_11",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_12",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_13",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_14",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
# ("bridge_15",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
# [],[], "outer_terrain_plain"),
("bridge_1",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_2",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_3",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_4",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_5",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_6",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_7",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_8",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_9",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_10",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_11",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_12",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_13",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
("bridge_14",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
[],[], "outer_terrain_plain"),
# ("bridge_15",sf_generate,"none", "none", (0,0),(120,120),-100,"0x3a078bb2000589630000667200002fb90000179c",
# [],[], "outer_terrain_plain"),