Kryose's AI question(s) - ongoing
Posted: Fri May 02, 2008 6:07 pm
Hello everyone,
Since it's not very busy here at work, I thought I would try my hand at coding a little AI. Of course because I read through the tutorial (start to finish) I thought 'hey, that's easy!' (how wrong I was). I based it mostly off of the tutorial so here is what I was able to do for a few hours at work.
The researching is all set to wait 3600 cause I don't know the researching times atm. I haven't been able to test it, and besides, I don't even know how to test it (I will look into it later when I have time at home).
I have a couple questions regarding some things though.
a) When a building get's destroyed. Does the AI automatically try to rebuild? Further, if an expansion is destroyed, does the AI automatically try to build it again?
-and-
Does the AI automatically fill bunkers? Or is there a command to do it?
Any and all criticisms are welcome. I am pretty sure there are alot of spelling mistakes and that it has alot of unnecessary code that could be cut. Anyways, here is the code. Tell me what you think.
[spoiler]; ASC3 File generated by ScAIEdit III
;
; Script name : Terran Expansion Custom Level
;
; Terran Multirun Script v1.0 - Created by Kryose
;
script_name Terran Expansion Custom Level
script_id TMCx
; === STARTUP COMMANDS ===
start_town
transports_off
farms_notiming
; === MAX UNIT DEFINITION ===
define_max 100 scv
define_max 75 marine
define_max 75 medic
define_max 25 firebat
define_max 50 ghost
define_max 75 vulture
define_max 20 siege_tank
define_max 20 goliath
define_max 40 wraith
define_max 20 battlecruiser
define_max 2 nuclear_missile
define_max 4 science_vessel
define_max 3 dropship
define_max 2 valkyrie
; === START ===
build 1 command_center 150
wait_build 1 command_center
build 4 scv 130
wait_build 4 scv
multirun m_funding
; === MAIN ===
; --- RESEARCH ---
multirun r_academy
multirun r_engineering_bay
multirun r_machine_shop
multirun r_control_tower
multirun r_armory
multirun r_covert_ops
multirun r_physics_bay
multirun r_science_facility
; --- ECONOMY/BUILDING ---
build 5 scv 80
wait_buildstart 5 scv
build 6 scv 80
wait_buildstart 6 scv
build 7 scv 80
wait_buildstart 7 scv
build 1 supply_depot 80
wait_buildstart 1 supply_depot
build 8 scv 80
wait_buildstart 8 scv
goto b_barracks1
:a_barracks1
farms_timing
build 9 scv 80
wait_buildstart 9 scv
build 10 scv 80
wait_buildstart 10 scv
build 1 refinery 80
wait_buildstart 1 refinery
goto b_bunker1
:a_bunker1
build 11 scv 80
wait_buildstart 11 scv
goto b_academy
:a_academy
build 12 scv 80
wait_buildstart 12 scv
goto b_barracks2
:a_barracks2
build 13 scv 80
wait_buildstart 13 scv
goto b_engineeringbay
:a_engineeringbay
multirun m_rushcheck
goto b_startdefense
:a_startdefense
expand 1 b_expansion
goto b_factory1
:a_factory1
build 4 scv 80
train 3 marine
train 1 medic
train 1 vulture
train 1 seige_tank
multirun m_rushcheck
build 4 scv 80
expand 1 b_expansion
goto b_factory2
:a_factory2
goto b_armory
:a_armory
multirun m_rushcheck
build 4 scv 80
goto b_starport
:a_starport
build 3 scv 80
multirun m_rushcheck
goto b_bunker2
:a_bunker2
goto b_turret
:a_turret
build 3 scv 80
multirun m_rushcheck
expand 1 b_expansion
goto b_starport2
:a_starport2
build 2 scv 80
goto b_sciencefacility
:a_sciencefacility
multirun m_rushcheck
goto b_finaldefense
:a_finaldefense
build 2 scv 80
goto b_turret
:a_turret
expand 1 b_expansion
multirun m_rushcheck
expand 1 b_expansion
; === END LOOP ===
:suicideloop
multirun m_masscheck
wait 4000
send_suicide 0
; === FUNDING MULTI-RUN ===
:m_funding
wait 1000
give_money
goto m_funding
; === EXPANSION SCRIPT ===
:b_expansion
start_town
build 1 command_center 80
wait_build 1 command_center
build 8 scv 70
wait_build 1 barracks
build 1 bunker 70
wait_build 1 engineering_bay
build 2 turret 70
build 1 refinery 70
build 1 comsat_station
a_expansion
; === BUILD SCRIPT ===
; --- BARRACKS ---
:b_barracks1
build 1 barracks 80
wait_buildstart 1 barracks
build 2 supply_depot 80
wait_buildstart 2 supply_depot
wait_build 1 barracks
train 1 marine
goto a_barracks1
; --- BUNKER1 ---
:b_bunker1
wait_build 1 barracks
build 1 bunker 80
wait_buildstart 1 bunker
train 4 marine
goto a_bunker1
; --- ACADEMY ---
:b_academy
wait_build 1 barracks
build 1 academy 80
wait_buildstart 1 academy
goto a_academy
; --- BARRACKS2 ---
:b_barracks2
build 4 barracks 80
wait_buildstart 4 barracks
wait_build academy
wait_build 4 barracks
train 6 marine
train 3 firebats
train 4 medic
goto a_barracks2
; --- ENGINEERING BAY ---
:b_engineeringbay
wait_build 1 barracks
build 1 engineering_bay 80
wait_buildstart 1 engineering_bay
wait_build 1 engineering_bay
build 3 turret 70
goto a_engineeringbay
; --- FACTORY1 ---
:b_factory1
wait_build 1 barracks
build 1 factory 80
wait_buildstart 1 factory
wait_build 1 factory
train 2 vulture
build 1 machine_shop 80
wait_buildstart 1 machine_shop
wait_build 1 machine_shop
train 2 seige_tank
train 2 vulture
goto a_factory1
; --- FACTORY2 ---
:b_factory2
wait_build 1 barracks
build 4 factory 80
wait_buildstart 4 factory
wait_build 4 factory
build 2 machine_shop 80
wait_buildstart 2 machine_shop
wait_build 2 machine_shop
train 3 seige_tank
goto a_factory2
; --- ARMORY ---
:b_armory
wait_build 1 factory
build 2 armory 80
wait_buildstart 2 armory
wait_build 1 armory
train 3 goliath
goto a_armory
; --- STARPORT ---
:b_starport
wait_build 1 factory
build 1 starport 80
wait_buildstart 1 starport
wait_build 1 starport
train 2 wraith
build 1 control_tower 80
wait_buildstart 1 control_tower
goto a_starport
; --- BUNKER2 ---
:b_bunker2
wait_build 1 barracks
build 5 bunker 80
train 10 marine
train 4 firebat
goto a_bunker2
; --- TURRET ---
:b_turret
wait_build 1 engineering_bay
build 10 turret 80
goto a_turret
; --- STARPORT ---
:b_starport
wait_build 1 factory
build 4 starport 80
wait_buildstart 4 starport
wait_build 4 starport
build 3 control_tower 80
goto a_starport
; --- SCIENCE FACILITY ---
:b_sciencefacility
wait_build 1 starport
build 2 science_facility 80
wait_buildstart 2 science_facility
wait_build 2 science_facility
train 2 science_vessel
build 1 physics_lab 80
wait_buildstart 1 physics_lab
build 1 covert_ops 80
wait_buildstart 1 covert_ops
wait_build 1 physics_lab
train 1 battlecruiser
wait_build 1 covert_ops
build 1 nuclear_silo
goto a_sciencefacility
; === DEFENSE SCRIPTS ===
; --- STARTING DEFENSE ---
:b_startdefense
defenseclear_gg
defensebuild_gg 6 marine
defenseuse_gg 6 marine
defensebuild_gg 1 firebat
defenseuse_gg 1 firebat
defensebuild_gg 1 vulture
defenseuse_gg 1 vulture
defensebuild_gg 2 seige_tank
defenseuse_gg 2 seige_tank
defensebuild_gg 1 goliath
defenseuse_gg 1 goliath
defensebuild_gg 1 wraith
defenseuse_gg 1 wraith
defensebuild_gg 1 battlecruiser
defenseuse_gg 1 battlecruiser
defenseclear_ag
defensebuild_ag 6 marine
defenseuse_ag 6 marine
defensebuild_ag 1 goliath
defenseuse_ag 1 goliath
defensebuild_ag 1 wraith
defenseuse_ag 1 wraith
defensebuild_ag 1 battlecruiser
defenseuse_ag 1 battlecruiser
defenseclear_aa
defensebuild_aa 1 valkyrie
defenseuse_aa 1 valkyrie
defensebuild_aa 1 wraith
defenseuse_aa 1 wraith
defensebuild_aa 1 battlecruiser
defenseuse_aa 1 battlecruiser
defenseclear_ga
defensebuild_ga 1 wraith
defenseuse_ga 1 wraith
defensebuild_ga 1 battlecruiser
defenseuse_ga 1 battlecruiser
goto a_startdefense
; --- FINAL DEFENSE ---
:b_finaldefense
defenseclear_gg
defensebuild_gg 2 ghost
defenseuse_gg 2 ghost
defensebuild_gg 2 seige_tank
defenseuse_gg 2 seige_tank
defensebuild_gg 2 goliath
defenseuse_gg 2 goliath
defensebuild_gg 2 wraith
defenseuse_gg 2 wraith
defensebuild_gg 2 battlecruiser
defenseuse_gg 2 battlecruiser
defenseclear_ag
defensebuild_ag 1 goliath
defenseuse_ag 1 goliath
defensebuild_ag 4 ghost
defenseuse_ag 4 ghost
defensebuild_ag 1 wraith
defenseuse_ag 1 wraith
defensebuild_ag 1 battlecruiser
defenseuse_ag 1 battlecruiser
defenseclear_aa
defensebuild_aa 1 valkyrie
defenseuse_aa 1 valkyrie
defensebuild_aa 1 wraith
defenseuse_aa 1 wraith
defensebuild_aa 1 battlecruiser
defenseuse_aa 1 battlecruiser
defenseclear_ga
defensebuild_ga 1 wraith
defenseuse_ga 1 wraith
defensebuild_ga 1 battlecruiser
defenseuse_ga 1 battlecruiser
goto a_finaldefense
; === RUSH CHECKS ===
:m_rushcheck
; --- RUSH BATTLECRUISER/WRAITH CHECK---
notowns_jump physics_lab b_wraithcheck
notowns_jump control_tower b_wraithcheck
wait 1200
resources_jump 1800 1300 b_cruiserrush
:a_cruiserrush
; --- RUSH WRAITH CHECK ---
:b_wraithcheck
notowns_jump starport b_groundcheck
wait 800
resources_jump 900 600 b_wraithrush
:a_wraithrush
; --- RUSH MEDIC/MARINE/VULTURE/TANK CHECK ---
:b_groundcheck
notowns_jump machine_shop b_tankcheck
notowns_jump academy b_tankcheck
notowns_jump barracks b_tankcheck
wait 600
resources_jump 1600 575 b_groundrush
:a_groundrush
; --- RUSH VULTURE/TANK CHECK ---
:b_tankcheck
notowns_jump machine_shop b_marinecheck
wait 400
resources_jump 1125 500 b_tankrush
:a_tankrush
; --- RUSH MEDIC/MARINE CHECK ---
:b_marinecheck
notowns_jump academy nocheck
notowns_jump barracks nocheck
wait 200
resources_jump 700 100 b_marinerush
:a_marinerush
:nocheck
stop
; === RUSH ATTACK SCRIPTS ===
; --- MEDIC/MARINE RUSH ---
:b_marinerush
wait_build 1 barracks
wait_build 1 academy
train 10 marine
train 4 medic
attack_add 10 marine
attack_add 4 medic
attack_prepare
attack_do
attack_clear
goto a_marinerush
; --- VULTURE/TANK RUSH ---
:b_tankrush
wait_build 1 factory
wait_build 1 machine_shop
train 5 siege_tank
train 5 vulture
attack_add 5 siege_tank
attack_add 5 vulture
attack_prepare
attack_do
attack_clear
goto a_tankrush
; --- MEDIC/MARINE/VULTURE/TANK RUSH ---
:b_groundrush
wait_build 1 barracks
wait_build 1 academy
wait_build 1 factory
wait_build 1 machine_shop
train 5 siege_tank
train 4 vulture
train 8 marine
train 3 medic
attack_add 5 siege_tank
attack_add 4 vulture
attack_add 8 marine
attack_add 3 medic
attack_prepare
attack_do
attack_clear
goto a_groudrush
; --- WRAITH RUSH ---
:b_wraithrush
wait_build 1 starport
train 6 wraith
attack_add 6 wraith
attack_prepare
attack_do
attack_clear
goto a_wraithrush
; --- BATTLECRUISER/WRAITH RUSH ---
:b_cruiserrush
wait_build 1 starport
wait_build 1 control_tower
wait_build 1 science_facility
wait_build 1 physics_lab
train 4 wraith
train 2 battlecruiser
attack_add 4 wraith
attack_add 2 battlecruiser
attack_prepare
attack_do
attack_clear
goto a_cruiserrush
; === MASS CHECKS ===
:m_masscheck
; --- MASS BATTLECRUISER CHECK ---
notowns_jump control_tower b_masswraithcheck
notowns_jump physics_lap b_masswraithcheck
wait 1000
resources_jump 2000 2000 b_cruisermass
:a_cruisermass
; --- MASS WRAITH CHECK ---
:b_masswraithcheck
notowns_jump starport b_masstankcheck
wait 1000
resources_jump 2000 1800 b_wraithmass
:a_wraithmass
; --- MASS VULTURE/TANK/GOLIATH CHECK ---
:b_masstankcheck
notowns_jump machine_shop b_massinfantrycheck
notowns_jump armory b_massinfantrycheck
wait 1000
resources_jump 2000 1500 b_tankmass
:a_tankmass
; --- MASS MEDIC/MARINE/GHOST CHECK ---
:b_massinfantrycheck
notowns_jump academy b_massmedicmarinecheck
notowns_jump barracks b_massmedicmarinecheck
notowns_jump covert_ops b_massmedicmarinecheck
wait 1000
resources_jump 2000 500 b_infantrymass
:a_infantrymass
; --- MASS MEDIC/MARINE CHECK ---
:b_massmedicmarinecheck
notowns_jump academy b_massmarinecheck
notowns_jump barracks b_massmarinecheck
wait 1000
resources_jump 2000 250 b_medicmarinemass
:a_medicmarinemass
; --- MASS MARINE CHECK ---
:b_massmarinecheck
notowns_jump academy nomasscheck
notowns_jump barracks nomasscheck
wait 1000
resources_jump 2000 0 b_marinemass
:a_marinemass
:nomasscheck
stop
; === MASS ATTACK SCRIPTS ===
; --- MARINE MASS ---
:b_marinemass
wait_build 1 barracks
train 50 marine
goto a_marinemass
; --- MEDIC/MARIN MASS ---
:b_medicmarinemass
wait_build 1 barracks
wait_build 1 armory
train 40 marine
train 10 medic
goto a_medicmarinemass
; --- MEDIC/MARINE/GHOST MASS ---
:b_infantrymass
wait_build 1 barracks
wait_build 1 academy
wait_build 1 covert-ops
train 30 marine
train 10 medic
train 10 ghost
train 1 science_vessel
train 1 nuclear_missile
goto a_infantrymass
; --- VULTURE/TANK/GOLIATH MASS ---
:b_tankmass
wait_build 1 machine_shop
wait_build 1 armory
train 12 seige_tank
train 20 vulture
train 15 goliath
train 1 science_vessel
goto a_tankmass
; --- WRAITH MASS ---
:b_wraithmass
wait_build 1 starport
train 30 wraith
train 2 science_vessel
goto a_wraithmass
; --- BATTLECRUISER MASS ---
:b_cruisermass
wait_build 1 control_tower
wait_build 1 physics_lab
train 15 battlecruiser
train 2 science_vessel
goto a_cruisermass
; === RESEARCH MULTI-RUN ===
; --- ACADEMY UPGRADES ---
:r_academy
wait_build 1 academy
tech stim_pack 70
wait 3600
upgrade 1 marine_range 70
wait 3600
tech optical_flare 70
wait 3600
upgrade 1 medic_mana 70
wait 3600
tech restoration 70
stop
; --- ENGINEERING BAY UPGRADES ---
:r_engineering_bay
wait_build 1 engineering_bay
upgrade 1 t_infantry_weapon 70
wait 3600
upgrade 1 t_infantry_armor 70
wait 3600
wait_build 1 science_facility
upgrade 2 t_infantry_weapon 70
wait 3600
upgrade 2 t_infantry_armor 70
wait 3600
upgrade 3 t_infantry_weapon 70
wait 3600
upgrade 3 t_infantry_armor 70
stop
; --- MACHINE SHOP UPGRADES ---
:r_machine_shop
wait_build 1 machine_shop
tech spider_mines 70
wait 3600
tech seige_mode 70
wait 3600
upgrade 1 vulture_speed 70
wait 3600
wait_build 1 armory
upgrade 1 goliath_range 70
stop
; --- CONTROL TOWER UPGRADES ---
:r_control_tower
wait_build 1 control_tower
tech cloaking_field 70
wait 3600
upgrade wraith_mana 70
stop
; --- ARMORY UPGRADES ---
:r_armory
wait_build 2 armory
upgrade 1 t_vehicle_weapon 70
upgrade 1 t_ship_weapon 70
wait 3600
wait_build 1 science_facility
upgrade 2 t_vehicle_weapon 70
upgrade 2 t_ship_weapon 70
wait 3600
upgrade 3 t_vehicle_weapon 70
upgrade 3 t_ship_weapon 70
stop
; --- COVERT OPS UPGRADES ---
:r_covert_ops
wait_build 1 covert_ops
tech personnel_cloaking 70
wait 3600
upgrade 1 ghost_mana 70
wait 3600
tech lockdown 70
wait 3600
upgrade 1 ghost_sight 70
stop
; --- PHYSICS LAB UPGRADES ---
:r_physics_lab
wait_build 1 physics_lab
tech yamato_gun 70
wait 3600
upgrade 1 battlecruiser_mana 70
stop
; --- SCIENCE FACILITY UPGRADES ---
:r_science_facility
wait_build 1 science_facility
tech emp_shockwave 70
wait 3600
upgrade science_vessel_mana 70
wait 3600
tech irradiate 70
wait 3600
tech defensive_matrix 70
stop[/spoiler]
Thanks,
Kryose
Since it's not very busy here at work, I thought I would try my hand at coding a little AI. Of course because I read through the tutorial (start to finish) I thought 'hey, that's easy!' (how wrong I was). I based it mostly off of the tutorial so here is what I was able to do for a few hours at work.
The researching is all set to wait 3600 cause I don't know the researching times atm. I haven't been able to test it, and besides, I don't even know how to test it (I will look into it later when I have time at home).
I have a couple questions regarding some things though.
a) When a building get's destroyed. Does the AI automatically try to rebuild? Further, if an expansion is destroyed, does the AI automatically try to build it again?
-and-

