XL mode [Solved]

In this forum you will find and post information regarding the modding of Star Wars Battlefront 2. DO NOT POST MOD IDEAS/REQUESTS.

Moderator: Moderators

User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

XL mode [Solved]

Post by Fiodis »

How do you add XL mode? I looked at the tutorial on how to add hunt mode, thinking they'd be the same, but I suppose not. I got these error while munging:
Hidden/Spoiler:
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHc_xl.lua:566: <name> expected near `('
ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file. [continuing]
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHg_eli.lua:566: <name> expected near `('
ERROR[scriptmunge scripts\RCH\RCHg_eli.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHg_eli.lua]:Could not read input file. [continuing]
4 Errors 0 Warnings

ERROR[levelpack mission\RCHg_eli.req]:Expecting bracket, but none was found.
File : munged\pc\rchg_eli.script.req(1)...

ucft <--
ERROR[levelpack mission\RCHg_eli.req]:Expecting bracket, but none was found.
File : munged\pc\rchg_eli.script.req(1)...

ucft <--
[continuing]
2 Errors 0 Warnings
I suppose I ought to mention that my XL is a misison script that I made with the MIssion Scripter, then added a few lines. What's the problem? I'm not good at reading error logs.
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

Hidden/Spoiler:
ipts\RCH\RCHc_xl.lua:566: <name>
See it? That points to line 566 of your lua. If you open it in an editor like Editplus you can go to that line and see the problem. If you can't fix it, then go ahead and post your lua.

It looks like your RCHg_eli.lua is bad too.
Aman/Pinguin
Jedi
Jedi
Posts: 1104
Joined: Tue Jan 30, 2007 6:04 am
Projects :: Inactive
Location: Germany

Re: XL mode

Post by Aman/Pinguin »

Post your lua.


EDIT: Rep was faster. >.<
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

Ok, I found out that the first four errors were cause by a badly placed ActivateRegion line. Those are fixed. Still, I get this while munging:
Hidden/Spoiler:
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHc_xl.lua:563: <name> expected near `('
ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file. [continuing]
2 Errors 0 Warnings
My Campaign (XL) LUA:
Hidden/Spoiler:
[code]--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

-- This lua was createt by "Mission-Scripter", a program by -=[PfW]=-Skip.


-- load the gametype script
ScriptCB_DoFile("MultiObjectiveContainer")
ScriptCB_DoFile("ObjectiveAssault")
ScriptCB_DoFile("ObjectiveConquest")
ScriptCB_DoFile("ObjectiveGoto")
ScriptCB_DoFile("ObjectiveCTF")
ScriptCB_DoFile("ObjectiveTDM")
ScriptCB_DoFile("Ambush")
ScriptCB_DoFile("setup_teams")

-- REP Attacking (attacker is always #1)
REP = 1;
CIS = 2;
-- These variables do not change
ATT = REP;
DEF = CIS;


function ScriptPostLoad()

--This defines the CPs. These need to happen first
cp1 = CommandPost:New{name = "cp1"}
cp2 = CommandPost:New{name = "cp2"}

SetAIDifficulty(0, 2, "hard")
AllowAISpawn(ATT, false)
AllowAISpawn(DEF, false)
ScriptCB_SetGameRules("campaign")

onfirstspawn = OnCharacterSpawn(
function(character)
if character == 0 then
ShowPopup("level.geo1.hints.hints")
ReleaseCharacterSpawn(onfirstspawn)
onfirstspawn = nil
BeginObjectivesTimer()
ScriptCB_EnableCommandPostVO(0)

end
end)


--objective :goto1
Objective1 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "gotoprime2", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective1:AddHint("level.geo1.hints.movement")
Objective1:AddHint("level.geo1.hints.obj_markers")
Objective1:AddHint("level.geo1.hints.review_objectives")
Objective1:AddHint("level.geo1.hints.sprint")


Objective1.OnStart = function(self)
att_obj1_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj1_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective1.OnComplete = function(self)
DeleteAIGoal(att_obj1_aigoal)
DeleteAIGoal(def_obj1_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto2
Objective2 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto1", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective2:AddHint("level.geo1.hints.movement")
Objective2:AddHint("level.geo1.hints.obj_markers")
Objective2:AddHint("level.geo1.hints.review_objectives")
Objective2:AddHint("level.geo1.hints.sprint")


Objective2.OnStart = function(self)
att_obj2_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj2_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective2.OnComplete = function(self)
DeleteAIGoal(att_obj2_aigoal)
DeleteAIGoal(def_obj2_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto3
Objective3 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto2", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective3:AddHint("level.geo1.hints.movement")
Objective3:AddHint("level.geo1.hints.obj_markers")
Objective3:AddHint("level.geo1.hints.review_objectives")
Objective3:AddHint("level.geo1.hints.sprint")


Objective3.OnStart = function(self)
att_obj3_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj3_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective3.OnComplete = function(self)
DeleteAIGoal(att_obj3_aigoal)
DeleteAIGoal(def_obj3_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto4
Objective4 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto3", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective4:AddHint("level.geo1.hints.movement")
Objective4:AddHint("level.geo1.hints.obj_markers")
Objective4:AddHint("level.geo1.hints.review_objectives")
Objective4:AddHint("level.geo1.hints.sprint")


Objective4.OnStart = function(self)
att_obj4_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj4_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective4.OnComplete = function(self)
DeleteAIGoal(att_obj4_aigoal)
DeleteAIGoal(def_obj4_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto5
Objective5 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto4", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective5:AddHint("level.geo1.hints.movement")
Objective5:AddHint("level.geo1.hints.obj_markers")
Objective5:AddHint("level.geo1.hints.review_objectives")
Objective5:AddHint("level.geo1.hints.sprint")


Objective5.OnStart = function(self)
att_obj5_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj5_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective5.OnComplete = function(self)
DeleteAIGoal(att_obj5_aigoal)
DeleteAIGoal(def_obj5_aigoal)
ShowMessageText("game.objectives.complete", ATT)
AllowAISpawn(DEF, true)

end



--objective: assault1
Objective6= ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText = "null"}

Dclass = TargetType:New{classname = "cis_inf_rifleman", killLimit = 3}
Objective6:AddTarget(Dclass)

Objective6.OnStart = function(self)
Objective6.Dclass_cpGoal1 = AddAIGoal(ATT, "Defend", 100, "cp2")
Objective6.Dclass_cpGoal2 = AddAIGoal(DEF, "Defend", 100, "cp2")
end

Objective6.OnComplete = function(self)
DeleteAIGoal(Objective6.Dclass_cpGoal1)
DeleteAIGoal(Objective6.Dclass_cpGoal2)
AllowAISpawn(DEF, false)
end




--objective :goto6
Objective7 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto5", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective7:AddHint("level.geo1.hints.movement")
Objective7:AddHint("level.geo1.hints.obj_markers")
Objective7:AddHint("level.geo1.hints.review_objectives")
Objective7:AddHint("level.geo1.hints.sprint")


Objective7.OnStart = function(self)
att_obj7_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj7_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective7.OnComplete = function(self)
DeleteAIGoal(att_obj7_aigoal)
DeleteAIGoal(def_obj7_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto7
Objective8 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto6", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective8:AddHint("level.geo1.hints.movement")
Objective8:AddHint("level.geo1.hints.obj_markers")
Objective8:AddHint("level.geo1.hints.review_objectives")
Objective8:AddHint("level.geo1.hints.sprint")


Objective8.OnStart = function(self)
att_obj8_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj8_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective8.OnComplete = function(self)
DeleteAIGoal(att_obj8_aigoal)
DeleteAIGoal(def_obj8_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto8
Objective9 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto6a", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective9:AddHint("level.geo1.hints.movement")
Objective9:AddHint("level.geo1.hints.obj_markers")
Objective9:AddHint("level.geo1.hints.review_objectives")
Objective9:AddHint("level.geo1.hints.sprint")


Objective9.OnStart = function(self)
att_obj9_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj9_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective9.OnComplete = function(self)
DeleteAIGoal(att_obj9_aigoal)
DeleteAIGoal(def_obj9_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective10 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective10:AddHint("level.geo1.hints.movement")
Objective10:AddHint("level.geo1.hints.obj_markers")
Objective10:AddHint("level.geo1.hints.review_objectives")
Objective10:AddHint("level.geo1.hints.sprint")


Objective10.OnStart = function(self)
att_obj10_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj10_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective10.OnComplete = function(self)
DeleteAIGoal(att_obj10_aigoal)
DeleteAIGoal(def_obj10_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective11 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7b", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective11:AddHint("level.geo1.hints.movement")
Objective11:AddHint("level.geo1.hints.obj_markers")
Objective11:AddHint("level.geo1.hints.review_objectives")
Objective11:AddHint("level.geo1.hints.sprint")


Objective11.OnStart = function(self)
att_obj11_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj11_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective11.OnComplete = function(self)
DeleteAIGoal(att_obj11_aigoal)
DeleteAIGoal(def_obj11_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective12 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7a", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective12:AddHint("level.geo1.hints.movement")
Objective12:AddHint("level.geo1.hints.obj_markers")
Objective12:AddHint("level.geo1.hints.review_objectives")
Objective12:AddHint("level.geo1.hints.sprint")


Objective12.OnStart = function(self)
att_obj12_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj12_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective12.OnComplete = function(self)
DeleteAIGoal(att_obj12_aigoal)
DeleteAIGoal(def_obj12_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective13 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto8", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective13:AddHint("level.geo1.hints.movement")
Objective13:AddHint("level.geo1.hints.obj_markers")
Objective13:AddHint("level.geo1.hints.review_objectives")
Objective13:AddHint("level.geo1.hints.sprint")


Objective13.OnStart = function(self)
att_obj13_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj13_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective13.OnComplete = function(self)
DeleteAIGoal(att_obj13_aigoal)
DeleteAIGoal(def_obj13_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective14 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto9", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective14:AddHint("level.geo1.hints.movement")
Objective14:AddHint("level.geo1.hints.obj_markers")
Objective14:AddHint("level.geo1.hints.review_objectives")
Objective14:AddHint("level.geo1.hints.sprint")


Objective14.OnStart = function(self)
att_obj14_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj14_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective14.OnComplete = function(self)
DeleteAIGoal(att_obj14_aigoal)
DeleteAIGoal(def_obj14_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective15 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto10", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective15:AddHint("level.geo1.hints.movement")
Objective15:AddHint("level.geo1.hints.obj_markers")
Objective15:AddHint("level.geo1.hints.review_objectives")
Objective15:AddHint("level.geo1.hints.sprint")


Objective15.OnStart = function(self)
att_obj15_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj15_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective15.OnComplete = function(self)
DeleteAIGoal(att_obj15_aigoal)
DeleteAIGoal(def_obj15_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective16 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto12", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective16:AddHint("level.geo1.hints.movement")
Objective16:AddHint("level.geo1.hints.obj_markers")
Objective16:AddHint("level.geo1.hints.review_objectives")
Objective16:AddHint("level.geo1.hints.sprint")


Objective16.OnStart = function(self)
att_obj16_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj16_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective16.OnComplete = function(self)
DeleteAIGoal(att_obj16_aigoal)
DeleteAIGoal(def_obj16_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end



--objective: assault2
Dobjekt = Target:New{name = "antenna"}
Dobjekt.OnDestroy = function(self)

end

Objective17 = ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText = "null"}
Objective17:AddTarget(Dobjekt)


Objective17.OnStart = function(self)


end

Objective17.OnComplete = function(self)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective18 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto13", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective18:AddHint("level.geo1.hints.movement")
Objective18:AddHint("level.geo1.hints.obj_markers")
Objective18:AddHint("level.geo1.hints.review_objectives")
Objective18:AddHint("level.geo1.hints.sprint")


Objective18.OnStart = function(self)
att_obj18_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj18_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective18.OnComplete = function(self)
DeleteAIGoal(att_obj18_aigoal)
DeleteAIGoal(def_obj18_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end



--objective: assault3
Dobjekt = Target:New{name = "camp"}
Dobjekt.OnDestroy = function(self)

end

Objective19 = ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText = "null"}
Objective19:AddTarget(Dobjekt)


Objective19.OnStart = function(self)


end

Objective19.OnComplete = function(self)
ShowMessageText("game.objectives.complete", ATT)

end

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode")
end,
"TeleportRegion"
)
ActivateRegion("TeleportRegion")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode2")
end,
"TeleportRegion2"
)
ActivateRegion("TeleportRegion2")

OnEnterRegion("TeleportRegion3")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode3")
end,
"TeleportRegion3"
)
ActivateRegion("TeleportRegion3")

OnEnterRegion("TeleportRegion4")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode4")
end,
"TeleportRegion4"
)
ActivateRegion("TeleportRegion4")

OnEnterRegion("TeleportRegion5")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode5")
end,
"TeleportRegion5"
)
ActivateRegion("TeleportRegion5")

end


---------------------------------------------------------------------------
-- FUNCTION: ScriptInit
-- PURPOSE: This function is only run once
-- INPUT:
-- OUTPUT:
-- NOTES: The name, 'ScriptInit' is a chosen convention, and each
-- mission script must contain a version of this function, as
-- it is called from C to start the mission.
---------------------------------------------------------------------------
function ScriptInit()

ReadDataFile("ingame.lvl")


SetMaxFlyHeight(30)
SetMaxPlayerFlyHeight (30)

SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",50) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",650) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",550) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",6000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",100) -- should be ~1x #combo

ReadDataFile("sound\\yav.lvl;yav1cw")
ReadDataFile("SIDE\\rep.lvl",
"rep_inf_ep3_rifleman",
"rep_inf_ep3_rocketeer",
"rep_inf_ep3_engineer",
"rep_inf_ep3_sniper",
"rep_inf_ep3_officer",
"rep_inf_ep3_jettrooper",
"rep_hover_fightertank",
"rep_hero_anakin",
"rep_hover_barcspeeder")
ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")


ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_laser",
"tur_bldg_tower")

SetupTeams{
rep = {
team = REP,
units = 20,
reinforcements = 150,
soldier = { "rep_inf_ep3_rifleman",9, 25},
assault = { "rep_inf_ep3_rocketeer",1, 4},
engineer = { "rep_inf_ep3_engineer",1, 4},
sniper = { "rep_inf_ep3_sniper",1, 4},
officer = {"rep_inf_ep3_officer",1, 4},
special = { "rep_inf_ep3_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 20,
reinforcements = 150,
soldier = { "cis_inf_rifleman",9, 25},
assault = { "cis_inf_rocketeer",1, 4},
engineer = { "cis_inf_engineer",1, 4},
sniper = { "cis_inf_sniper",1, 4},
officer = {"cis_inf_officer",1, 4},
special = { "cis_inf_droideka",1, 4},
}
}

SetHeroClass(CIS, "cis_hero_darthmaul")
SetHeroClass(REP, "rep_hero_anakin")


-- Level Stats
-- ClearWalkers()
AddWalkerType(0, 4) -- special -> droidekas
AddWalkerType(1, 0) -- 1x2 (1 pair of legs)
AddWalkerType(2, 0) -- 2x2 (2 pairs of legs)
AddWalkerType(3, 0) -- 3x2 (3 pairs of legs)
local weaponCnt = 1024
SetMemoryPoolSize("Aimer", 75)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 1024)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityCloth", 32)
SetMemoryPoolSize("EntityFlyer", 32)
SetMemoryPoolSize("EntityHover", 32)
SetMemoryPoolSize("EntityLight", 200)
SetMemoryPoolSize("EntitySoundStream", 4)
SetMemoryPoolSize("EntitySoundStatic", 32)
SetMemoryPoolSize("MountedTurret", 32)
SetMemoryPoolSize("Navigator", 128)
SetMemoryPoolSize("Obstacle", 1024)
SetMemoryPoolSize("PathNode", 1024)
SetMemoryPoolSize("SoundSpaceRegion", 64)
SetMemoryPoolSize("TreeGridStack", 1024)
SetMemoryPoolSize("UnitAgent", 128)
SetMemoryPoolSize("UnitController", 128)
SetMemoryPoolSize("Weapon", weaponCnt)

SetSpawnDelay(10.0, 0.25)
--ReadDataFile("dc:RCH\\RCH.lvl", "RCH_xl")
ReadDataFile("dc:RCH\\RCH.lvl", "RCH_xl")
SetDenseEnvironment("false")




-- Sound

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")

voiceSlow = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "global_vo_slow", voiceSlow)

voiceQuick = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_quick")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_quick", voiceQuick)

OpenAudioStream("sound\\global.lvl", "cw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1_emt")

SetBleedingVoiceOver(REP, REP, "rep_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(REP, CIS, "rep_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, REP, "cis_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, CIS, "cis_off_com_report_us_overwhelmed", 1)

SetOutOfBoundsVoiceOver(2, "cisleaving")
SetOutOfBoundsVoiceOver(1, "repleaving")

SetAmbientMusic(REP, 1.0, "rep_yav_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_yav_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_yav_amb_end", 2,1)
SetAmbientMusic(CIS, 1.0, "cis_yav_amb_start", 0,1)
SetAmbientMusic(CIS, 0.8, "cis_yav_amb_middle", 1,1)
SetAmbientMusic(CIS, 0.2, "cis_yav_amb_end", 2,1)

SetVictoryMusic(REP, "rep_yav_amb_victory")
SetDefeatMusic (REP, "rep_yav_amb_defeat")
SetVictoryMusic(CIS, "cis_yav_amb_victory")
SetDefeatMusic (CIS, "cis_yav_amb_defeat")

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
--SetSoundEffect("BirdScatter", "birdsFlySeq1")
--SetSoundEffect("WeaponUnableSelect", "com_weap_inf_weaponchange_null")
--SetSoundEffect("WeaponModeUnableSelect", "com_weap_inf_modechange_null")
SetSoundEffect("SpawnDisplayUnitChange", "shell_select_unit")
SetSoundEffect("SpawnDisplayUnitAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplaySpawnPointChange", "shell_select_change")
SetSoundEffect("SpawnDisplaySpawnPointAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplayBack", "shell_menu_exit")


--OpeningSateliteShot
AddCameraShot(0.908386, -0.209095, -0.352873, -0.081226, -45.922508, -19.114113, 77.022636);

AddCameraShot(-0.481173, 0.024248, -0.875181, -0.044103, 14.767292, -30.602322, -144.506851);
AddCameraShot(0.999914, -0.012495, -0.004416, -0.000055, 1.143253, -33.602314, -76.884430);
AddCameraShot(0.839161, 0.012048, -0.543698, 0.007806, 19.152437, -49.802273, 24.337317);
AddCameraShot(0.467324, 0.006709, -0.883972, 0.012691, 11.825212, -49.802273, -7.000720);
AddCameraShot(0.861797, 0.001786, -0.507253, 0.001051, -11.986043, -59.702248, 23.263165);
AddCameraShot(0.628546, -0.042609, -0.774831, -0.052525, 20.429928, -48.302277, 9.771714);
AddCameraShot(0.765213, -0.051873, 0.640215, 0.043400, 57.692474, -48.302277, 16.540724);
AddCameraShot(0.264032, -0.015285, -0.962782, -0.055734, -16.681797, -42.902290, 129.553268);
AddCameraShot(-0.382320, 0.022132, -0.922222, -0.053386, 20.670977, -42.902290, 135.513001);
end

function MoveEntityToNode(entIn,pathIn,nodeIn)
if not entIn then
print("Warning!: Entity not specified for move")
return false
elseif not pathIn then
print("Warning!: Path not specified for Entity " .. entIn .. " move")
return false
end

local node
if nodeIn then
node = nodeIn
else
node = 0
end

local locDest = GetPathPoint(pathIn,node)
local charUnit = GetCharacterUnit(entIn)
if charUnit then
SetEntityMatrix(charUnit,locDest)
return true
end
return false
end

[/code]
And I removed the RCHg_eli from the addme.lua. I don't need it, anyway.

EDIT - Word has a "Go to line" ability. Could I use that to find the error, then Notepad to fix it?

EDIT 2 - My Mungelog:
Hidden/Spoiler:
Message Severity: 3
.\Source\LuaHelper.cpp(112)
OpenScript(RCHc_xl): script (13ad2394) not found

Message Severity: 5
.\Source\GameState.cpp(1283)
Could not open MISSION\RCHc_xl.lvl
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

Fiodis wrote:And I removed the RCHg_eli from the addme.lua. I don't need it, anyway.

EDIT - Word has a "Go to line" ability. Could I use that to find the error, then Notepad to fix it?
No because the line starts at 0 every time you go to a new page. I really reccomend editplus anyways. You can even download a lua syntax checker to turn comments green, strings pink, numbers purple etc like pro editors.

Going to line 563 with editplus:
Hidden/Spoiler:
OnEnterRegion("TeleportRegion3")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode3")
end,
"TeleportRegion3"
)
ActivateRegion("TeleportRegion3")
I'm thinking maybe you should delete that? (also see how knowing exactly what line the problem is on is a really big help?)
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

Wierd....are you sure that the "reset-line-count-at-every-page" thing is true for Office Word? I hit ctrl+g, typed in 563, and it took me straight to that line. Anyway, why should I delete that? I took that straight from the tutorial on making a teleporter. Granted, I found a few problems with that tutorial; but I've never had an issue with that line before.

But then also granted, I haven't set up many teleporters before. Still, the first one I got working, so I know the process. Won't deleting that just deactivate the teleporter?

Still I'll try what you say, you being a far more advanced scripter than I am.
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

Oh not delete, I'm sorry, I didn't see the on enter region :oops:

Code: Select all

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode3")
end,
"TeleportRegion3"
)
I think it should be like that. The name of the region comes at the end, not the beginning.

And maybe my Word is different, whatever works for you!
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

Edited, cleaned, remunged, and it still insists something's wrong, this time with another teleport line. My error log says
Hidden/Spoiler:
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHc_xl.lua:578: unfinished string near `"'
ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file. [continuing]
2 Errors 0 Warnings


My Word finds line 578 to be
Hidden/Spoiler:
OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode2")
end,
"TeleportRegion2"
) <==== This one
ActivateRegion("TeleportRegion2")
But that line has no " so I'm assuming my Word's off by some amount. As such, I have no way of telling which line is the problem, except for manually counting them up.

