Lua Callback Erro

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

Rekubot
Jedi
Jedi
Posts: 1080
Joined: Wed Apr 05, 2006 12:34 pm
Projects :: No Mod project currently.
Games I'm Playing :: Shadow Complex
xbox live or psn: Rekubot
Location: UK

Post by Rekubot »

Code: Select all

ReadDataFile("sound\\nab.lvl;nab2cw") 
ReadDataFile("dc:SIDE\\rep.lvl", 
"rep_inf_ep3_rifleman", 
"rep_inf_ep2_rifleman", 
"rep_inf_ep3_rocketeer", 
"rep_inf_ep3_engineer", 
"rep_inf_ep3_sniper_felucia", 
"rep_inf_ep3_officer", 
"rep_inf_ep3_jettrooper", 
"rep_walk_oneman_atst", 
"rep_walk_atxt", 
"rep_hover_barcspeeder") 
ReadDataFile("dc:SIDE\\cis.lvl", 
"cis_inf_rifleman", 
"cis_inf_marine", 
"cis_inf_rocketeer", 
"cis_inf_engineer", 
"cis_inf_sniper", 
"cis_inf_droideka", 
"cis_hover_aat", 
"cis_hover_stap", 
"gar_hover_gianspeeder") 
ReadDataFile("dc:SIDE\\imp.lvl", 
"imp_inf_officer", 
"imp_hero_bobafett", 
"imp_hero_darthvader", 
"imp_walk_atst", 
"imp_hover_speederbike") 
ReadDataFile("dc:SIDE\\geo.lvl", "gen_inf_geonosian") 
ReadDataFile("dc:SIDE\\gar.lvl", "gar_inf_soldier") 

Code: Select all

AddUnitClass(CIS, "geo_inf_agro_geonosian",1,4) 
You also need to make sure that geo_inf_agro_geonosian is in the ReadDataFile part. At the moment you've asked it to load gen_inf_geonosian, see?
MasterSkywalker
Major
Major
Posts: 501
Joined: Mon Apr 17, 2006 1:44 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Post by MasterSkywalker »

Yep but I changed that. Thanks for your help :D I just have one last question, How can i make an AT-TE spawn? I set up everything like it was in the Geononis LUA and map but my AT-TE doesn't want to spawn :( This is my current lua :P:

--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

-- load the gametype script
ScriptCB_DoFile("ObjectiveConquest")
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"}
cp3 = CommandPost:New{name = "cp3"}



--This sets up the actual objective. This needs to happen after cp's are defined
conquest = ObjectiveConquest:New{teamATT = ATT, teamDEF = DEF,
textATT = "game.modes.con",
textDEF = "game.modes.con2",
multiplayerRules = true}

--This adds the CPs to the objective. This needs to happen after the objective is set up
conquest:AddCommandPost(cp1)
conquest:AddCommandPost(cp2)
conquest:AddCommandPost(cp3)

conquest:Start()

EnableSPHeroRules()

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(70)
SetMaxPlayerFlyHeight (70)

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\\nab.lvl;nab2cw")
ReadDataFile("dc:sound\\ES3.lvl;ES3cw")
ReadDataFile("dc:SIDE\\rep.lvl",
"rep_inf_ep3_rifleman",
"rep_inf_ep2_rifleman",
"rep_inf_ep3_rocketeer",
"rep_inf_ep3_engineer",
"rep_inf_ep3_sniper_felucia",
"rep_inf_ep3_officer",
"rep_inf_ep3_jettrooper",
"rep_walk_oneman_atst",
"rep_walk_atxt",
"rep_walk_atte",
"rep_fly_gunship_sc",
"rep_hover_barcspeeder")
ReadDataFile("dc:SIDE\\cis.lvl",
"cis_inf_rifleman",
"cis_inf_marine",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_droideka",
"cis_fly_droidfighter_sc",
"cis_hover_aat",
"cis_hover_stap",
"gar_hover_gianspeeder")
ReadDataFile("dc:SIDE\\imp.lvl",
"imp_inf_officer",
"imp_hero_bobafett",
"imp_hero_darthvader",
"imp_walk_atst",
"imp_hover_speederbike",
"imp_fly_ai_trooptrans")
ReadDataFile("dc:SIDE\\geo.lvl", "gen_inf_geonosian")
ReadDataFile("dc:SIDE\\gar.lvl", "gar_inf_soldier")


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

