A few LUA commands that I have found useful in just about every scenario I have done. While they may not exactly fit your scenario the names and refrences can be changed in 1000 ways to make something work the way you want. The key is to experiment.
ScenEdit_AddWeaponToUnitMagazine({side='Coalition',unitname='Al Dhafra AB',wpn_dbid='1383',number=100,maxcap=250,remove=0,new=1,fillout=0})
ScenEdit_AddUnit({type = 'Air', unitname = 'Hammer 4', loadoutid = 2837, dbid = 3220, side = 'RED', group= 'Hammer Time'. latitude='11.3950063687867', longitude='105.683132876556',alt=5000})
ScenEdit_AddUnit({type = 'Facility', dbid = 428, unitname = 'Barracks', side = 'Blue', group= 'Andersen AFB',latitude='13.5752763748169', longitude='144.936279296875'})
ScenEdit_AddUnit({type = 'Facility', dbid = 428, unitname = 'Barracks', side = 'Blue', group= ''}) To Remove From Group Leave Group tag Empty Ie; group=''
RC=({
[1] = { longitude = -119.395092123073, latitude = 33.1453014949142, TypeOf = 'ManualPlottedCourseWaypoint' },
[2] = { longitude = -119.451716715467, latitude = 33.2166660362762, TypeOf = 'ManualPlottedCourseWaypoint' })
ScenEdit_SetUnit({name='SDV Group',course=RC})
ScenEdit_SetUnit({Name="Test Bottom Array", OutOfComms="True"})
ScenEdit_SetUnit({side="Blue", unitname="USS Wasp", RTB = "yes"})
ScenEdit_AssignUnitToMission('UnitX',"Base Camp Patrol")
ScenEdit_SetSidePosture("US", "China", "H")
ScenEdit_SetSidePosture("RED", "China", "H")
ScenEdit_AssignUnitToMission('PLAN SAG 1', 'Kill The Carrier')
ScenEdit_AssignUnitToMission('PLAN SAG 3', 'Kill The Vinson')
ScenEdit_UnloadCargo({"San Nicolas Pier",cargoList={dbid=3037,18}})
{name='San Nicolas Pier', guid='0cacb045-6dac-4897-b1be-b41d362f9752'}
ScenEdit_UpdateUnitCargo({guid='34167542-d5c5-45c2-b2f6-88b303cb20c8', mode='add_cargo', cargo={'f7c377a7-90fb-45b7-974c-9c7733e9d294',{5,752}} })
ScenEdit_SetDoctrine({side="US"}, {weapon_control_status_surface = "0",weapon_control_status_subsurface= "0",weapon_control_status_land= "0", weapon_control_status_air="0" })
ScenEdit_SetDoctrine({side="Blue"}, {engage_opportunity_targets='yes'})
ScenEdit_SetDoctrine({Side= "China", unitname="China D-5 Silo ICBM Group"},{weapon_control_status_land=(0)})
ScenEdit_SetEMCON('Side', 'China', 'Radar=Passive')
ScenEdit_SetEMCON('Unit', 'Hacka Loogie #1', 'Radar=Passive')
ScenEdit_SetEMCON('Unit', 'Hacka Loogie #2', 'Radar=Passive')
ScenEdit_SetEMCON('Mission', 'AEW', 'Radar=Passive, OECM=Passive')
local g = 5
if g <= 7 then
ScenEdit_AddUnit({type = 'Air', unitname = 'KamaKazi 100', loadoutid = 18300, dbid = 3683, side = 'China', latitude='22.8206279079201', longitude='121.916163393456',alt=38000})
ScenEdit_AssignUnitToMission('KamaKazi 100', 'KamaKazi EW')
a=ScenEdit_GetScore("China")
ScenEdit_SetScore('China',(a-500),'-500 Points for KamaKazi')
end
local g = math.random(1,10)
if g <= 7 then
ScenEdit_DeleteUnit({side="US", unitname="Seahawk"})
end
a=ScenEdit_GetScore("US")
ScenEdit_SetScore('US',(a-500),'-500 Points for Suppressing Seahawk')
ScenEdit_SetUnitSide({side="Red", name="Firey Cross Reef", newside="Blue"})
ScenEdit_SetUnit({name='Blue Hawk #2',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #3',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #4',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #5',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #6',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #7',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #8',base='Fiery Cross Reef AB'})
ScenEdit_SetUnit({name='Blue Hawk #9',base='Fiery Cross Reef AB'})
ScenEdit_AssignUnitToMission('North Patrol 1', 'North Patrol')
ScenEdit_AssignUnitToMission('North Patrol 2', 'North Patrol')
ScenEdit_SetUnit({Name="North Patrol 1", group="North SAG"})
ScenEdit_SetUnit({Name="North Patrol 2", group="North SAG"})
ScenEdit_AssignUnitToMission('South Patrol 1', 'South Patrol')
ScenEdit_AssignUnitToMission('South Patrol 1', 'South Patrol')
ScenEdit_SetUnit({Name="South Patrol 1", group="South SAG"})
ScenEdit_SetUnit({Name="South Patrol 2", group="South SAG"})
mySide1 = VP_GetSide({Name="Blue"})
myZone1 = mySide1:getnonavzone("Fiery Cross Reef AB")
myZone1.isactive = False
mySide2 = VP_GetSide({Name="Blue"})
myZone2 = mySide2:getnonavzone("Subi Reef AB")
myZone2.isactive = False
mySide3 = VP_GetSide({Name="Blue"})
myZone3 = mySide3:getnonavzone("Quarteron Reef (Heli/Pier)")
myZone3.isactive = False
mySide4 = VP_GetSide({Name="Blue"})
myZone4 = mySide4:getnonavzone("Mischief Reef AB")
myZone4.isactive = False
mySide5 = VP_GetSide({Name="Blue"})
myZone5 = mySide5:getnonavzone("Gaven Reef (Heli/Pier)")
myZone5.isactive = False
mySide6 = VP_GetSide({Name="Blue"})
myZone6 = mySide6:getnonavzone("Johnson Reef (Heli/Pier)")
myZone6.isactive = False
mySide7 = VP_GetSide({Name="Blue"})
myZone7 = mySide7:getnonavzone("Hughes Reef (Heli/Pier)")
myZone7.isactive = False
mySide1 = VP_GetSide({Name="Blue"})
myZone1 = mySide1:getnonavzone("Fiery Cross Reef AB")
myZone1.isactive = true
mySide2 = VP_GetSide({Name="Blue"})
myZone2 = mySide2:getnonavzone("Subi Reef AB")
myZone2.isactive = true
mySide3 = VP_GetSide({Name="Blue"})
myZone3 = mySide3:getnonavzone("Quarteron Reef (Heli/Pier)")
myZone3.isactive = true
mySide4 = VP_GetSide({Name="Blue"})
myZone4 = mySide4:getnonavzone("Mischief Reef AB")
myZone4.isactive = true
mySide5 = VP_GetSide({Name="Blue"})
myZone5 = mySide5:getnonavzone("Gaven Reef (Heli/Pier)")
myZone5.isactive = true
mySide6 = VP_GetSide({Name="Blue"})
myZone6 = mySide6:getnonavzone("Johnson Reef (Heli/Pier)")
myZone6.isactive = true
mySide7 = VP_GetSide({Name="Blue"})
myZone7 = mySide7:getnonavzone("Hughes Reef (Heli/Pier)")
myZone7.isactive = true
local u1;
local u2;
u1 = ScenEdit_AddUnit({type="ship", side="US Navy", name="FFG-49 Robert G. Bradley", dbid=726, lat=28.58694, lon=49.409, heading=270});
u2 = ScenEdit_AddUnit({type="aircraft", side="US Navy", name="SmallHeloThatFits", dbid=1593, lat=28.58694, lon=49.409, heading=270,altitude=1000,loadoutid=15083});
--Put unit2 into unit1
ScenEdit_HostUnitToParent({HostedUnitNameOrID= tostring(u2.guid), SelectedHostNameOrID= tostring(u1.guid)});
ScenEdit_AddMission('Red','NPHelo2','Ferry',{destination='North Patrol 2'})
local a = ScenEdit_GetUnit({name='USS Princeton (CG-59)', guid='CXXC1K-0HM0G0H4069SP'})
print(a)
[Returns:]
unit {
type = 'Ship',
subtype = '3106',
name = 'USS Cape St. George (CG-71)',
side = 'Blue',
guid = 'cxxc1k-0hlu7d7pg41qh',
class = 'CG 59 Princeton [Ticonderoga Baseline 3, VLS]',
proficiency = 'Veteran',
latitude = '19.1288620629699',
longitude = '126.840628644493',
altitude = '0',
heading = '37.36402',
speed = '20',
throttle = 'Cruise',
autodetectable = 'False',
group = 'Cape St. George SAG',
mission = 'Cape St. George AOR',
mounts = '25',
magazines = '32',
unitstate = 'OnPlottedCourse',
fuelstate = 'None',
weaponstate = 'None',
}
print(a.fuel)
[Returns:]
{ [2001] = { max = 72000, name = 'AviationFuel', type = 2001, current = 72000 }, [3003] = { max = 2000000, name = 'GasFuel', type = 3003, current = 893080.375 } }
[Logic](if u ~= nil then - Check if unit is still in scenario Ie; Not sunk)
u = ScenEdit_GetUnit({name='USS Cape St. George (CG-71)', guid='cxxc1k-0hlu7d7pg41qh'})
if u ~= nil then
local newfuel = u.fuel
if newfuel[3003].current < 1000000 then
newfuel[3003].current = newfuel[3003].max
u.fuel = newfuel
end
end
{Launch Tanker}...More realistic?
u = ScenEdit_GetUnit({name='USS Port Royal (CG-73)', guid='cxxc1k-0hlsrof1eaphc'})
if u ~= nil then
local newfuel = u.fuel
if newfuel[3003].current < 1000000 then
ScenEdit_AssignUnitToMission('Asuna', 'Royal Pain AOR')
end
end
ScenEdit_RefuelUnit({side="United States", unitname="USS Port Royal (CG-73)", tanker="Asuna"})
Functions for 3 types of fuel in SCS Template Ships
function Fillup3003( side, name )
u = ScenEdit_GetUnit({side=side,name=name})
if u ~= nil then
local newfuel = u.fuel
if newfuel[3003].current < 1000000 then
newfuel[3003].current = newfuel[3003].max
u.fuel = newfuel
end
end
end
function Fillup3002( side, name )
v = ScenEdit_GetUnit({side=side,name=name})
if v ~= nil then
local newfuel = v.fuel
if newfuel[3002].current < 15000 then
newfuel[3002].current = newfuel[3002].max
v.fuel = newfuel
end
end
end
function Fillup3001( side, name )
w = ScenEdit_GetUnit({side=side,name=name})
if w ~= nil then
local newfuel = w.fuel
if newfuel[3001].current < 1000000 then
newfuel[3001].current = newfuel[3001].max
w.fuel = newfuel
end
end
end
Fillup3003('Blue','USS Port Royal (CG-73)')
Fillup3003('Blue','USS John Paul Jones (DDG-53)')
Fillup3003('Blue','USS Cape St. George (CG-71)')
Fillup3003('Blue','USS William P. Lawrence (DDG-110)')
Fillup3003('Blue','USS Lake Erie (CG-70)')
Fillup3003('Blue','USS McFaul (DDG-74)')
Fillup3003('Blue','USS Shiloh (CG-67)')
Fillup3003('Blue','USS Mustin (DDG-89)')
Fillup3003('Blue','USS Leyte Gulf (CG-55)')
Fillup3003('Blue','USS Vella Gulf (CG-72)')
Fillup3003('Blue','USS Ross (DDG-71)')
Fillup3003('Blue','USS Shoup (DDG-86)')
Fillup3003('Blue','USS Pinckney (DDG-91)')
Fillup3003('Blue','USS Kidd (DDG-100)')
Fillup3003('Blue','USS Spruance (DDG-111)')
Fillup3003('Blue','USS Rafael Peralta DDG-115)')
Fillup3003('Blue','USS Chancellorsville (CG-62)')
Fillup3003('Blue','USS McCampbell (DDG-85)')
Fillup3003('Blue','USS Howard (DDG-83)')
Fillup3003('Blue','USS Preble (DDG-88)')
Fillup3003('Blue','USS Daniel Inouye (DDG-118)')
Fillup3001('Blue','USS Harpers Ferry (LSD-49)')
Fillup3001('Blue','USS Whidbey Island (LSD-41)')
Fillup3002('Blue','USS Essex (LHD-2)')
Fillup3002('Blue','USS Peleliu (LHA-5)')
Fillup3003('Blue','USS Princeton (CG-59)')
Fillup3003('Blue','USS Shoup (DDG-86)')
Fillup3003('Blue','USS Pinckney (DDG-91)')
Fillup3003('Blue','USS Kidd (DDG-100)')
Fillup3003('Blue','USS John Finn (DDG-113)')
Thank You MichaelAU (Matrix Forums)
local listOfGUIDsForAllUnitsOnSide = VP_GetSide({side='Merchant'}).units
local typeOfUnitIAmInterestedIn = 'Aircraft'
local listOfUnitsIWantToWorkWith = {}
for k,v in ipairs (listOfGUIDsForAllUnitsOnSide) do
local unit = ScenEdit_GetUnit({guid=v.guid})
if unit.type == typeOfUnitIAmInterestedIn then
table.insert(listOfUnitsIWantToWorkWith,unit)
print ("'"..unit.guid.."', --"..unit.name.." ("..unit.classname..") added to list of units to work with..")
end
end
print ('List complete! '..#listOfUnitsIWantToWorkWith..' units added to list.')
local counter = 0
for k,v in ipairs (listOfUnitsIWantToWorkWith) do
local unit = ScenEdit_GetUnit({guid=v.guid})
unit.AI_DeterminePrimaryTarget_enabled = false
unit.AI_EvaluateTargets_enabled = false
print (unit.name..' AI disabled!')
counter = counter + 1
end
print ('Run complete, AI disabled for '..counter..' units.')
local
a = ScenEdit_GetUnit({name='War Eagle 421', guid='cxxc1k-0hluoncgrovfb'})
if a ~= nil then
b = a.airbornetime
num = tonumber(string.sub(b,1,2))
if num > 10
then
ScenEdit_SetUnit({side="Blue", unitname='War Eagle 421', RTB = "yes"})
end
end
local a = ScenEdit_GetLoadout({name='War Eagle 421'})
print(a.weapons)
{ [1] = { wpn_type = 2001, wpn_guid = 'cxxc1k-0hluoncgrovg3', wpn_current = 2, wpn_maxcap = 2, wpn_dbid = 452, wpn_name = 'AGM-84K SLAMER-ATA', wpn_default = 2 }, [2] = { wpn_type = 4001, wpn_guid = 'cxxc1k-0hluoncgrovg4', wpn_current = 5, wpn_maxcap = 5, wpn_dbid = 902, wpn_name = 'Mk54 LHT Mod 0', wpn_default = 5 }, [3] = { wpn_type = 4003, wpn_guid = 'cxxc1k-0hluoncgrovg5', wpn_current = 45, wpn_maxcap = 60, wpn_dbid = 2496, wpn_name = 'AN/SSQ-53F DIFAR', wpn_default = 60 }, [4] = { wpn_type = 4003, wpn_guid = 'cxxc1k-0hluoncgrovg6', wpn_current = 22, wpn_maxcap = 40, wpn_dbid = 2482, wpn_name = 'AN/SSQ-62E DICASS', wpn_default = 40 }, [5] = { wpn_type = 4003, wpn_guid = 'cxxc1k-0hluoncgrovg7', wpn_current = 26, wpn_maxcap = 40, wpn_dbid = 1939, wpn_name = 'AN/SSQ-77B VLAD', wpn_default = 40 } }
*Note When loaded ship arrives at pier it unloads cargo automatically?
ScenEdit_UpdateUnitCargo({guid='CXXC1K-0HM0M19DH4VDV', mode='add_cargo', cargo={{4,1858},{1,2284}} })
ScenEdit_UpdateUnitCargo({guid='CXXC1K-0HM0M19DH50B0', mode='add_cargo', cargo={{4,3085},{1,2284}} })
ScenEdit_UpdateUnitCargo({guid='CXXC1K-0HM05GMR87KST', mode='add_cargo', cargo={{4,3085},{1,2284}} })
ScenEdit_UpdateUnitCargo({guid='CXXC1K-0HM0OIQSML1D9', mode='add_cargo', cargo={{4,3085},{1,2284},{1,3085}} })
ScenEdit_UpdateUnitCargo({guid='CXXC1K-0HM1HC9QLIQTO', mode='add_cargo', cargo={{4,3085}})
ScenEdit_UpdateUnitCargo({guid='CXXC1K-0HM1HC9QLIQU7', mode='add_cargo', cargo={{4,1858}})
local u = SE_GetUnit({name='Cargo Loogie #1', guid='CXXC1K-0HM1HC9QLIQTO'})
ScenEdit_UnloadCargo(u.name, { {4,3085}})
local u = SE_GetUnit({Cargo Loogie #2', guid='CXXC1K-0HM1HC9QLIQU7'})
ScenEdit_UnloadCargo(u.name, { {4,1858}})
{name='Cargo Loogie #1', guid='CXXC1K-0HM1HC9QLIQTO'}
{name='Cargo Loogie #2', guid='CXXC1K-0HM1HC9QLIQU7'}
local cc = SE_GetUnit({{name='A/C Hangar (4x Medium Aircraft)', guid='CXXC1K-0HM181HNFBG94'})
print(cc.cargo[1].cargo)
for k,v in pairs (cc.cargo[1].cargo) do
print(v.dbid)
ScenEdit_UnloadCargo(cc.name, { {v.quantity,v.dbid}})
end
local u = SE_GetUnit({name='Mischief Reef Navy Pier', guid='04c20418-a924-4669-b15f-0a8bd8aa6004'})
print(u.cargo[1].cargo)
for k,v in pairs (u.cargo[1].cargo) do
print(v.dbid)
ScenEdit_UnloadCargo(u.name, { {v.quantity,v.dbid}})
end
local u = SE_GetUnit({name='Mischief Reef Navy Pier', guid='04c20418-a924-4669-b15f-0a8bd8aa6004'})
ScenEdit_UnloadCargo(u.name, { {4,1858},{1,2284}})
Unload cargo from Johnson Reef Navy Pier (short version)
local u = SE_GetUnit({name='Johnson Reef Naval Pier', guid='CXXC1K-0HM0MKD4P35LJ'})
ScenEdit_UnloadCargo(u.name, { {4,1858},{1,2284}})
ScenEdit_AssignUnitToMission('Type 052D Escort 3', 'DF21 Group Retun Ferry')
ScenEdit_AssignUnitToMission('Type 052D Escort 4', 'DF21 Group Retun Ferry')
ScenEdit_AssignUnitToMission('Kunlun Shan (998)', 'DF21 Group Retun Ferry')
local j = SE_GetUnit({name='Fiery Cross Reef Structure (Pier [Extra Large, 200-500m])', guid='cxxc1k-0hltoh3e62099'})
ScenEdit_UnloadCargo(u.name, { {4,1858},{1,2284}})
local j = SE_GetUnit({name='Fiery Cross Reef Structure (Pier [Extra Large, 200-500m])', guid='cxxc1k-0hltoh3e62099'})
ScenEdit_UnloadCargo(u.name, { {4,1858},{1,2284}})
local StGeorge = SE_GetUnit({name='USS Cape St. George (CG-71)', guid='cxxc1k-0hlu7d7pg41qh'})
aor1=(StGeorge.mission.name)
local RoyalPain = SE_GetUnit({name='Royal Pain SAG', guid='cxxc1k-0hltnt9mlak83'})
aor1=(RoyalPain.mission.name)
local Shiloh = SE_GetUnit({name='Shiloh SAG', guid='cxxc1k-0hltnt9mlb1gj'})
aor1=(RoyalPain.mission.name)
local FONUnit = SE_GetUnit({UnitX()})
If FONUnit.name =
local myunit = ScenEdit_GetUnit({unitname=UnitX().name})
local retval = ScenEdit_AttackContact(myunit.guid,'BOL',{latitude='31.4171680192908', longitude='121.289345200049', mode=1, weapon=881,qty=4})