While I do that, could someone please run it through something like Editplus? We'll see who gets to line 578 first.

1...2...3....
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

Yeah word is a bit off.
Delete what's in red:
Hidden/Spoiler:
OnEnterRegion("TeleportRegion3")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode3")
end,
"TeleportRegion3"
)
ActivateRegion("TeleportRegion3")

OnEnterRegion("TeleportRegion4")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode4")
end,
"TeleportRegion4"
)
ActivateRegion("TeleportRegion4")

OnEnterRegion("TeleportRegion5")
function(regIn,character)
MoveEntityToNode(character,"TeleportNode5")
end,
"TeleportRegion5"
)
ActivateRegion("TeleportRegion5")

end

You kept adding the region's name at the beginning, when it only should go at the end.
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

I forgot to upload an updated LUA. I had already deleted the OnEnterRegion bugs. But as for the comma, why shouldn't I add it to each of the "TeleportRegionX" lines? Why only to "TeleportRegion5"?

EDIT - Added the comma to all 5 of the "TeleportRegionX" lines, got a kick in the teeth:
Hidden/Spoiler:
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHc_xl.lua:551: unexpected symbol near `)'
ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file. [continuing]
2 Errors 0 Warnings
User avatar
ThePanda
Private Second Class
Posts: 74
Joined: Sat Dec 20, 2008 4:22 pm

Re: XL mode

Post by ThePanda »

Delete the commas, I think they're the unexpected symbols.
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

But...Rep told me to add those, at least the one by the 5th TeleportRegion line. I'll delete all except that one and see what happens.


EDIT - Done that, and I'm back where I was three posts ago with
Hidden/Spoiler:
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHc_xl.lua:578: unfinished string near `"'
ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file. [continuing]
2 Errors 0 Warnings
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

