Following this thread http://forums.taleworlds.com/index.php/topic,52793.0.html
I got the ships to work in sp. Now to get it to work in mp, that's a lot more work.
I followed Arch3r's guide on adding the invasion battle type, but instead made "sea battle" type.
Here are the added scripts:
And here's the mission template, all of the battle mission template was also copied over
here's the errors it spits out when i try to host a game.
Can anyone help me with these things? I'm afraid it's now outside of my current knowledge.
I got the ships to work in sp. Now to get it to work in mp, that's a lot more work.
I followed Arch3r's guide on adding the invasion battle type, but instead made "sea battle" type.
Here are the added scripts:
("cf_close_and_board",
[(assign,":boardedd",0),
(prop_instance_get_position,1,"$ship"),
(prop_instance_get_position,2,"$eship"),
(get_distance_between_positions,":dist",1,2),
(assign,":firstship","$ship"),
(assign,":secship","$eship"),
(copy_position,3,1),
(copy_position,4,2),
(position_move_y,3,-1600),
(position_move_y,4,-1600),
(try_for_range,reg5,0,16),
(try_for_range,reg10,0,16),
(get_distance_between_positions,":distance",3,4),
(try_begin),
(lt,":distance",400),
(prop_instance_get_position,5,":firstship"),
(prop_instance_animate_to_position,":firstship",5,1),
(prop_instance_get_position,6,":secship"),
(prop_instance_animate_to_position,":secship",6,1),
(party_set_slot,"p_ship_colisions",":firstship",1),
(party_set_slot,"p_ship_colisions",":secship",1),
(assign,":boardedd",1),
(end_try),
(position_move_y,4,200),
(end_try),
(position_move_y,3,200),
(copy_position,4,2),
(position_move_y,4,-1600),
(end_try),
(eq,":boardedd",0),
(try_begin),
(position_is_behind_position,2,1),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(assign,":angle",10),
(else_try),
(assign,":angle",-10),
(end_try),
(position_rotate_z,1,":angle"),
(prop_instance_animate_to_position,"$ship",1,400),
(else_try),
(position_is_behind_position,1,2),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(position_move_x,2,-250),
(else_try),
(position_move_x,2,250),
(end_try),
(prop_instance_animate_to_position,"$ship",2,":dist"),
(else_try),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(position_move_x,2,250),
(else_try),
(position_move_x,2,-250),
(end_try),
(position_rotate_z,2,180),
(prop_instance_animate_to_position,"$ship",2,":dist"),
(end_try),]),
("skirmish",
[(prop_instance_get_position,1,"$ship"),
(prop_instance_get_position,2,"$eship"),
(get_distance_between_positions,":dist",1,2),
(try_begin),
(gt,":dist",7500),
(try_begin),
(position_is_behind_position,2,1),
(position_move_y,1,400),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(assign,":angle",-10),
(else_try),
(assign,":angle",10),
(end_try),
(position_rotate_z,1,":angle"),
(prop_instance_animate_to_position,"$ship",1,400),
(else_try),
(position_move_y,1,400),
(prop_instance_animate_to_position,"$ship",1,400),
(end_try),
(else_try),
(try_begin),
(position_is_behind_position,2,1),
(position_move_y,1,400),
(prop_instance_animate_to_position,"$ship",1,400),
(else_try),
(position_move_y,1,400),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(assign,":angle",10),
(else_try),
(assign,":angle",-10),
(end_try),
(position_rotate_z,1,":angle"),
(prop_instance_animate_to_position,"$ship",1,400),
(end_try),
(end_try),]),
("select_enemy_ship",
[(prop_instance_get_position,1,"$ship"),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_enemy_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_enemy_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(assign,"$eship",":thechosenship"),
(end_try),]),
("select_friendly_ship",
[(prop_instance_get_position,1,"$ship"),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(assign,"$eship",":thechosenship"),
(end_try),]),
("check_for_collisions",
[(try_for_range,":shiptype","spr_ship","spr_enemy_ships_end"),
(scene_prop_get_num_instances,":number",":shiptype"),
(try_for_range,":firstshipno",0,":number"),
(scene_prop_get_instance,":firstship", ":shiptype", ":firstshipno"),
(prop_instance_get_position,1,":firstship"),
(try_for_range,":shiptypetwo","spr_ship","spr_enemy_ships_end"),
(scene_prop_get_num_instances,":numbertwo",":shiptypetwo"),
(try_for_range,":secshipno",-1,":numbertwo"),
(scene_prop_get_instance,":secship", ":shiptypetwo", ":secshipno"),
(neq,":firstship",":secship"),
(prop_instance_get_position,2,":secship"),
(copy_position,3,1),
(copy_position,4,2),
(position_move_y,3,-1600),
(position_move_y,4,-1600),
(try_for_range,reg5,0,16),
(try_for_range,reg10,0,16),
(get_distance_between_positions,":distance",3,4),
(try_begin),
(lt,":distance",325),
(prop_instance_get_position,5,":firstship"),
(prop_instance_animate_to_position,":firstship",5,1),
(prop_instance_get_position,6,":secship"),
(prop_instance_animate_to_position,":secship",6,1),
(party_set_slot,"p_ship_colisions",":firstship",1),
(party_set_slot,"p_ship_colisions",":secship",1),
(end_try),
(position_move_y,4,200),
(end_try),
(position_move_y,3,200),
(copy_position,4,2),
(position_move_y,4,-1600),
(end_try),
(end_try),
(end_try),
(end_try),
(end_try),]),
("kill_overboard",
[(try_for_agents,":agent"),
(agent_get_position,pos1,":agent"),
(agent_get_position,pos2,":agent"),
(position_set_z_to_ground_level, pos2),
(get_distance_between_positions,":dist",pos1,pos2),
(gt,":dist",500),
(agent_set_hit_points,":agent",0,0),
(agent_deliver_damage_to_agent,":agent",":agent"),
(end_try),]),
("cf_keep_troops_on_ships",
[(try_for_agents,":agent"),
(agent_is_alive,":agent"),
(agent_is_human,":agent"),
(agent_get_position,pos1,":agent"),
(try_begin),
(agent_is_ally,":agent"),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(prop_instance_get_position,pos3,":thechosenship"),
(assign,":checked_ship",":thechosenship"),
(end_try),
(try_begin),
(party_slot_eq,"p_ship_colisions",":checked_ship",1),
(agent_clear_scripted_mode,":agent"),
(else_try),
(agent_set_scripted_destination,":agent",pos3,0),
(end_try),
(else_try),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_enemy_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(prop_instance_get_position,pos3,":thechosenship"),
(assign,":checked_ship",":thechosenship"),
(end_try),
(try_begin),
(party_slot_eq,"p_ship_colisions",":checked_ship",1),
(agent_clear_scripted_mode,":agent"),
(else_try),
(agent_set_scripted_destination,":agent",pos3,0),
(end_try),
(end_try),
(end_try),]),
[(assign,":boardedd",0),
(prop_instance_get_position,1,"$ship"),
(prop_instance_get_position,2,"$eship"),
(get_distance_between_positions,":dist",1,2),
(assign,":firstship","$ship"),
(assign,":secship","$eship"),
(copy_position,3,1),
(copy_position,4,2),
(position_move_y,3,-1600),
(position_move_y,4,-1600),
(try_for_range,reg5,0,16),
(try_for_range,reg10,0,16),
(get_distance_between_positions,":distance",3,4),
(try_begin),
(lt,":distance",400),
(prop_instance_get_position,5,":firstship"),
(prop_instance_animate_to_position,":firstship",5,1),
(prop_instance_get_position,6,":secship"),
(prop_instance_animate_to_position,":secship",6,1),
(party_set_slot,"p_ship_colisions",":firstship",1),
(party_set_slot,"p_ship_colisions",":secship",1),
(assign,":boardedd",1),
(end_try),
(position_move_y,4,200),
(end_try),
(position_move_y,3,200),
(copy_position,4,2),
(position_move_y,4,-1600),
(end_try),
(eq,":boardedd",0),
(try_begin),
(position_is_behind_position,2,1),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(assign,":angle",10),
(else_try),
(assign,":angle",-10),
(end_try),
(position_rotate_z,1,":angle"),
(prop_instance_animate_to_position,"$ship",1,400),
(else_try),
(position_is_behind_position,1,2),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(position_move_x,2,-250),
(else_try),
(position_move_x,2,250),
(end_try),
(prop_instance_animate_to_position,"$ship",2,":dist"),
(else_try),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(position_move_x,2,250),
(else_try),
(position_move_x,2,-250),
(end_try),
(position_rotate_z,2,180),
(prop_instance_animate_to_position,"$ship",2,":dist"),
(end_try),]),
("skirmish",
[(prop_instance_get_position,1,"$ship"),
(prop_instance_get_position,2,"$eship"),
(get_distance_between_positions,":dist",1,2),
(try_begin),
(gt,":dist",7500),
(try_begin),
(position_is_behind_position,2,1),
(position_move_y,1,400),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(assign,":angle",-10),
(else_try),
(assign,":angle",10),
(end_try),
(position_rotate_z,1,":angle"),
(prop_instance_animate_to_position,"$ship",1,400),
(else_try),
(position_move_y,1,400),
(prop_instance_animate_to_position,"$ship",1,400),
(end_try),
(else_try),
(try_begin),
(position_is_behind_position,2,1),
(position_move_y,1,400),
(prop_instance_animate_to_position,"$ship",1,400),
(else_try),
(position_move_y,1,400),
(try_begin),
(position_move_x,1,100),
(get_distance_between_positions,":distance",1,2),
(position_move_x,1,-100),
(lt,":distance",":dist"),
(assign,":angle",10),
(else_try),
(assign,":angle",-10),
(end_try),
(position_rotate_z,1,":angle"),
(prop_instance_animate_to_position,"$ship",1,400),
(end_try),
(end_try),]),
("select_enemy_ship",
[(prop_instance_get_position,1,"$ship"),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_enemy_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_enemy_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(assign,"$eship",":thechosenship"),
(end_try),]),
("select_friendly_ship",
[(prop_instance_get_position,1,"$ship"),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(assign,"$eship",":thechosenship"),
(end_try),]),
("check_for_collisions",
[(try_for_range,":shiptype","spr_ship","spr_enemy_ships_end"),
(scene_prop_get_num_instances,":number",":shiptype"),
(try_for_range,":firstshipno",0,":number"),
(scene_prop_get_instance,":firstship", ":shiptype", ":firstshipno"),
(prop_instance_get_position,1,":firstship"),
(try_for_range,":shiptypetwo","spr_ship","spr_enemy_ships_end"),
(scene_prop_get_num_instances,":numbertwo",":shiptypetwo"),
(try_for_range,":secshipno",-1,":numbertwo"),
(scene_prop_get_instance,":secship", ":shiptypetwo", ":secshipno"),
(neq,":firstship",":secship"),
(prop_instance_get_position,2,":secship"),
(copy_position,3,1),
(copy_position,4,2),
(position_move_y,3,-1600),
(position_move_y,4,-1600),
(try_for_range,reg5,0,16),
(try_for_range,reg10,0,16),
(get_distance_between_positions,":distance",3,4),
(try_begin),
(lt,":distance",325),
(prop_instance_get_position,5,":firstship"),
(prop_instance_animate_to_position,":firstship",5,1),
(prop_instance_get_position,6,":secship"),
(prop_instance_animate_to_position,":secship",6,1),
(party_set_slot,"p_ship_colisions",":firstship",1),
(party_set_slot,"p_ship_colisions",":secship",1),
(end_try),
(position_move_y,4,200),
(end_try),
(position_move_y,3,200),
(copy_position,4,2),
(position_move_y,4,-1600),
(end_try),
(end_try),
(end_try),
(end_try),
(end_try),]),
("kill_overboard",
[(try_for_agents,":agent"),
(agent_get_position,pos1,":agent"),
(agent_get_position,pos2,":agent"),
(position_set_z_to_ground_level, pos2),
(get_distance_between_positions,":dist",pos1,pos2),
(gt,":dist",500),
(agent_set_hit_points,":agent",0,0),
(agent_deliver_damage_to_agent,":agent",":agent"),
(end_try),]),
("cf_keep_troops_on_ships",
[(try_for_agents,":agent"),
(agent_is_alive,":agent"),
(agent_is_human,":agent"),
(agent_get_position,pos1,":agent"),
(try_begin),
(agent_is_ally,":agent"),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(prop_instance_get_position,pos3,":thechosenship"),
(assign,":checked_ship",":thechosenship"),
(end_try),
(try_begin),
(party_slot_eq,"p_ship_colisions",":checked_ship",1),
(agent_clear_scripted_mode,":agent"),
(else_try),
(agent_set_scripted_destination,":agent",pos3,0),
(end_try),
(else_try),
(assign,":dist",999999999),
(scene_prop_get_num_instances,reg50,"spr_ship"),
(val_add,reg50,1),
(try_for_range,":instance",0,reg50),
(scene_prop_get_instance,":thechosenship", "spr_enemy_ship", ":instance"),
(prop_instance_get_position,2,":thechosenship"),
(get_distance_between_positions,":distance",1,2),
(lt,":distance",":dist"),
(assign,":dist",":distance"),
(prop_instance_get_position,pos3,":thechosenship"),
(assign,":checked_ship",":thechosenship"),
(end_try),
(try_begin),
(party_slot_eq,"p_ship_colisions",":checked_ship",1),
(agent_clear_scripted_mode,":agent"),
(else_try),
(agent_set_scripted_destination,":agent",pos3,0),
(end_try),
(end_try),
(end_try),]),
(
"ship_battle",mtf_battle_mode,-1,
"You enter battle on your longships.",
[
(0,mtef_visitor_source|mtef_team_1|mtef_no_auto_reset,af_override_horse,aif_start_alarmed,4,[]),
(1,mtef_visitor_source|mtef_team_1,af_override_horse,aif_start_alarmed,4,[]),
(2,mtef_visitor_source|mtef_team_1,af_override_horse,aif_start_alarmed,4,[]),
(32,mtef_visitor_source|mtef_team_0|mtef_no_auto_reset,af_override_horse,aif_start_alarmed,4,[]),
(10,mtef_visitor_source|mtef_team_0,af_override_horse,aif_start_alarmed,4,[]),
(11,mtef_visitor_source|mtef_team_0,af_override_horse,aif_start_alarmed,4,[]),
(12,mtef_visitor_source|mtef_team_0,af_override_horse,aif_start_alarmed,4,[]),
],
[
<<<COPY PASTE ALL OF multiplayer_bt (battle type) HERE>>>
(1, 0, 0, [], [(scene_prop_get_instance,"$ship", "spr_ship", 0),(scene_prop_get_instance,"$eship", "spr_enemy_ship", 0),]),
#(10, 0, ti_once, [], [(try_for_agents,":agent"),(agent_set_speed_limit,":agent",0),(end_try),]),
#(ti_tab_pressed, 0, 0, [],
# [
# (try_begin),
# (eq, "$battle_won", 1),
# (finish_mission,0),
# (else_try),
# (call_script, "script_cf_check_enemies_nearby"),
# (question_box,"str_do_you_want_to_retreat"),
# (else_try),
# (display_message,"str_can_not_retreat"),
# (try_end),
# ]),
(0, 0, ti_once, [], [(assign,"$pbehavior",1),(assign,"$ebehavior",2),]),
#(1, 60, ti_once, [(store_mission_timer_a,reg(1)),(ge,reg(1),10),(all_enemies_defeated,2),(neg|main_hero_fallen,0),(set_mission_result,1),(display_message,"str_msg_battle_won"),(assign,"$battle_won",1),(assign, "$g_battle_result", 1)],
# [(finish_mission,1)]),
#(10, 0, 0, [], [(eq,"$battle_won",1),(display_message,"str_msg_battle_won")]),
#(1, 4, ti_once, [(main_hero_fallen,0)],
# [(set_mission_result,-1),(finish_mission,1)]),
#friendly ship ai
(0.1, 0, 0, [],
[(call_script,"script_check_for_collisions"),]),
(0.1, 0, 0, [],
[(call_script,"script_kill_overboard"),]),
(0.05, 0, 0, [],
[(call_script,"script_cf_keep_troops_on_ships"),]),
# (0.1, 0, 0, [],
#[(try_for_agents,":agent"),
# (agent_is_human,":agent"),
# (agnet_is_alive,":agent"),
(1.0, 0, 0, [(eq,"$pbehavior",1)],
[(scene_prop_get_num_instances,reg12, "spr_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_ship", reg13),
(call_script,"script_select_enemy_ship"),
(call_script,"script_cf_close_and_board"),
(end_try),(call_script,"script_check_for_collisions"),]),
(1.0, 0, 0, [(eq,"$pbehavior",2),],
[(scene_prop_get_num_instances,reg12, "spr_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_ship", reg13),
(call_script,"script_select_enemy_ship"),
(call_script,"script_skirmish"),
(end_try),(call_script,"script_check_for_collisions"),]),
#enemy ship ai
(10.0, 0, 0, [],
[(assign,":friends",0),
(assign,":enemies",0),
(try_for_agents,":agent"),
(agent_is_alive,":agent"),
(try_begin),
(agent_is_ally,":agent"),
(val_add,":friends",1),
(else_try),
(val_add,":enemies",1),
(end_try),
(end_try),
(try_begin),
(val_mul,":friends",10),
(val_div,":friends",":enemies"),
(gt,":friends",
,
(assign,"$ebehavior",2),
(else_try),
(assign,"$ebehavior",1),
(end_try)]),
(1.0, 0, 0, [(eq,"$ebehavior",1)],
[(scene_prop_get_num_instances,reg12, "spr_enemy_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_enemy_ship", reg13),
(call_script,"script_select_friendly_ship"),
(call_script,"script_cf_close_and_board"),
(end_try),(call_script,"script_check_for_collisions"),]),
(1.0, 0, 0, [(eq,"$ebehavior",2)],
[(scene_prop_get_num_instances,reg12, "spr_enemy_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_enemy_ship", reg13),
(call_script,"script_select_friendly_ship"),
(call_script,"script_skirmish"),
(end_try),(call_script,"script_check_for_collisions"),]),
(ti_inventory_key_pressed, 0, 0, [(try_begin),
(eq,"$pbehavior",2),
(assign,"$pbehavior",0),
(display_message,"str_hold"),
(scene_prop_get_instance,"$ship", "spr_ship", 0),
(prop_instance_get_position,1,"$ship"),
(prop_instance_animate_to_position,"$ship",1,1),
(else_try),
(val_add,"$pbehavior",1),
(try_begin),
(eq,"$pbehavior",1),
(display_message,"str_board"),
(else_try),
(display_message,"str_skirmish"),
(end_try),
(end_try)], []),
#(ti_question_answered, 0, 0, [],
# [(store_trigger_param_1,":answer"),(eq,":answer",0),(finish_mission,0),]),
],
),
"ship_battle",mtf_battle_mode,-1,
"You enter battle on your longships.",
[
(0,mtef_visitor_source|mtef_team_1|mtef_no_auto_reset,af_override_horse,aif_start_alarmed,4,[]),
(1,mtef_visitor_source|mtef_team_1,af_override_horse,aif_start_alarmed,4,[]),
(2,mtef_visitor_source|mtef_team_1,af_override_horse,aif_start_alarmed,4,[]),
(32,mtef_visitor_source|mtef_team_0|mtef_no_auto_reset,af_override_horse,aif_start_alarmed,4,[]),
(10,mtef_visitor_source|mtef_team_0,af_override_horse,aif_start_alarmed,4,[]),
(11,mtef_visitor_source|mtef_team_0,af_override_horse,aif_start_alarmed,4,[]),
(12,mtef_visitor_source|mtef_team_0,af_override_horse,aif_start_alarmed,4,[]),
],
[
<<<COPY PASTE ALL OF multiplayer_bt (battle type) HERE>>>
(1, 0, 0, [], [(scene_prop_get_instance,"$ship", "spr_ship", 0),(scene_prop_get_instance,"$eship", "spr_enemy_ship", 0),]),
#(10, 0, ti_once, [], [(try_for_agents,":agent"),(agent_set_speed_limit,":agent",0),(end_try),]),
#(ti_tab_pressed, 0, 0, [],
# [
# (try_begin),
# (eq, "$battle_won", 1),
# (finish_mission,0),
# (else_try),
# (call_script, "script_cf_check_enemies_nearby"),
# (question_box,"str_do_you_want_to_retreat"),
# (else_try),
# (display_message,"str_can_not_retreat"),
# (try_end),
# ]),
(0, 0, ti_once, [], [(assign,"$pbehavior",1),(assign,"$ebehavior",2),]),
#(1, 60, ti_once, [(store_mission_timer_a,reg(1)),(ge,reg(1),10),(all_enemies_defeated,2),(neg|main_hero_fallen,0),(set_mission_result,1),(display_message,"str_msg_battle_won"),(assign,"$battle_won",1),(assign, "$g_battle_result", 1)],
# [(finish_mission,1)]),
#(10, 0, 0, [], [(eq,"$battle_won",1),(display_message,"str_msg_battle_won")]),
#(1, 4, ti_once, [(main_hero_fallen,0)],
# [(set_mission_result,-1),(finish_mission,1)]),
#friendly ship ai
(0.1, 0, 0, [],
[(call_script,"script_check_for_collisions"),]),
(0.1, 0, 0, [],
[(call_script,"script_kill_overboard"),]),
(0.05, 0, 0, [],
[(call_script,"script_cf_keep_troops_on_ships"),]),
# (0.1, 0, 0, [],
#[(try_for_agents,":agent"),
# (agent_is_human,":agent"),
# (agnet_is_alive,":agent"),
(1.0, 0, 0, [(eq,"$pbehavior",1)],
[(scene_prop_get_num_instances,reg12, "spr_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_ship", reg13),
(call_script,"script_select_enemy_ship"),
(call_script,"script_cf_close_and_board"),
(end_try),(call_script,"script_check_for_collisions"),]),
(1.0, 0, 0, [(eq,"$pbehavior",2),],
[(scene_prop_get_num_instances,reg12, "spr_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_ship", reg13),
(call_script,"script_select_enemy_ship"),
(call_script,"script_skirmish"),
(end_try),(call_script,"script_check_for_collisions"),]),
#enemy ship ai
(10.0, 0, 0, [],
[(assign,":friends",0),
(assign,":enemies",0),
(try_for_agents,":agent"),
(agent_is_alive,":agent"),
(try_begin),
(agent_is_ally,":agent"),
(val_add,":friends",1),
(else_try),
(val_add,":enemies",1),
(end_try),
(end_try),
(try_begin),
(val_mul,":friends",10),
(val_div,":friends",":enemies"),
(gt,":friends",
(assign,"$ebehavior",2),
(else_try),
(assign,"$ebehavior",1),
(end_try)]),
(1.0, 0, 0, [(eq,"$ebehavior",1)],
[(scene_prop_get_num_instances,reg12, "spr_enemy_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_enemy_ship", reg13),
(call_script,"script_select_friendly_ship"),
(call_script,"script_cf_close_and_board"),
(end_try),(call_script,"script_check_for_collisions"),]),
(1.0, 0, 0, [(eq,"$ebehavior",2)],
[(scene_prop_get_num_instances,reg12, "spr_enemy_ship"),
(val_add,reg12,1),
(try_for_range,reg13,0,reg12),
(scene_prop_get_instance,"$ship", "spr_enemy_ship", reg13),
(call_script,"script_select_friendly_ship"),
(call_script,"script_skirmish"),
(end_try),(call_script,"script_check_for_collisions"),]),
(ti_inventory_key_pressed, 0, 0, [(try_begin),
(eq,"$pbehavior",2),
(assign,"$pbehavior",0),
(display_message,"str_hold"),
(scene_prop_get_instance,"$ship", "spr_ship", 0),
(prop_instance_get_position,1,"$ship"),
(prop_instance_animate_to_position,"$ship",1,1),
(else_try),
(val_add,"$pbehavior",1),
(try_begin),
(eq,"$pbehavior",1),
(display_message,"str_board"),
(else_try),
(display_message,"str_skirmish"),
(end_try),
(end_try)], []),
#(ti_question_answered, 0, 0, [],
# [(store_trigger_param_1,":answer"),(eq,":answer",0),(finish_mission,0),]),
],
),
L8 Format is unsupported SCRIPT WARNING : Division by zero; LINE NO: 13:
At Mission Template mst_ship_battle trigger no: 32 consequences. At Mission Template mst_ship_battle trigger no: 32 consequences.
At Mission Template mst_ship_battle trigger no: 32 consequences. At Mission Template mst_ship_battle trigger no: 32 consequences.
Can anyone help me with these things? I'm afraid it's now outside of my current knowledge.




