
Pepzee
Joined: Sep 9, 2010
Retired Halo Modder
|
Posted: Aug 23, 2011 09:21 PM
Msg. 1 of 4
Hey all, I'm just wondering if this is possible. But is there a way to shorten scripts? For instance, I'm making a firefight, but I have these same commands repeating over and over again. The only thing different with the commands is that it uses a different AI encounter than the other ones. Here's the script: (script startup cship1 (sleep_until (= (device_get_position start) 1) 30) (show_hud_help_text true) (hud_set_objective_text obj4) (hud_set_help_text obj4) (sleep 150) (show_hud_help_text false) (object_create_anew right) (unit_close right) (ai_place covie1/grunt_1) (ai_braindead covie1 true) (set covie1_placed true) (vehicle_load_magic right "passenger" (ai_actors covie1/grunt_1)) (recording_play_and_hover right back_cship_descend) (sleep 200) (unit_open right) (sleep 60) (begin_random (begin (vehicle_unload right "cd-passengerl01" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl02" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl03" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl04" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr01" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr02" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr03" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr04" )(sleep 5))) (ai_braindead covie1 false) (sleep 120) (vehicle_hover right false) (recording_play_and_delete right back_cship_exit) (sleep 30) (unit_close right) (object_set_collideable right false))
(script startup cship2 (sleep_until (= (device_get_position start) 1) 30) (sleep 150) (object_create_anew left) (unit_close left) (ai_place covie1/grunt_2) (vehicle_load_magic left "passenger" (ai_actors covie1/grunt_2)) (recording_play_and_hover left back_cship_descend) (sleep 200) (unit_open left) (sleep 60) (begin_random (begin (vehicle_unload left "cd-passengerl01" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl02" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl03" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl04" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr01" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr02" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr03" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr04" )(sleep 5))) (sleep 120) (vehicle_hover left false) (recording_play_and_delete left back_cship_exit) (sleep 30) (unit_close left) (object_set_collideable left false))
(script startup cship3 (sleep_until covie1_placed) (sleep_until (= (ai_living_count covie1) 0) 15) (show_hud_help_text true) (hud_set_objective_text obj5) (hud_set_help_text obj5) (sleep 150) (show_hud_help_text false) (object_create_anew right) (unit_close right) (ai_place covie2/grunt_4) (ai_braindead covie2 true) (set covie2_placed true) (vehicle_load_magic right "passenger" (ai_actors covie2/grunt_4)) (recording_play_and_hover right back_cship_descend) (sleep 200) (unit_open right) (sleep 60) (begin_random (begin (vehicle_unload right "cd-passengerl01" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl02" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl03" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl04" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr01" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr02" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr03" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr04" )(sleep 5))) (ai_braindead covie2 false) (sleep 120) (vehicle_hover right false) (recording_play_and_delete right back_cship_exit) (sleep 30) (unit_close right) (object_set_collideable right false))
(script startup cship4 (sleep_until covie1_placed) (sleep_until (= (ai_living_count covie1) 0) 15) (sleep 150) (object_create_anew left) (unit_close left) (ai_place covie2/grunt_3) (vehicle_load_magic left "passenger" (ai_actors covie2/grunt_3)) (recording_play_and_hover left back_cship_descend) (sleep 200) (unit_open left) (sleep 60) (begin_random (begin (vehicle_unload left "cd-passengerl01" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl02" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl03" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl04" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr01" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr02" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr03" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr04" )(sleep 5))) (sleep 120) (vehicle_hover left false) (recording_play_and_delete left back_cship_exit) (sleep 30) (unit_close left) (object_set_collideable left false)) As you can see it is just repeating the same commands over and over, and I'm looking for a way to shorten them so I don't have a script that is 2000 lines long and hard to read. Does it have anything to do with these "static" scripts I hear about? Thanks. Edited by Pepzee on Aug 23, 2011 at 09:39 PMBTW, this is just something I've wanted to know for awhile but, what scripting language does halo use? C++, C, ect? Edited by Pepzee on Aug 23, 2011 at 09:58 PM
|
|
|

kirby_422
Joined: Jan 22, 2006
Apparently public enemy number 1?
|
Posted: Aug 24, 2011 12:37 AM
Msg. 2 of 4
(script static "void" r_unld (begin_random (begin (vehicle_unload right "cd-passengerl01" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl02" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl03" )(sleep 5)) (begin (vehicle_unload right "cd-passengerl04" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr01" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr02" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr03" )(sleep 5)) (begin (vehicle_unload right "cd-passengerr04" )(sleep 5))) ) (script static "void" l_unld (begin_random (begin (vehicle_unload left "cd-passengerl01" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl02" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl03" )(sleep 5)) (begin (vehicle_unload left "cd-passengerl04" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr01" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr02" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr03" )(sleep 5)) (begin (vehicle_unload left "cd-passengerr04" )(sleep 5))) ) (script static "void" setup (sleep 150) (show_hud_help_text false) (object_create_anew right) (object_create_anew left) (unit_close right) (unit_close left) ) (script static "void" ani (recording_play_and_hover right back_cship_descend) (recording_play_and_hover left back_cship_descend) (sleep 200) (unit_open right) (unit_open left) (sleep 60) ) (script static "void" end (sleep 120) (vehicle_hover right false) (recording_play_and_delete right back_cship_exit) (vehicle_hover left false) (recording_play_and_delete left back_cship_exit) (sleep 30) (unit_close right) (object_set_collideable right false) (unit_close left) (object_set_collideable left false) )
(script startup cship1 (sleep_until (= (device_get_position start) 1) 30) (show_hud_help_text true) (hud_set_objective_text obj4) (hud_set_help_text obj4) (setup) (ai_place covie1/grunt_1) (ai_place covie1/grunt_2) (ai_braindead covie1 true) (set covie1_placed true) (vehicle_load_magic right "passenger" (ai_actors covie1/grunt_1)) (vehicle_load_magic left "passenger" (ai_actors covie1/grunt_2)) (ani) (wake cship2) (r_unld) (ai_braindead covie1 false) (end) )
(script dormant cship2 (l_unld) )
(script startup cship3 (sleep_until covie1_placed) (sleep_until (= (ai_living_count covie1) 0) 15) (show_hud_help_text true) (hud_set_objective_text obj5) (hud_set_help_text obj5) (setup) (ai_place covie2/grunt_4) (ai_braindead covie2 true) (set covie2_placed true) (vehicle_load_magic right "passenger" (ai_actors covie2/grunt_4)) (ai_place covie2/grunt_3) (vehicle_load_magic left "passenger" (ai_actors covie2/grunt_3)) (ani) (wake cship4) (r_unld) (ai_braindead covie2 false) (end))
(script dormant cship4 (l_undld) ) Its best if you keep repeating commands and such. If you had provided a script where it had looped like 8 times, then I would of written you a continuous script that changed between which AI it was looking at, etc, but you only seem to have 4 groups.
|
|
|

Pepzee
Joined: Sep 9, 2010
Retired Halo Modder
|
Posted: Aug 24, 2011 01:19 AM
Msg. 3 of 4
Quote: --- Original message by: kirby_422 Its best if you keep repeating commands and such. If you had provided a script where it had looped like 8 times, then I would of written you a continuous script that changed between which AI it was looking at, etc, but you only seem to have 4 groups. In reality I have 30 groups, I just didn't want to flood the forum with hundreds on lines. I'm trying to create a firefight, which has 30 waves, so the commands repeat each other 30 times. with the same encounter scheme (covie1, covie2, covie3, covie4, covie5, ect) So would I just repeat what you did 30 times? Thanks.
|
|
|

Polamee
Joined: Feb 25, 2008
MP2SPMT's founder
|
Posted: Aug 27, 2011 05:33 AM
Msg. 4 of 4
Quote: --- Original message by: PepzeeQuote: --- Original message by: kirby_422 Its best if you keep repeating commands and such. If you had provided a script where it had looped like 8 times, then I would of written you a continuous script that changed between which AI it was looking at, etc, but you only seem to have 4 groups. In reality I have 30 groups, I just didn't want to flood the forum with hundreds on lines. I'm trying to create a firefight, which has 30 waves, so the commands repeat each other 30 times. with the same encounter scheme (covie1, covie2, covie3, covie4, covie5, ect) So would I just repeat what you did 30 times? Thanks. Assuming the commands are the same, you can repeat the static scripts as many times as you need. Edited by Polamee on Aug 27, 2011 at 05:34 AM
|
|
|
| |
|
|
 |
|