Any and all criticisms are welcome. I am pretty sure there are alot of spelling mistakes and that it has alot of unnecessary code that could be cut. Anyways, here is the code. Tell me what you think.
[spoiler]; ASC3 File generated by ScAIEdit III
;
; Script name : Terran Expansion Custom Level
;
; Terran Multirun Script v1.0 - Created by Kryose
;
script_name Terran Expansion Custom Level
script_id TMCx
; === STARTUP COMMANDS ===
start_town
transports_off
farms_notiming
; === MAX UNIT DEFINITION ===
define_max 100 scv
define_max 75 marine
define_max 75 medic
define_max 25 firebat
define_max 50 ghost
define_max 75 vulture
define_max 20 siege_tank
define_max 20 goliath
define_max 40 wraith
define_max 20 battlecruiser
define_max 2 nuclear_missile
define_max 4 science_vessel
define_max 3 dropship
define_max 2 valkyrie
; === START ===
build 1 command_center 150
wait_build 1 command_center
build 4 scv 130
wait_build 4 scv
multirun m_funding
; === MAIN ===
; --- RESEARCH ---
multirun r_academy
multirun r_engineering_bay
multirun r_machine_shop
multirun r_control_tower
multirun r_armory
multirun r_covert_ops
multirun r_physics_bay
multirun r_science_facility
; --- ECONOMY/BUILDING ---
build 5 scv 80
wait_buildstart 5 scv
build 6 scv 80
wait_buildstart 6 scv
build 7 scv 80
wait_buildstart 7 scv
build 1 supply_depot 80
wait_buildstart 1 supply_depot
build 8 scv 80
wait_buildstart 8 scv
goto b_barracks1
:a_barracks1
farms_timing
build 9 scv 80
wait_buildstart 9 scv
build 10 scv 80
wait_buildstart 10 scv
build 1 refinery 80
wait_buildstart 1 refinery
goto b_bunker1
:a_bunker1
build 11 scv 80
wait_buildstart 11 scv
goto b_academy
:a_academy
build 12 scv 80
wait_buildstart 12 scv
goto b_barracks2
:a_barracks2
build 13 scv 80
wait_buildstart 13 scv
goto b_engineeringbay
:a_engineeringbay
multirun m_rushcheck
goto b_startdefense
:a_startdefense
expand 1 b_expansion
goto b_factory1
:a_factory1
build 4 scv 80
train 3 marine
train 1 medic
train 1 vulture
train 1 seige_tank
multirun m_rushcheck
build 4 scv 80
expand 1 b_expansion
goto b_factory2
:a_factory2
goto b_armory
:a_armory
multirun m_rushcheck
build 4 scv 80
goto b_starport
:a_starport
build 3 scv 80
multirun m_rushcheck
goto b_bunker2
:a_bunker2
goto b_turret
:a_turret
build 3 scv 80
multirun m_rushcheck
expand 1 b_expansion
goto b_starport2
:a_starport2
build 2 scv 80
goto b_sciencefacility
:a_sciencefacility
multirun m_rushcheck
goto b_finaldefense
:a_finaldefense
build 2 scv 80
goto b_turret
:a_turret
expand 1 b_expansion
multirun m_rushcheck
expand 1 b_expansion
; === END LOOP ===
:suicideloop
multirun m_masscheck
wait 4000
send_suicide 0
; === FUNDING MULTI-RUN ===
:m_funding
wait 1000
give_money
goto m_funding
; === EXPANSION SCRIPT ===
:b_expansion
start_town
build 1 command_center 80
wait_build 1 command_center
build 8 scv 70
wait_build 1 barracks
build 1 bunker 70
wait_build 1 engineering_bay
build 2 turret 70
build 1 refinery 70
build 1 comsat_station
a_expansion
; === BUILD SCRIPT ===
; --- BARRACKS ---
:b_barracks1
build 1 barracks 80
wait_buildstart 1 barracks
build 2 supply_depot 80
wait_buildstart 2 supply_depot
wait_build 1 barracks
train 1 marine
goto a_barracks1
; --- BUNKER1 ---
:b_bunker1
wait_build 1 barracks
build 1 bunker 80
wait_buildstart 1 bunker
train 4 marine
goto a_bunker1
; --- ACADEMY ---
:b_academy
wait_build 1 barracks
build 1 academy 80
wait_buildstart 1 academy
goto a_academy
; --- BARRACKS2 ---
:b_barracks2
build 4 barracks 80
wait_buildstart 4 barracks
wait_build academy
wait_build 4 barracks
train 6 marine
train 3 firebats
train 4 medic
goto a_barracks2
; --- ENGINEERING BAY ---
:b_engineeringbay
wait_build 1 barracks
build 1 engineering_bay 80
wait_buildstart 1 engineering_bay
wait_build 1 engineering_bay
build 3 turret 70
goto a_engineeringbay
; --- FACTORY1 ---
:b_factory1
wait_build 1 barracks
build 1 factory 80
wait_buildstart 1 factory
wait_build 1 factory
train 2 vulture
build 1 machine_shop 80
wait_buildstart 1 machine_shop
wait_build 1 machine_shop
train 2 seige_tank
train 2 vulture
goto a_factory1
; --- FACTORY2 ---
:b_factory2
wait_build 1 barracks
build 4 factory 80
wait_buildstart 4 factory
wait_build 4 factory
build 2 machine_shop 80
wait_buildstart 2 machine_shop
wait_build 2 machine_shop
train 3 seige_tank
goto a_factory2
; --- ARMORY ---
:b_armory
wait_build 1 factory
build 2 armory 80
wait_buildstart 2 armory
wait_build 1 armory
train 3 goliath
goto a_armory
; --- STARPORT ---
:b_starport
wait_build 1 factory
build 1 starport 80
wait_buildstart 1 starport
wait_build 1 starport
train 2 wraith
build 1 control_tower 80
wait_buildstart 1 control_tower
goto a_starport
; --- BUNKER2 ---
:b_bunker2
wait_build 1 barracks
build 5 bunker 80
train 10 marine
train 4 firebat
goto a_bunker2
; --- TURRET ---
:b_turret
wait_build 1 engineering_bay
build 10 turret 80
goto a_turret
; --- STARPORT ---
:b_starport
wait_build 1 factory
build 4 starport 80
wait_buildstart 4 starport
wait_build 4 starport
build 3 control_tower 80
goto a_starport
; --- SCIENCE FACILITY ---
:b_sciencefacility
wait_build 1 starport
build 2 science_facility 80
wait_buildstart 2 science_facility
wait_build 2 science_facility
train 2 science_vessel
build 1 physics_lab 80
wait_buildstart 1 physics_lab
build 1 covert_ops 80
wait_buildstart 1 covert_ops
wait_build 1 physics_lab
train 1 battlecruiser
wait_build 1 covert_ops
build 1 nuclear_silo
goto a_sciencefacility
; === DEFENSE SCRIPTS ===
; --- STARTING DEFENSE ---
:b_startdefense
defenseclear_gg
defensebuild_gg 6 marine
defenseuse_gg 6 marine
defensebuild_gg 1 firebat
defenseuse_gg 1 firebat
defensebuild_gg 1 vulture
defenseuse_gg 1 vulture
defensebuild_gg 2 seige_tank
defenseuse_gg 2 seige_tank
defensebuild_gg 1 goliath
defenseuse_gg 1 goliath
defensebuild_gg 1 wraith
defenseuse_gg 1 wraith
defensebuild_gg 1 battlecruiser
defenseuse_gg 1 battlecruiser
defenseclear_ag
defensebuild_ag 6 marine
defenseuse_ag 6 marine
defensebuild_ag 1 goliath
defenseuse_ag 1 goliath
defensebuild_ag 1 wraith
defenseuse_ag 1 wraith
defensebuild_ag 1 battlecruiser
defenseuse_ag 1 battlecruiser
defenseclear_aa
defensebuild_aa 1 valkyrie
defenseuse_aa 1 valkyrie
defensebuild_aa 1 wraith
defenseuse_aa 1 wraith
defensebuild_aa 1 battlecruiser
defenseuse_aa 1 battlecruiser
defenseclear_ga
defensebuild_ga 1 wraith
defenseuse_ga 1 wraith
defensebuild_ga 1 battlecruiser
defenseuse_ga 1 battlecruiser
goto a_startdefense
; --- FINAL DEFENSE ---
:b_finaldefense
defenseclear_gg
defensebuild_gg 2 ghost
defenseuse_gg 2 ghost
defensebuild_gg 2 seige_tank
defenseuse_gg 2 seige_tank
defensebuild_gg 2 goliath
defenseuse_gg 2 goliath
defensebuild_gg 2 wraith
defenseuse_gg 2 wraith
defensebuild_gg 2 battlecruiser
defenseuse_gg 2 battlecruiser
defenseclear_ag
defensebuild_ag 1 goliath
defenseuse_ag 1 goliath
defensebuild_ag 4 ghost
defenseuse_ag 4 ghost
defensebuild_ag 1 wraith
defenseuse_ag 1 wraith
defensebuild_ag 1 battlecruiser
defenseuse_ag 1 battlecruiser
defenseclear_aa
defensebuild_aa 1 valkyrie
defenseuse_aa 1 valkyrie
defensebuild_aa 1 wraith
defenseuse_aa 1 wraith
defensebuild_aa 1 battlecruiser
defenseuse_aa 1 battlecruiser
defenseclear_ga
defensebuild_ga 1 wraith
defenseuse_ga 1 wraith
defensebuild_ga 1 battlecruiser
defenseuse_ga 1 battlecruiser
goto a_finaldefense
; === RUSH CHECKS ===
:m_rushcheck
; --- RUSH BATTLECRUISER/WRAITH CHECK---
notowns_jump physics_lab b_wraithcheck
notowns_jump control_tower b_wraithcheck
wait 1200
resources_jump 1800 1300 b_cruiserrush
:a_cruiserrush
; --- RUSH WRAITH CHECK ---
:b_wraithcheck
notowns_jump starport b_groundcheck
wait 800
resources_jump 900 600 b_wraithrush
:a_wraithrush
; --- RUSH MEDIC/MARINE/VULTURE/TANK CHECK ---
:b_groundcheck
notowns_jump machine_shop b_tankcheck
notowns_jump academy b_tankcheck
notowns_jump barracks b_tankcheck
wait 600
resources_jump 1600 575 b_groundrush
:a_groundrush
; --- RUSH VULTURE/TANK CHECK ---
:b_tankcheck
notowns_jump machine_shop b_marinecheck
wait 400
resources_jump 1125 500 b_tankrush
:a_tankrush
; --- RUSH MEDIC/MARINE CHECK ---
:b_marinecheck
notowns_jump academy nocheck
notowns_jump barracks nocheck
wait 200
resources_jump 700 100 b_marinerush
:a_marinerush
:nocheck
stop
; === RUSH ATTACK SCRIPTS ===
; --- MEDIC/MARINE RUSH ---
:b_marinerush
wait_build 1 barracks
wait_build 1 academy
train 10 marine
train 4 medic
attack_add 10 marine
attack_add 4 medic
attack_prepare
attack_do
attack_clear
goto a_marinerush
; --- VULTURE/TANK RUSH ---
:b_tankrush
wait_build 1 factory
wait_build 1 machine_shop
train 5 siege_tank
train 5 vulture
attack_add 5 siege_tank
attack_add 5 vulture
attack_prepare
attack_do
attack_clear
goto a_tankrush
; --- MEDIC/MARINE/VULTURE/TANK RUSH ---
:b_groundrush
wait_build 1 barracks
wait_build 1 academy
wait_build 1 factory
wait_build 1 machine_shop
train 5 siege_tank
train 4 vulture
train 8 marine
train 3 medic
attack_add 5 siege_tank
attack_add 4 vulture
attack_add 8 marine
attack_add 3 medic
attack_prepare
attack_do
attack_clear
goto a_groudrush
; --- WRAITH RUSH ---
:b_wraithrush
wait_build 1 starport
train 6 wraith
attack_add 6 wraith
attack_prepare
attack_do
attack_clear
goto a_wraithrush
; --- BATTLECRUISER/WRAITH RUSH ---
:b_cruiserrush
wait_build 1 starport
wait_build 1 control_tower
wait_build 1 science_facility
wait_build 1 physics_lab
train 4 wraith
train 2 battlecruiser
attack_add 4 wraith
attack_add 2 battlecruiser
attack_prepare
attack_do
attack_clear
goto a_cruiserrush
; === MASS CHECKS ===
:m_masscheck
; --- MASS BATTLECRUISER CHECK ---
notowns_jump control_tower b_masswraithcheck
notowns_jump physics_lap b_masswraithcheck
wait 1000
resources_jump 2000 2000 b_cruisermass
:a_cruisermass
; --- MASS WRAITH CHECK ---
:b_masswraithcheck
notowns_jump starport b_masstankcheck
wait 1000
resources_jump 2000 1800 b_wraithmass
:a_wraithmass
; --- MASS VULTURE/TANK/GOLIATH CHECK ---
:b_masstankcheck
notowns_jump machine_shop b_massinfantrycheck
notowns_jump armory b_massinfantrycheck
wait 1000
resources_jump 2000 1500 b_tankmass
:a_tankmass
; --- MASS MEDIC/MARINE/GHOST CHECK ---
:b_massinfantrycheck
notowns_jump academy b_massmedicmarinecheck
notowns_jump barracks b_massmedicmarinecheck
notowns_jump covert_ops b_massmedicmarinecheck
wait 1000
resources_jump 2000 500 b_infantrymass
:a_infantrymass
; --- MASS MEDIC/MARINE CHECK ---
:b_massmedicmarinecheck
notowns_jump academy b_massmarinecheck
notowns_jump barracks b_massmarinecheck
wait 1000
resources_jump 2000 250 b_medicmarinemass
:a_medicmarinemass
; --- MASS MARINE CHECK ---
:b_massmarinecheck
notowns_jump academy nomasscheck
notowns_jump barracks nomasscheck
wait 1000
resources_jump 2000 0 b_marinemass
:a_marinemass
:nomasscheck
stop
; === MASS ATTACK SCRIPTS ===
; --- MARINE MASS ---
:b_marinemass
wait_build 1 barracks
train 50 marine
goto a_marinemass
; --- MEDIC/MARIN MASS ---
:b_medicmarinemass
wait_build 1 barracks
wait_build 1 armory
train 40 marine
train 10 medic
goto a_medicmarinemass
; --- MEDIC/MARINE/GHOST MASS ---
:b_infantrymass
wait_build 1 barracks
wait_build 1 academy
wait_build 1 covert-ops
train 30 marine
train 10 medic
train 10 ghost
train 1 science_vessel
train 1 nuclear_missile
goto a_infantrymass
; --- VULTURE/TANK/GOLIATH MASS ---
:b_tankmass
wait_build 1 machine_shop
wait_build 1 armory
train 12 seige_tank
train 20 vulture
train 15 goliath
train 1 science_vessel
goto a_tankmass
; --- WRAITH MASS ---
:b_wraithmass
wait_build 1 starport
train 30 wraith
train 2 science_vessel
goto a_wraithmass
; --- BATTLECRUISER MASS ---
:b_cruisermass
wait_build 1 control_tower
wait_build 1 physics_lab
train 15 battlecruiser
train 2 science_vessel
goto a_cruisermass
; === RESEARCH MULTI-RUN ===
; --- ACADEMY UPGRADES ---
:r_academy
wait_build 1 academy
tech stim_pack 70
wait 3600
upgrade 1 marine_range 70
wait 3600
tech optical_flare 70
wait 3600
upgrade 1 medic_mana 70
wait 3600
tech restoration 70
stop
; --- ENGINEERING BAY UPGRADES ---
:r_engineering_bay
wait_build 1 engineering_bay
upgrade 1 t_infantry_weapon 70
wait 3600
upgrade 1 t_infantry_armor 70
wait 3600
wait_build 1 science_facility
upgrade 2 t_infantry_weapon 70
wait 3600
upgrade 2 t_infantry_armor 70
wait 3600
upgrade 3 t_infantry_weapon 70
wait 3600
upgrade 3 t_infantry_armor 70
stop
; --- MACHINE SHOP UPGRADES ---
:r_machine_shop
wait_build 1 machine_shop
tech spider_mines 70
wait 3600
tech seige_mode 70
wait 3600
upgrade 1 vulture_speed 70
wait 3600
wait_build 1 armory
upgrade 1 goliath_range 70
stop
; --- CONTROL TOWER UPGRADES ---
:r_control_tower
wait_build 1 control_tower
tech cloaking_field 70
wait 3600
upgrade wraith_mana 70
stop
; --- ARMORY UPGRADES ---
:r_armory
wait_build 2 armory
upgrade 1 t_vehicle_weapon 70
upgrade 1 t_ship_weapon 70
wait 3600
wait_build 1 science_facility
upgrade 2 t_vehicle_weapon 70
upgrade 2 t_ship_weapon 70
wait 3600
upgrade 3 t_vehicle_weapon 70
upgrade 3 t_ship_weapon 70
stop
; --- COVERT OPS UPGRADES ---
:r_covert_ops
wait_build 1 covert_ops
tech personnel_cloaking 70
wait 3600
upgrade 1 ghost_mana 70
wait 3600
tech lockdown 70
wait 3600
upgrade 1 ghost_sight 70
stop
; --- PHYSICS LAB UPGRADES ---
:r_physics_lab
wait_build 1 physics_lab
tech yamato_gun 70
wait 3600
upgrade 1 battlecruiser_mana 70
stop
; --- SCIENCE FACILITY UPGRADES ---
:r_science_facility
wait_build 1 science_facility
tech emp_shockwave 70
wait 3600
upgrade science_vessel_mana 70
wait 3600
tech irradiate 70
wait 3600
tech defensive_matrix 70
stop[/spoiler]
Thanks,
Kryose