SetupTeams{
rep = {
team = REP,
units = 70,
reinforcements = 800,
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_felucia",1, 4},
officer = { "imp_inf_officer",1, 4},
special = { "rep_inf_ep3_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 74,
reinforcements = 875,
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 = { "gar_inf_soldier",1, 4},
special = { "cis_inf_droideka",1, 4},
}
}

AddUnitClass(REP, "rep_inf_ep2_rifleman",9,25)
AddUnitClass(CIS, "cis_inf_marine",9,25)
AddUnitClass(CIS, "gen_inf_geonosian",1,4)

SetTeamName (3, "jawas")
AddUnitClass (3, "gar_inf_soldier", 10,15)
SetUnitCount (3, 15)
AddAIGoal(3, "Deathmatch", 100)
SetTeamAsEnemy(ATT,3)
SetTeamAsEnemy(3,ATT)
SetTeamAsFriend(DEF,3)
SetTeamAsFriend(3,DEF)

SetHeroClass(CIS, "imp_hero_bobafett")
SetHeroClass(REP, "imp_hero_darthvader")


-- Level Stats
ClearWalkers()
AddWalkerType(0, 3) -- 8 droidekas with 0 leg pairs each
AddWalkerType(1, 3) -- ATSTs
AddWalkerType(3, 0) -- 2 attes with 3 leg pairs each
local weaponCnt = 240
SetMemoryPoolSize("Aimer", 50)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 128)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityCloth", 18)
SetMemoryPoolSize("EntitySoundStream", 1)
SetMemoryPoolSize("EntitySoundStatic", 44)
SetMemoryPoolSize("EntityHover", 4)
SetMemoryPoolSize("MountedTurret", 11)
SetMemoryPoolSize("Navigator", 40)
SetMemoryPoolSize("Obstacle", 450)
SetMemoryPoolSize("PathFollower", 40)
SetMemoryPoolSize("PathNode", 200)
SetMemoryPoolSize("TreeGridStack", 400)
SetMemoryPoolSize("UnitAgent", 40)
SetMemoryPoolSize("UnitController", 40)
SetMemoryPoolSize("Weapon", weaponCnt)
SetMemoryPoolSize("EntityFlyer", 6)

SetSpawnDelay(10.0, 0.25)
--ReadDataFile("dc:ES3\\ES3.lvl", "ES3_conquest")
ReadDataFile("dc:ES3\\ES3.lvl", "ES3_conquest")
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", "gcw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\nab.lvl", "nab2")
OpenAudioStream("sound\\nab.lvl", "nab2")
OpenAudioStream("sound\\nab.lvl", "nab2_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
^Destroyer^

Post by ^Destroyer^ »

As far as i see u forgot to add this lines:
SetMemoryPoolSize("EntityWalker", 4)<----- Edit this number of how many AT-TE's u want to spawn, this counts for the second line to.

And this one:
SetMemoryPoolSize("CommandWalker",4)

I hope this helps.

^Destroyer^
MasterSkywalker
Major
Major
Posts: 501
Joined: Mon Apr 17, 2006 1:44 pm
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set

Post by MasterSkywalker »

Every worked fine, until yesterday. I just munged my map after I changed a few things in my lua (just the order that my units appear, I only did that for the CIS). But now when I choose CIS I get the stupid spawn bug, and instad of seeing a SBD I see a Clone Trooper. I tried the Debug output but I just got the random errors I get all the time, and I could play as the CIS online :S What did I do wrong now?
Post Reply