Problems with locals [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

Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Problems with locals [Solved]

Post by Cattermelon »

So, I'm trying to set up some locals in my map (ewoks, to be exact). I've followed the tutorial by Kateana step by step, but when I load the map, no command posts appear, and I can't spawn in. I double and triple checked my lua, but I just can't find what I've done wrong. Here's my lua:
Hidden/Spoiler:
[code]--
-- 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;
LocalTeam = 3;
-- 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"}
cp4 = CommandPost:New{name = "cp4"}
cp5 = CommandPost:New{name = "cp5"}
cp6 = CommandPost:New{name = "Local_CP"}




--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:AddCommandPost(cp4)
conquest:AddCommandPost(cp5)

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(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\\ewk.lvl",
"ewk_inf_trooper")
ReadDataFile("dc: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},
}

}

SetTeamName (3, "ewoks")
AddUnitClass (3, "ewk_inf_trooper", 10, 15)
SetUnitCount (3, 15)
AddAiGoal(3, "Deathmatch", 100)
SetTeamAsFriend(ATT,3)
SetTeamAsFriend(3,ATT)
SetTeamAsFriend(DEF,3)
SetTeamAsFriend(3,DEF)

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:ABC\\ABC.lvl", "ABC_conquest")
ReadDataFile("dc:ABC\\ABC.lvl", "ABC_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", "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[/code]
Last edited by Cattermelon on Wed Jan 10, 2018 3:55 pm, edited 1 time in total.
Ascertes
Private Second Class
Posts: 65
Joined: Thu Aug 18, 2016 3:42 pm
Projects :: Space Carida
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Ascertes »

In my experience, having no command posts usually indicates a problem with the .lvl file. As for your LUA, a couple things:

Code: Select all

-- REP Attacking (attacker is always #1)
REP = 1;
CIS = 2;
LocalTeam = 3;
-- These variables do not change
ATT = [b]REP[/b];
DEF = [b]CIS[/b];
My only experience with bf2 modding lies in space battles, but for bf1 at least the REP and CIS are normally 1 and 2. After checking a stock bf2 LUA, it is the same for bf2. So I'd start by changing REP and CIS to 1 and 2 for ATT and DEF.
Also, the "LocalTeam = 3;" part doesn't seem to be necessary, based on stock LUA's. I'd try removing that as well, see what happens.

Secondly, this:

Code: Select all

--This defines the CPs. These need to happen first
cp1 = CommandPost:New{name = "cp1"}
cp2 = CommandPost:New{name = "cp2"}
cp3 = CommandPost:New{name = "cp3"}
cp4 = CommandPost:New{name = "cp4"}
cp5 = CommandPost:New{name = "cp5"}
[b]cp6 = CommandPost:New{name = "Local_CP"}[/b]

conquest:AddCommandPost(cp1)
conquest:AddCommandPost(cp2)
conquest:AddCommandPost(cp3)
conquest:AddCommandPost(cp4)
conquest:AddCommandPost(cp5) 
Notice how the bolded line is missing from the second section. That may also be causing a problem.


Otherwise, it seems your LUA is fine. Hope this helps!
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

I tried what you suggested, and nothing has changed. Any other ideas?
LitFam
Sergeant Major
Sergeant Major
Posts: 234
Joined: Sat Feb 04, 2017 5:52 pm
Games I'm Playing :: SWBF II 2005
xbox live or psn: No gamertag set
Location: Milky Way, Solar System, Earth, Antarctica

Re: Problems with locals

Post by LitFam »

You forgot to add this in your .lua

conquest:AddCommandPost(Local_CP)
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: Problems with locals

Post by Marth8880 »

LitFam wrote:You forgot to add this in your .lua

conquest:AddCommandPost(Local_CP)
Close. It would have to be `conquest:AddCommandPost(cp6)` - the value inside the parentheses is a variable, which in this case is `cp6`.
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

LitFam wrote:You forgot to add this in your .lua

conquest:AddCommandPost(Local_CP)
Marth8880 wrote:
LitFam wrote:You forgot to add this in your .lua

conquest:AddCommandPost(Local_CP)
Close. It would have to be `conquest:AddCommandPost(cp6)` - the value inside the parentheses is a variable, which in this case is `cp6`.
Neither of these solutions changed anything.
Ascertes
Private Second Class
Posts: 65
Joined: Thu Aug 18, 2016 3:42 pm
Projects :: Space Carida
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Ascertes »

Upon further inspection, this also stood out to me:

Code: Select all

 --ReadDataFile("dc:ABC\\ABC.lvl", "ABC_conquest")
    ReadDataFile("dc:ABC\\ABC.lvl", "ABC_conquest")
Is your 3 letter date folder called ABC? The only reason I ask is because most people do a more unique 3 letter name, and ABC is used often in tutorials so sometimes people to forget to change it after doing said tutorials.
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

Yeah, I just made it ABC. This is my first map (just for myself), and I didn't really care enough to think of a creative name, lol.
Ascertes
Private Second Class
Posts: 65
Joined: Thu Aug 18, 2016 3:42 pm
Projects :: Space Carida
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Ascertes »

Code: Select all

ReadDataFile("dc: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")
Another thing. Did you create a custom Republic side? If not, the dc: part doesn't need to be there.
AQT
Gametoast Staff
Gametoast Staff
Posts: 4910
Joined: Sat Nov 03, 2007 4:55 pm
Location: SoCal, USA

Re: Problems with locals

Post by AQT »

You have:
Cattermelon wrote:

Code: Select all

    AddAiGoal(3, "Deathmatch", 100)
It should be:

Code: Select all

    AddAIGoal(3, "Deathmatch", 100)
Also, you don't need to add the local CP to the list of CPs, unless it needs to be captured as well in order for the countdown timer to appear.
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

I fixed the typo you pointed out, AQT, and I can now spawn into the map, and everything seems normal, except no ewoks are showing up.
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: Problems with locals

Post by Marth8880 »

Is the locals CP's team set to 3?

Also, have you checked the debug log for any relevant information?
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

Yes it is. And there's a slight problem there. When I run the debug battlefront, no debug log ever appears.
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: Problems with locals

Post by Marth8880 »

Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

I use to get the CD 1 error thing, so I use the modified version referenced at the bottom, which I have placed in the same folder as my BattlefrontII.exe. It works fine, but whenever I close it no debug log appears.
Marth8880
Resistance Leader
Posts: 5042
Joined: Tue Feb 09, 2010 8:43 pm
Projects :: DI2 + Psychosis
Games I'm Playing :: Silent Hill 2
xbox live or psn: Marth8880
Location: Edinburgh, UK
Contact:

Re: Problems with locals

Post by Marth8880 »

Again, see question #4 - particularly the note to Vista users (applies to 7/8/8.1/10/etc. too).
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

Okay, I found the debug log, thanks for the help. Here's some stuff that seemed relevant. I figured I'd post it here since I'm not familiar working with the debug log, lol.

Code: Select all

Message Severity: 3
C:\Battlefront2\main\Battlefront2\Source\LoadUtil.cpp(829)
Unable to find level chunk ewk_inf_trooper in data\_lvl_pc\SIDE\ewk.lvl


Message Severity: 3
C:\Battlefront2\main\Battlefront2\Source\LoadUtil.cpp(1019)
Unable to find level chunk  in SIDE\ewk.lvl
AQT
Gametoast Staff
Gametoast Staff
Posts: 4910
Joined: Sat Nov 03, 2007 4:55 pm
Location: SoCal, USA

Re: Problems with locals

Post by AQT »

I don't have the source files to check at the moment, but is the unit really called ewk_inf_trooper? Double check the stock Endor lua files to be sure.

EDIT
Ah, you can't just load ewk_inf_trooper like that. It has to be done like this: viewtopic.php?p=246463#p246463
Cattermelon
Private
Posts: 41
Joined: Mon Aug 28, 2017 12:14 pm
Projects :: No Mod project currently.
xbox live or psn: No gamertag set

Re: Problems with locals

Post by Cattermelon »

I checked the stock Endor lua files and they do indeed reference an "ewk_inf_trooper".
AQT
Gametoast Staff
Gametoast Staff
Posts: 4910
Joined: Sat Nov 03, 2007 4:55 pm
Location: SoCal, USA

Re: Problems with locals

Post by AQT »

Again: viewtopic.php?p=246463#p246463

You have:
Cattermelon wrote:

Code: Select all

    ReadDataFile ("SIDE\\ewk.lvl",
             "ewk_inf_trooper")
It should be:

Code: Select all

    ReadDataFile ("SIDE\\ewk.lvl",
             "ewk_inf_basic")
While ewk_inf_trooper can be used as a unit class, you actually load ewk_inf_basic instead, which contains all three stock Ewok classes.
Post Reply