Ugh, no comma there, sorry, misread it. But can you post a current lua?

It says there's unfinished quotes "" but in my version I see them all completed :/
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

Ok, the rouge comma was captured and carted away. The result:
Hidden/Spoiler:
C:\BF2_ModTools\data_RCH\_BUILD\..\..\ToolsFL\Bin\luac.exe: ..\..\common\scripts\RCH\RCHc_xl.lua:578: unfinished string near `"'
ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file.ERROR[scriptmunge scripts\RCH\RCHc_xl.lua]:Could not read input file. [continuing]
2 Errors 0 Warnings
And the current LUA:
Hidden/Spoiler:
[code]--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

-- This lua was createt by "Mission-Scripter", a program by -=[PfW]=-Skip.


-- load the gametype script
ScriptCB_DoFile("MultiObjectiveContainer")
ScriptCB_DoFile("ObjectiveAssault")
ScriptCB_DoFile("ObjectiveConquest")
ScriptCB_DoFile("ObjectiveGoto")
ScriptCB_DoFile("ObjectiveCTF")
ScriptCB_DoFile("ObjectiveTDM")
ScriptCB_DoFile("Ambush")
ScriptCB_DoFile("setup_teams")

-- REP Attacking (attacker is always #1)
REP = 1;
CIS = 2;
-- These variables do not change
ATT = REP;
DEF = CIS;


function ScriptPostLoad()

--This defines the CPs. These need to happen first
cp1 = CommandPost:New{name = "cp1"}
cp2 = CommandPost:New{name = "cp2"}

SetAIDifficulty(0, 2, "hard")
AllowAISpawn(ATT, false)
AllowAISpawn(DEF, false)
ScriptCB_SetGameRules("campaign")

onfirstspawn = OnCharacterSpawn(
function(character)
if character == 0 then
ShowPopup("level.geo1.hints.hints")
ReleaseCharacterSpawn(onfirstspawn)
onfirstspawn = nil
BeginObjectivesTimer()
ScriptCB_EnableCommandPostVO(0)

end
end)


--objective :goto1
Objective1 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "gotoprime2",

mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective1:AddHint("level.geo1.hints.movement")
Objective1:AddHint("level.geo1.hints.obj_markers")
Objective1:AddHint("level.geo1.hints.review_objectives")
Objective1:AddHint("level.geo1.hints.sprint")


Objective1.OnStart = function(self)
att_obj1_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj1_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective1.OnComplete = function(self)
DeleteAIGoal(att_obj1_aigoal)
DeleteAIGoal(def_obj1_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto2
Objective2 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto1", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective2:AddHint("level.geo1.hints.movement")
Objective2:AddHint("level.geo1.hints.obj_markers")
Objective2:AddHint("level.geo1.hints.review_objectives")
Objective2:AddHint("level.geo1.hints.sprint")


Objective2.OnStart = function(self)
att_obj2_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj2_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective2.OnComplete = function(self)
DeleteAIGoal(att_obj2_aigoal)
DeleteAIGoal(def_obj2_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto3
Objective3 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto2", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective3:AddHint("level.geo1.hints.movement")
Objective3:AddHint("level.geo1.hints.obj_markers")
Objective3:AddHint("level.geo1.hints.review_objectives")
Objective3:AddHint("level.geo1.hints.sprint")


Objective3.OnStart = function(self)
att_obj3_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj3_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective3.OnComplete = function(self)
DeleteAIGoal(att_obj3_aigoal)
DeleteAIGoal(def_obj3_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto4
Objective4 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto3", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective4:AddHint("level.geo1.hints.movement")
Objective4:AddHint("level.geo1.hints.obj_markers")
Objective4:AddHint("level.geo1.hints.review_objectives")
Objective4:AddHint("level.geo1.hints.sprint")


Objective4.OnStart = function(self)
att_obj4_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj4_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective4.OnComplete = function(self)
DeleteAIGoal(att_obj4_aigoal)
DeleteAIGoal(def_obj4_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto5
Objective5 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto4", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective5:AddHint("level.geo1.hints.movement")
Objective5:AddHint("level.geo1.hints.obj_markers")
Objective5:AddHint("level.geo1.hints.review_objectives")
Objective5:AddHint("level.geo1.hints.sprint")


Objective5.OnStart = function(self)
att_obj5_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj5_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective5.OnComplete = function(self)
DeleteAIGoal(att_obj5_aigoal)
DeleteAIGoal(def_obj5_aigoal)
ShowMessageText("game.objectives.complete", ATT)
AllowAISpawn(DEF, true)

end



--objective: assault1
Objective6= ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null",

popupText = "null"}

Dclass = TargetType:New{classname = "cis_inf_rifleman", killLimit = 3}
Objective6:AddTarget(Dclass)

Objective6.OnStart = function(self)
Objective6.Dclass_cpGoal1 = AddAIGoal(ATT, "Defend", 100, "cp2")
Objective6.Dclass_cpGoal2 = AddAIGoal(DEF, "Defend", 100, "cp2")
end

Objective6.OnComplete = function(self)
DeleteAIGoal(Objective6.Dclass_cpGoal1)
DeleteAIGoal(Objective6.Dclass_cpGoal2)
AllowAISpawn(DEF, false)
end




--objective :goto6
Objective7 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto5", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective7:AddHint("level.geo1.hints.movement")
Objective7:AddHint("level.geo1.hints.obj_markers")
Objective7:AddHint("level.geo1.hints.review_objectives")
Objective7:AddHint("level.geo1.hints.sprint")


Objective7.OnStart = function(self)
att_obj7_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj7_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective7.OnComplete = function(self)
DeleteAIGoal(att_obj7_aigoal)
DeleteAIGoal(def_obj7_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto7
Objective8 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto6", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective8:AddHint("level.geo1.hints.movement")
Objective8:AddHint("level.geo1.hints.obj_markers")
Objective8:AddHint("level.geo1.hints.review_objectives")
Objective8:AddHint("level.geo1.hints.sprint")


Objective8.OnStart = function(self)
att_obj8_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj8_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective8.OnComplete = function(self)
DeleteAIGoal(att_obj8_aigoal)
DeleteAIGoal(def_obj8_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto8
Objective9 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto6a", mapIcon

= "hud_objective_icon_circle", AIGoalWeight = 0}

Objective9:AddHint("level.geo1.hints.movement")
Objective9:AddHint("level.geo1.hints.obj_markers")
Objective9:AddHint("level.geo1.hints.review_objectives")
Objective9:AddHint("level.geo1.hints.sprint")


Objective9.OnStart = function(self)
att_obj9_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj9_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective9.OnComplete = function(self)
DeleteAIGoal(att_obj9_aigoal)
DeleteAIGoal(def_obj9_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective10 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective10:AddHint("level.geo1.hints.movement")
Objective10:AddHint("level.geo1.hints.obj_markers")
Objective10:AddHint("level.geo1.hints.review_objectives")
Objective10:AddHint("level.geo1.hints.sprint")


Objective10.OnStart = function(self)
att_obj10_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj10_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective10.OnComplete = function(self)
DeleteAIGoal(att_obj10_aigoal)
DeleteAIGoal(def_obj10_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective11 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7b", mapIcon

= "hud_objective_icon_circle", AIGoalWeight = 0}

Objective11:AddHint("level.geo1.hints.movement")
Objective11:AddHint("level.geo1.hints.obj_markers")
Objective11:AddHint("level.geo1.hints.review_objectives")
Objective11:AddHint("level.geo1.hints.sprint")


Objective11.OnStart = function(self)
att_obj11_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj11_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective11.OnComplete = function(self)
DeleteAIGoal(att_obj11_aigoal)
DeleteAIGoal(def_obj11_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective12 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7a", mapIcon

= "hud_objective_icon_circle", AIGoalWeight = 0}

Objective12:AddHint("level.geo1.hints.movement")
Objective12:AddHint("level.geo1.hints.obj_markers")
Objective12:AddHint("level.geo1.hints.review_objectives")
Objective12:AddHint("level.geo1.hints.sprint")


Objective12.OnStart = function(self)
att_obj12_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj12_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective12.OnComplete = function(self)
DeleteAIGoal(att_obj12_aigoal)
DeleteAIGoal(def_obj12_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective13 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto8", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective13:AddHint("level.geo1.hints.movement")
Objective13:AddHint("level.geo1.hints.obj_markers")
Objective13:AddHint("level.geo1.hints.review_objectives")
Objective13:AddHint("level.geo1.hints.sprint")


Objective13.OnStart = function(self)
att_obj13_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj13_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective13.OnComplete = function(self)
DeleteAIGoal(att_obj13_aigoal)
DeleteAIGoal(def_obj13_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective14 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto9", mapIcon =

"hud_objective_icon_circle", AIGoalWeight = 0}

Objective14:AddHint("level.geo1.hints.movement")
Objective14:AddHint("level.geo1.hints.obj_markers")
Objective14:AddHint("level.geo1.hints.review_objectives")
Objective14:AddHint("level.geo1.hints.sprint")


Objective14.OnStart = function(self)
att_obj14_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj14_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective14.OnComplete = function(self)
DeleteAIGoal(att_obj14_aigoal)
DeleteAIGoal(def_obj14_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective15 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto10", mapIcon

= "hud_objective_icon_circle", AIGoalWeight = 0}

Objective15:AddHint("level.geo1.hints.movement")
Objective15:AddHint("level.geo1.hints.obj_markers")
Objective15:AddHint("level.geo1.hints.review_objectives")
Objective15:AddHint("level.geo1.hints.sprint")


Objective15.OnStart = function(self)
att_obj15_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj15_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective15.OnComplete = function(self)
DeleteAIGoal(att_obj15_aigoal)
DeleteAIGoal(def_obj15_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective16 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto12", mapIcon

= "hud_objective_icon_circle", AIGoalWeight = 0}

Objective16:AddHint("level.geo1.hints.movement")
Objective16:AddHint("level.geo1.hints.obj_markers")
Objective16:AddHint("level.geo1.hints.review_objectives")
Objective16:AddHint("level.geo1.hints.sprint")


Objective16.OnStart = function(self)
att_obj16_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj16_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective16.OnComplete = function(self)
DeleteAIGoal(att_obj16_aigoal)
DeleteAIGoal(def_obj16_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end



--objective: assault2
Dobjekt = Target:New{name = "antenna"}
Dobjekt.OnDestroy = function(self)

end

Objective17 = ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText =

"null"}
Objective17:AddTarget(Dobjekt)


Objective17.OnStart = function(self)


end

Objective17.OnComplete = function(self)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective18 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto13", mapIcon

= "hud_objective_icon_circle", AIGoalWeight = 0}

Objective18:AddHint("level.geo1.hints.movement")
Objective18:AddHint("level.geo1.hints.obj_markers")
Objective18:AddHint("level.geo1.hints.review_objectives")
Objective18:AddHint("level.geo1.hints.sprint")


Objective18.OnStart = function(self)
att_obj18_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj18_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective18.OnComplete = function(self)
DeleteAIGoal(att_obj18_aigoal)
DeleteAIGoal(def_obj18_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end



--objective: assault3
Dobjekt = Target:New{name = "camp"}
Dobjekt.OnDestroy = function(self)

end

Objective19 = ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText =

"null"}
Objective19:AddTarget(Dobjekt)


Objective19.OnStart = function(self)


end

Objective19.OnComplete = function(self)
ShowMessageText("game.objectives.complete", ATT)

end

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode")
end,
"TeleportRegion"
)
ActivateRegion("TeleportRegion")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode2")
end,
"TeleportRegion2"
)
ActivateRegion("TeleportRegion2")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode3")
end,
"TeleportRegion3"
)
ActivateRegion("TeleportRegion3")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode4")
end,
"TeleportRegion4"
)
ActivateRegion("TeleportRegion4")

OnEnterRegion("
function(regIn,character)
MoveEntityToNode(character,"TeleportNode5")
end,
"TeleportRegion5"
)
ActivateRegion("TeleportRegion5")

end


---------------------------------------------------------------------------
-- FUNCTION: ScriptInit
-- PURPOSE: This function is only run once
-- INPUT:
-- OUTPUT:
-- NOTES: The name, 'ScriptInit' is a chosen convention, and each
-- mission script must contain a version of this function, as
-- it is called from C to start the mission.
---------------------------------------------------------------------------
function ScriptInit()

ReadDataFile("ingame.lvl")


SetMaxFlyHeight(30)
SetMaxPlayerFlyHeight (30)

SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",50) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",650) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",550) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",6000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",100) -- should be ~1x #combo

ReadDataFile("sound\\yav.lvl;yav1cw")
ReadDataFile("SIDE\\rep.lvl",
"rep_inf_ep3_rifleman",
"rep_inf_ep3_rocketeer",
"rep_inf_ep3_engineer",
"rep_inf_ep3_sniper",
"rep_inf_ep3_officer",
"rep_inf_ep3_jettrooper",
"rep_hover_fightertank",
"rep_hero_anakin",
"rep_hover_barcspeeder")
ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")


ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_laser",
"tur_bldg_tower")

SetupTeams{
rep = {
team = REP,
units = 20,
reinforcements = 150,
soldier = { "rep_inf_ep3_rifleman",9, 25},
assault = { "rep_inf_ep3_rocketeer",1, 4},
engineer = { "rep_inf_ep3_engineer",1, 4},
sniper = { "rep_inf_ep3_sniper",1, 4},
officer = {"rep_inf_ep3_officer",1, 4},
special = { "rep_inf_ep3_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 20,
reinforcements = 150,
soldier = { "cis_inf_rifleman",9, 25},
assault = { "cis_inf_rocketeer",1, 4},
engineer = { "cis_inf_engineer",1, 4},
sniper = { "cis_inf_sniper",1, 4},
officer = {"cis_inf_officer",1, 4},
special = { "cis_inf_droideka",1, 4},
}
}

SetHeroClass(CIS, "cis_hero_darthmaul")
SetHeroClass(REP, "rep_hero_anakin")


-- Level Stats
-- ClearWalkers()
AddWalkerType(0, 4) -- special -> droidekas
AddWalkerType(1, 0) -- 1x2 (1 pair of legs)
AddWalkerType(2, 0) -- 2x2 (2 pairs of legs)
AddWalkerType(3, 0) -- 3x2 (3 pairs of legs)
local weaponCnt = 1024
SetMemoryPoolSize("Aimer", 75)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 1024)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityCloth", 32)
SetMemoryPoolSize("EntityFlyer", 32)
SetMemoryPoolSize("EntityHover", 32)
SetMemoryPoolSize("EntityLight", 200)
SetMemoryPoolSize("EntitySoundStream", 4)
SetMemoryPoolSize("EntitySoundStatic", 32)
SetMemoryPoolSize("MountedTurret", 32)
SetMemoryPoolSize("Navigator", 128)
SetMemoryPoolSize("Obstacle", 1024)
SetMemoryPoolSize("PathNode", 1024)
SetMemoryPoolSize("SoundSpaceRegion", 64)
SetMemoryPoolSize("TreeGridStack", 1024)
SetMemoryPoolSize("UnitAgent", 128)
SetMemoryPoolSize("UnitController", 128)
SetMemoryPoolSize("Weapon", weaponCnt)

SetSpawnDelay(10.0, 0.25)
--ReadDataFile("dc:RCH\\RCH.lvl", "RCH_xl")
ReadDataFile("dc:RCH\\RCH.lvl", "RCH_xl")
SetDenseEnvironment("false")




-- Sound

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")

voiceSlow = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "global_vo_slow", voiceSlow)

voiceQuick = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_quick")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_quick", voiceQuick)

OpenAudioStream("sound\\global.lvl", "cw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1_emt")

SetBleedingVoiceOver(REP, REP, "rep_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(REP, CIS, "rep_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, REP, "cis_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, CIS, "cis_off_com_report_us_overwhelmed", 1)

SetOutOfBoundsVoiceOver(2, "cisleaving")
SetOutOfBoundsVoiceOver(1, "repleaving")

SetAmbientMusic(REP, 1.0, "rep_yav_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_yav_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_yav_amb_end", 2,1)
SetAmbientMusic(CIS, 1.0, "cis_yav_amb_start", 0,1)
SetAmbientMusic(CIS, 0.8, "cis_yav_amb_middle", 1,1)
SetAmbientMusic(CIS, 0.2, "cis_yav_amb_end", 2,1)

SetVictoryMusic(REP, "rep_yav_amb_victory")
SetDefeatMusic (REP, "rep_yav_amb_defeat")
SetVictoryMusic(CIS, "cis_yav_amb_victory")
SetDefeatMusic (CIS, "cis_yav_amb_defeat")

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
--SetSoundEffect("BirdScatter", "birdsFlySeq1")
--SetSoundEffect("WeaponUnableSelect", "com_weap_inf_weaponchange_null")
--SetSoundEffect("WeaponModeUnableSelect", "com_weap_inf_modechange_null")
SetSoundEffect("SpawnDisplayUnitChange", "shell_select_unit")
SetSoundEffect("SpawnDisplayUnitAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplaySpawnPointChange", "shell_select_change")
SetSoundEffect("SpawnDisplaySpawnPointAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplayBack", "shell_menu_exit")


--OpeningSateliteShot
AddCameraShot(0.908386, -0.209095, -0.352873, -0.081226, -45.922508, -19.114113, 77.022636);

AddCameraShot(-0.481173, 0.024248, -0.875181, -0.044103, 14.767292, -30.602322, -144.506851);
AddCameraShot(0.999914, -0.012495, -0.004416, -0.000055, 1.143253, -33.602314, -76.884430);
AddCameraShot(0.839161, 0.012048, -0.543698, 0.007806, 19.152437, -49.802273, 24.337317);
AddCameraShot(0.467324, 0.006709, -0.883972, 0.012691, 11.825212, -49.802273, -7.000720);
AddCameraShot(0.861797, 0.001786, -0.507253, 0.001051, -11.986043, -59.702248, 23.263165);
AddCameraShot(0.628546, -0.042609, -0.774831, -0.052525, 20.429928, -48.302277, 9.771714);
AddCameraShot(0.765213, -0.051873, 0.640215, 0.043400, 57.692474, -48.302277, 16.540724);
AddCameraShot(0.264032, -0.015285, -0.962782, -0.055734, -16.681797, -42.902290, 129.553268);
AddCameraShot(-0.382320, 0.022132, -0.922222, -0.053386, 20.670977, -42.902290, 135.513001);
end

function MoveEntityToNode(entIn,pathIn,nodeIn)
if not entIn then
print("Warning!: Entity not specified for move")
return false
elseif not pathIn then
print("Warning!: Path not specified for Entity " .. entIn .. " move")
return false
end

local node
if nodeIn then
node = nodeIn
else
node = 0
end

local locDest = GetPathPoint(pathIn,node)
local charUnit = GetCharacterUnit(entIn)
if charUnit then
SetEntityMatrix(charUnit,locDest)
return true
end
return false
end

[/code]
And let me take this chance to say thank you for sharing my headache.

EDIT - Since this has mostly been a back-and-forth between you and me, Rep, how about we finish this tomorrow on Xfire? Mine's Fiodis.
FragMe!
Gametoast Staff
Gametoast Staff
Posts: 2244
Joined: Sat May 13, 2006 12:34 am
Projects :: Not sure keep changing my mind.
Games I'm Playing :: F1 and SWBF
xbox live or psn: No gamertag set
Location: Origin name GT_FragMe
Contact:

Re: XL mode

Post by FragMe! »

Old saying, don't always believe what you read,
Using a different lua editor, SciTE, it came up with this

Code: Select all

OnEnterRegion("
function(regIn,character)
MoveEntityToNode(character,"TeleportNode5")
end,
"TeleportRegion5"
)
ActivateRegion("TeleportRegion5")

end
It is reporting the " after OnEnterRegion( does not have a closing quote. This is down around line 616
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

It worked!

But the objectives stay in their cages and refuse to come out. No matter how much I coax them, they do not start. The mungelog, the shortest one I've had in a while:
Hidden/Spoiler:
Message Severity: 2
.\Source\LuaCallbacks_Mission.cpp(2264)
ShowPopup() has been depricated. Please remove all references to it in code

Message Severity: 3
.\Source\LuaHelper.cpp(312)
CallProc failed: (none):0: attempt to call global `BeginObjectivesTimer' (a nil value)
stack traceback:
(none): in function <(none):38>
Also there's a few bits about missing geometries and unbuilt props and missing capture regions and such, but meh, you know mungelogs: always complaining. As far as I know, I added all those things. I'll double check those. Getting the objectives to start is more important.

I suppose it's not starting because the game can't find the timer that starts it off. Where is it hiding?
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

I think you forgot to add the BeginObjectivesTimer() function and related stuff. Just copy a template out of an exist campaign lua and tailor it to yours.
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

Argh! It's almost working. It's so close to working you can almost feel it. The only Mugnelog message about the script was this:
Hidden/Spoiler:
Message Severity: 3
.\Source\LuaHelper.cpp(312)
CallProc failed: (none):0: attempt to call global `StartObjectives' (a nil value)
stack traceback:
(none): in function <(none):46>
My updated LUA:
Hidden/Spoiler:
--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

-- This lua was createt by "Mission-Scripter", a program by -=[PfW]=-Skip.


-- load the gametype script
ScriptCB_DoFile("MultiObjectiveContainer")
ScriptCB_DoFile("ObjectiveAssault")
ScriptCB_DoFile("ObjectiveConquest")
ScriptCB_DoFile("ObjectiveGoto")
ScriptCB_DoFile("ObjectiveCTF")
ScriptCB_DoFile("ObjectiveTDM")
ScriptCB_DoFile("Ambush")
ScriptCB_DoFile("setup_teams")

-- REP Attacking (attacker is always #1)
REP = 1;
CIS = 2;
-- These variables do not change
ATT = REP;
DEF = CIS;


function ScriptPostLoad()

--This defines the CPs. These need to happen first
cp1 = CommandPost:New{name = "cp1"}
cp2 = CommandPost:New{name = "cp2"}

SetAIDifficulty(0, 2, "hard")
AllowAISpawn(ATT, false)
AllowAISpawn(DEF, false)
ScriptCB_SetGameRules("campaign")

onfirstspawn = OnCharacterSpawn(
function(character)
if IsCharacterHuman(character) then
ReleaseCharacterSpawn(onfirstspawn)
onfirstspawn = nil
objectives_timer = CreateTimer("objectives_timer")
SetTimerValue(objectives_timer, 2)
StartTimer(objectives_timer)
begin_objectives = OnTimerElapse(
function(timer)
StartObjectives ()

end,
objectives_timer
)
end
end
)


--objective :goto1
Objective1 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "gotoprime2", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective1:AddHint("level.geo1.hints.movement")
Objective1:AddHint("level.geo1.hints.obj_markers")
Objective1:AddHint("level.geo1.hints.review_objectives")
Objective1:AddHint("level.geo1.hints.sprint")


Objective1.OnStart = function(self)
att_obj1_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj1_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective1.OnComplete = function(self)
DeleteAIGoal(att_obj1_aigoal)
DeleteAIGoal(def_obj1_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto2
Objective2 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto1", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective2:AddHint("level.geo1.hints.movement")
Objective2:AddHint("level.geo1.hints.obj_markers")
Objective2:AddHint("level.geo1.hints.review_objectives")
Objective2:AddHint("level.geo1.hints.sprint")


Objective2.OnStart = function(self)
att_obj2_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj2_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective2.OnComplete = function(self)
DeleteAIGoal(att_obj2_aigoal)
DeleteAIGoal(def_obj2_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto3
Objective3 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto2", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective3:AddHint("level.geo1.hints.movement")
Objective3:AddHint("level.geo1.hints.obj_markers")
Objective3:AddHint("level.geo1.hints.review_objectives")
Objective3:AddHint("level.geo1.hints.sprint")


Objective3.OnStart = function(self)
att_obj3_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj3_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective3.OnComplete = function(self)
DeleteAIGoal(att_obj3_aigoal)
DeleteAIGoal(def_obj3_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto4
Objective4 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto3", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective4:AddHint("level.geo1.hints.movement")
Objective4:AddHint("level.geo1.hints.obj_markers")
Objective4:AddHint("level.geo1.hints.review_objectives")
Objective4:AddHint("level.geo1.hints.sprint")


Objective4.OnStart = function(self)
att_obj4_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj4_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective4.OnComplete = function(self)
DeleteAIGoal(att_obj4_aigoal)
DeleteAIGoal(def_obj4_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto5
Objective5 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto4", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective5:AddHint("level.geo1.hints.movement")
Objective5:AddHint("level.geo1.hints.obj_markers")
Objective5:AddHint("level.geo1.hints.review_objectives")
Objective5:AddHint("level.geo1.hints.sprint")


Objective5.OnStart = function(self)
att_obj5_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj5_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective5.OnComplete = function(self)
DeleteAIGoal(att_obj5_aigoal)
DeleteAIGoal(def_obj5_aigoal)
ShowMessageText("game.objectives.complete", ATT)
AllowAISpawn(DEF, true)

end



--objective: assault1
Objective6= ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText = "null"}

Dclass = TargetType:New{classname = "cis_inf_rifleman", killLimit = 3}
Objective6:AddTarget(Dclass)

Objective6.OnStart = function(self)
Objective6.Dclass_cpGoal1 = AddAIGoal(ATT, "Defend", 100, "cp2")
Objective6.Dclass_cpGoal2 = AddAIGoal(DEF, "Defend", 100, "cp2")
end

Objective6.OnComplete = function(self)
DeleteAIGoal(Objective6.Dclass_cpGoal1)
DeleteAIGoal(Objective6.Dclass_cpGoal2)
AllowAISpawn(DEF, false)
end




--objective :goto6
Objective7 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto5", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective7:AddHint("level.geo1.hints.movement")
Objective7:AddHint("level.geo1.hints.obj_markers")
Objective7:AddHint("level.geo1.hints.review_objectives")
Objective7:AddHint("level.geo1.hints.sprint")


Objective7.OnStart = function(self)
att_obj7_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj7_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective7.OnComplete = function(self)
DeleteAIGoal(att_obj7_aigoal)
DeleteAIGoal(def_obj7_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto7
Objective8 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto6", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective8:AddHint("level.geo1.hints.movement")
Objective8:AddHint("level.geo1.hints.obj_markers")
Objective8:AddHint("level.geo1.hints.review_objectives")
Objective8:AddHint("level.geo1.hints.sprint")


Objective8.OnStart = function(self)
att_obj8_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj8_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective8.OnComplete = function(self)
DeleteAIGoal(att_obj8_aigoal)
DeleteAIGoal(def_obj8_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto8
Objective9 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto6a", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective9:AddHint("level.geo1.hints.movement")
Objective9:AddHint("level.geo1.hints.obj_markers")
Objective9:AddHint("level.geo1.hints.review_objectives")
Objective9:AddHint("level.geo1.hints.sprint")


Objective9.OnStart = function(self)
att_obj9_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj9_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective9.OnComplete = function(self)
DeleteAIGoal(att_obj9_aigoal)
DeleteAIGoal(def_obj9_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective10 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective10:AddHint("level.geo1.hints.movement")
Objective10:AddHint("level.geo1.hints.obj_markers")
Objective10:AddHint("level.geo1.hints.review_objectives")
Objective10:AddHint("level.geo1.hints.sprint")


Objective10.OnStart = function(self)
att_obj10_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj10_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective10.OnComplete = function(self)
DeleteAIGoal(att_obj10_aigoal)
DeleteAIGoal(def_obj10_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective11 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7b", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective11:AddHint("level.geo1.hints.movement")
Objective11:AddHint("level.geo1.hints.obj_markers")
Objective11:AddHint("level.geo1.hints.review_objectives")
Objective11:AddHint("level.geo1.hints.sprint")


Objective11.OnStart = function(self)
att_obj11_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj11_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective11.OnComplete = function(self)
DeleteAIGoal(att_obj11_aigoal)
DeleteAIGoal(def_obj11_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective12 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto7a", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective12:AddHint("level.geo1.hints.movement")
Objective12:AddHint("level.geo1.hints.obj_markers")
Objective12:AddHint("level.geo1.hints.review_objectives")
Objective12:AddHint("level.geo1.hints.sprint")


Objective12.OnStart = function(self)
att_obj12_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj12_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective12.OnComplete = function(self)
DeleteAIGoal(att_obj12_aigoal)
DeleteAIGoal(def_obj12_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective13 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto8", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective13:AddHint("level.geo1.hints.movement")
Objective13:AddHint("level.geo1.hints.obj_markers")
Objective13:AddHint("level.geo1.hints.review_objectives")
Objective13:AddHint("level.geo1.hints.sprint")


Objective13.OnStart = function(self)
att_obj13_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj13_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective13.OnComplete = function(self)
DeleteAIGoal(att_obj13_aigoal)
DeleteAIGoal(def_obj13_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective14 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto9", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective14:AddHint("level.geo1.hints.movement")
Objective14:AddHint("level.geo1.hints.obj_markers")
Objective14:AddHint("level.geo1.hints.review_objectives")
Objective14:AddHint("level.geo1.hints.sprint")


Objective14.OnStart = function(self)
att_obj14_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj14_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective14.OnComplete = function(self)
DeleteAIGoal(att_obj14_aigoal)
DeleteAIGoal(def_obj14_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective15 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto10", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective15:AddHint("level.geo1.hints.movement")
Objective15:AddHint("level.geo1.hints.obj_markers")
Objective15:AddHint("level.geo1.hints.review_objectives")
Objective15:AddHint("level.geo1.hints.sprint")


Objective15.OnStart = function(self)
att_obj15_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj15_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective15.OnComplete = function(self)
DeleteAIGoal(att_obj15_aigoal)
DeleteAIGoal(def_obj15_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective16 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto12", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective16:AddHint("level.geo1.hints.movement")
Objective16:AddHint("level.geo1.hints.obj_markers")
Objective16:AddHint("level.geo1.hints.review_objectives")
Objective16:AddHint("level.geo1.hints.sprint")


Objective16.OnStart = function(self)
att_obj16_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj16_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective16.OnComplete = function(self)
DeleteAIGoal(att_obj16_aigoal)
DeleteAIGoal(def_obj16_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end



--objective: assault2
Dobjekt = Target:New{name = "antenna"}
Dobjekt.OnDestroy = function(self)

end

Objective17 = ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText = "null"}
Objective17:AddTarget(Dobjekt)


Objective17.OnStart = function(self)


end

Objective17.OnComplete = function(self)
ShowMessageText("game.objectives.complete", ATT)

end




--objective :goto
Objective18 = ObjectiveGoto:New{TeamATT = ATT, TeamDEF = DEF,
text = "null", popupText = "null",
regionName = "goto13", mapIcon = "hud_objective_icon_circle", AIGoalWeight = 0}

Objective18:AddHint("level.geo1.hints.movement")
Objective18:AddHint("level.geo1.hints.obj_markers")
Objective18:AddHint("level.geo1.hints.review_objectives")
Objective18:AddHint("level.geo1.hints.sprint")


Objective18.OnStart = function(self)
att_obj18_aigoal = AddAIGoal(ATT, "Deathmatch", 100)
def_obj18_aigoal = AddAIGoal(DEF, "Deathmatch", 100)

end

Objective18.OnComplete = function(self)
DeleteAIGoal(att_obj18_aigoal)
DeleteAIGoal(def_obj18_aigoal)
ShowMessageText("game.objectives.complete", ATT)

end



--objective: assault3
Dobjekt = Target:New{name = "camp"}
Dobjekt.OnDestroy = function(self)

end

Objective19 = ObjectiveAssault:New{teamATT = ATT, teamDEF = DEF,
text = "null", popupText = "null"}
Objective19:AddTarget(Dobjekt)


Objective19.OnStart = function(self)


end

Objective19.OnComplete = function(self)
ShowMessageText("game.objectives.complete", ATT)

end

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode")
end,
"TeleportRegion"
)
ActivateRegion("TeleportRegion")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode2")
end,
"TeleportRegion2"
)
ActivateRegion("TeleportRegion2")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode3")
end,
"TeleportRegion3"
)
ActivateRegion("TeleportRegion3")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode4")
end,
"TeleportRegion4"
)
ActivateRegion("TeleportRegion4")

OnEnterRegion(
function(regIn,character)
MoveEntityToNode(character,"TeleportNode5")
end,
"TeleportRegion5"
)
ActivateRegion("TeleportRegion5")

end


---------------------------------------------------------------------------
-- FUNCTION: ScriptInit
-- PURPOSE: This function is only run once
-- INPUT:
-- OUTPUT:
-- NOTES: The name, 'ScriptInit' is a chosen convention, and each
-- mission script must contain a version of this function, as
-- it is called from C to start the mission.
---------------------------------------------------------------------------
function ScriptInit()

ReadDataFile("ingame.lvl")


SetMaxFlyHeight(30)
SetMaxPlayerFlyHeight (30)

SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",50) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",650) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",650) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",550) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",6000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",100) -- should be ~1x #combo

ReadDataFile("sound\\yav.lvl;yav1cw")
ReadDataFile("SIDE\\rep.lvl",
"rep_inf_ep3_rifleman",
"rep_inf_ep3_rocketeer",
"rep_inf_ep3_engineer",
"rep_inf_ep3_sniper",
"rep_inf_ep3_officer",
"rep_inf_ep3_jettrooper",
"rep_hover_fightertank",
"rep_hero_anakin",
"rep_hover_barcspeeder")
ReadDataFile("SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")


ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_laser",
"tur_bldg_tower")

SetupTeams{
rep = {
team = REP,
units = 20,
reinforcements = 150,
soldier = { "rep_inf_ep3_rifleman",9, 25},
assault = { "rep_inf_ep3_rocketeer",1, 4},
engineer = { "rep_inf_ep3_engineer",1, 4},
sniper = { "rep_inf_ep3_sniper",1, 4},
officer = {"rep_inf_ep3_officer",1, 4},
special = { "rep_inf_ep3_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 20,
reinforcements = 150,
soldier = { "cis_inf_rifleman",9, 25},
assault = { "cis_inf_rocketeer",1, 4},
engineer = { "cis_inf_engineer",1, 4},
sniper = { "cis_inf_sniper",1, 4},
officer = {"cis_inf_officer",1, 4},
special = { "cis_inf_droideka",1, 4},
}
}

SetHeroClass(CIS, "cis_hero_darthmaul")
SetHeroClass(REP, "rep_hero_anakin")


-- Level Stats
-- ClearWalkers()
AddWalkerType(0, 4) -- special -> droidekas
AddWalkerType(1, 0) -- 1x2 (1 pair of legs)
AddWalkerType(2, 0) -- 2x2 (2 pairs of legs)
AddWalkerType(3, 0) -- 3x2 (3 pairs of legs)
local weaponCnt = 1024
SetMemoryPoolSize("Aimer", 75)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 1024)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityCloth", 32)
SetMemoryPoolSize("EntityFlyer", 32)
SetMemoryPoolSize("EntityHover", 32)
SetMemoryPoolSize("EntityLight", 200)
SetMemoryPoolSize("EntitySoundStream", 4)
SetMemoryPoolSize("EntitySoundStatic", 32)
SetMemoryPoolSize("MountedTurret", 32)
SetMemoryPoolSize("Navigator", 128)
SetMemoryPoolSize("Obstacle", 1024)
SetMemoryPoolSize("PathNode", 1024)
SetMemoryPoolSize("SoundSpaceRegion", 64)
SetMemoryPoolSize("TreeGridStack", 1024)
SetMemoryPoolSize("UnitAgent", 128)
SetMemoryPoolSize("UnitController", 128)
SetMemoryPoolSize("Weapon", weaponCnt)

SetSpawnDelay(10.0, 0.25)
--ReadDataFile("dc:RCH\\RCH.lvl", "RCH_xl")
ReadDataFile("dc:RCH\\RCH.lvl", "RCH_xl")
SetDenseEnvironment("false")




-- Sound

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")

voiceSlow = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "global_vo_slow", voiceSlow)

voiceQuick = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_quick")
AudioStreamAppendSegments("sound\\global.lvl", "cis_unit_vo_quick", voiceQuick)

OpenAudioStream("sound\\global.lvl", "cw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1")
OpenAudioStream("sound\\yav.lvl", "yav1_emt")

SetBleedingVoiceOver(REP, REP, "rep_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(REP, CIS, "rep_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, REP, "cis_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(CIS, CIS, "cis_off_com_report_us_overwhelmed", 1)

SetOutOfBoundsVoiceOver(2, "cisleaving")
SetOutOfBoundsVoiceOver(1, "repleaving")

SetAmbientMusic(REP, 1.0, "rep_yav_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_yav_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_yav_amb_end", 2,1)
SetAmbientMusic(CIS, 1.0, "cis_yav_amb_start", 0,1)
SetAmbientMusic(CIS, 0.8, "cis_yav_amb_middle", 1,1)
SetAmbientMusic(CIS, 0.2, "cis_yav_amb_end", 2,1)

SetVictoryMusic(REP, "rep_yav_amb_victory")
SetDefeatMusic (REP, "rep_yav_amb_defeat")
SetVictoryMusic(CIS, "cis_yav_amb_victory")
SetDefeatMusic (CIS, "cis_yav_amb_defeat")

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
--SetSoundEffect("BirdScatter", "birdsFlySeq1")
--SetSoundEffect("WeaponUnableSelect", "com_weap_inf_weaponchange_null")
--SetSoundEffect("WeaponModeUnableSelect", "com_weap_inf_modechange_null")
SetSoundEffect("SpawnDisplayUnitChange", "shell_select_unit")
SetSoundEffect("SpawnDisplayUnitAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplaySpawnPointChange", "shell_select_change")
SetSoundEffect("SpawnDisplaySpawnPointAccept", "shell_menu_enter")
SetSoundEffect("SpawnDisplayBack", "shell_menu_exit")


--OpeningSateliteShot
AddCameraShot(0.908386, -0.209095, -0.352873, -0.081226, -45.922508, -19.114113, 77.022636);

AddCameraShot(-0.481173, 0.024248, -0.875181, -0.044103, 14.767292, -30.602322, -144.506851);
AddCameraShot(0.999914, -0.012495, -0.004416, -0.000055, 1.143253, -33.602314, -76.884430);
AddCameraShot(0.839161, 0.012048, -0.543698, 0.007806, 19.152437, -49.802273, 24.337317);
AddCameraShot(0.467324, 0.006709, -0.883972, 0.012691, 11.825212, -49.802273, -7.000720);
AddCameraShot(0.861797, 0.001786, -0.507253, 0.001051, -11.986043, -59.702248, 23.263165);
AddCameraShot(0.628546, -0.042609, -0.774831, -0.052525, 20.429928, -48.302277, 9.771714);
AddCameraShot(0.765213, -0.051873, 0.640215, 0.043400, 57.692474, -48.302277, 16.540724);
AddCameraShot(0.264032, -0.015285, -0.962782, -0.055734, -16.681797, -42.902290, 129.553268);
AddCameraShot(-0.382320, 0.022132, -0.922222, -0.053386, 20.670977, -42.902290, 135.513001);
end

function MoveEntityToNode(entIn,pathIn,nodeIn)
if not entIn then
print("Warning!: Entity not specified for move")
return false
elseif not pathIn then
print("Warning!: Path not specified for Entity " .. entIn .. " move")
return false
end

local node
if nodeIn then
node = nodeIn
else
node = 0
end

local locDest = GetPathPoint(pathIn,node)
local charUnit = GetCharacterUnit(entIn)
if charUnit then
SetEntityMatrix(charUnit,locDest)
return true
end
return false
end
I can see that StartObjectives () has nothing in the (). But what should be there? I don't want to risk putting in the wrong thing and messing up my LUA, then forget what the right thing was. I assume I have to list the objectives there, but how?

Should it be StartObjectives (Objective1, Objective2, <etc.>)? Or do they have to have quotation marks around them?




EDIT - Can't believe I forgot to ask this. This timer script is copied directly from the Coruscant script for Knightfall. Thus that script also has a StartObjectives () with nothing in the (). So how come it's timer works and mine doesn't?
RepSharpshooter
Gametoast Staff
Gametoast Staff
Posts: 1351
Joined: Tue Jul 10, 2007 4:10 pm

Re: XL mode

Post by RepSharpshooter »

You are referencing StartObjectives but it is defined no where, so it doesn't exist (a nil value).

Copy one of the definitions of the function from another lua and tailor it to yours.

You must always have:

Code: Select all

function name( parameters or none if you dont need them )

--do stuff

end
Before you can call it like this

Code: Select all

name()
You are probably confused with functions such as SetEntityMatrix(charUnit,locDest) which are already defined in the battlefront game itself (or some in other shipped luas).
User avatar
Fiodis
Master of the Force
Master of the Force
Posts: 4145
Joined: Wed Nov 12, 2008 9:27 pm
Projects :: Rannoch + Tientia + Tools Programming

Re: XL mode

Post by Fiodis »

Ah, thanks for clearing that up. The objectives start, but now that they do, yet another problem is revealed. The first objective, go to the region gotoprime2, works just fine. The second doesn't. I can't understand that, because the mungelog says:
Hidden/Spoiler:
Message Severity: 3
.\Source\HUDObjectiveList.cpp(158)
Objective already added to the list! Make sure there are no duplicate objective texts (and double check that all multiplayer objectives have unique textATT and textDEF)!

Message Severity: 2
.\Source\LuaCallbacks_Mission.cpp(2523)
Timer "victoryTimer" not found

Message Severity: 2
.\Source\LuaCallbacks_Mission.cpp(2523)
Timer "delayTimer" not found

Message Severity: 2
.\Source\LuaCallbacks_Mission.cpp(2523)
Timer "dittyTimer" not found
release self.dittyTimerResponse

Message Severity: 2
.\Source\ActiveRegion.cpp(186)
Region "goto1" not found

Message Severity: 2
.\Source\LuaCallbacks_Mission.cpp(2359)
Region "goto1" not found

Message Severity: 2
.\Source\LuaCallbacks_Mission.cpp(2359)
Region "goto1" not found
The last 3 say that it can't find the region goto1, but goto1 is clearly labeled and placed in the xl layer of ZE. It's name is goto1, it's type is goto1. I don't see why the game doesn't see it.


Also, that first Severity: 3 is listed about 19 times or so. What does it mean?


EDIT - All of the severity: 3's deal with line 158.
Post Reply