A simple question, and quite a large problem

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

Post Reply
Taivyx
2008 Best Games Related Avatar
Posts: 1706
Joined: Thu Jun 07, 2007 3:34 pm
Projects :: Terra Strife - discontinued
Games I'm Playing :: none
xbox live or psn: No gamertag set
Contact:

A simple question, and quite a large problem

Post by Taivyx »

Does anyone know the precise object count limit Zeroengine can handle?

I wouldn't be asking this normally, but due to the fact that I can't find out using a process of trial and error because Battlefront 2 is quite screwy, I had to.

Which leads me to a problem I probably should post in SWBF2 General, but I don't like the idea of having two active topics at once, so...yeah.

Battlefront 2 has been FATAL crashing on all of my maps that have a change to the world itself
meaning:

FATAL crash (could not load ModID.lvl or something along those lines :P )
- Added objects
- Edited terrain
- change in sky texture
- added water (have added water before with no problems)
- etc.

No FATAL crash

- Side changes
- Lua editing
- other non-zeroeditor work

In short, all work done in zeroeditor causes a FATAL crash
I have had no problems with any of my maps up until about a month ago or so

and yes, I have uninstalled and reinstalled both the mod tools and battlefront 2

When I get home, I'll post the BFront2.log, which I remember had only one severity 3 error, about not being able to load ModID.lvl
User avatar
Teancum
Jedi Admin
Jedi Admin
Posts: 11080
Joined: Wed Sep 07, 2005 11:42 pm
Projects :: No Mod project currently.
Games I'm Playing :: Destiny
xbox live or psn: No gamertag set
Location: Indiana

Re: A simple question, and quite a large problem

Post by Teancum »

FATAL crashes will always be accompanied by an error in the mungelog. It'll barf about a lua error, a bad model, your terrain, something. Basically when you get a FATAL something couldn't be built because of an error, and that error is always in the mungelog
Taivyx
2008 Best Games Related Avatar
Posts: 1706
Joined: Thu Jun 07, 2007 3:34 pm
Projects :: Terra Strife - discontinued
Games I'm Playing :: none
xbox live or psn: No gamertag set
Contact:

Re: A simple question, and quite a large problem

Post by Taivyx »

No errors in PC_MungeLog, only the usual warnings
Hidden/Spoiler:
[code]WARNING[PC_modelmunge msh\eddie_prop_building05.msh]:eddie_prop_building05 has 1065 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\eddie_prop_cart01.msh]:eddie_prop_cart01 has 1300 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_container01.msh]:_PC_WriteShadowVolume(eddie_prop_container01LOWD): invalid shadow face normal
WARNING[PC_modelmunge msh\eddie_prop_grass03.msh]:eddie_prop_grass03 has 12941 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\eddie_prop_grass04.msh]:eddie_prop_grass04 has 25162 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\eddie_prop_tree02.msh]:eddie_prop_tree02 has 1366 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\end_prop_fernclump_2.msh]:end_prop_fernclump_2 has 1036 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\end_prop_foliage_clump1.msh]:end_prop_foliage_clump1 has 1444 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\HOTH_Prop_hangar_bridge.msh]:HOTH_Prop_hangar_bridge has 1308 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\logs.msh]:logs has 1088 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
WARNING[PC_modelmunge msh\NEL_shroom.msh]:NEL_shroom has 1064 vertices and NO COLLISION GEOMETRY (WILL BE SLOW)!
0 Errors 24 Warnings

[/code]
Also, I think it's worth noting that I sent the same exact, compiled map to FOOLIS who tested it and came up with no crash of any kind.
User avatar
elfie
Field Commander
Field Commander
Posts: 931
Joined: Fri Jan 25, 2008 8:26 pm
Games I'm Playing :: no games
xbox live or psn: no live
Location: Coruscant, Jedi Temple
Contact:

Re: A simple question, and quite a large problem

Post by elfie »

Does anyone know the precise object count limit Zeroengine can handle?
unless you have anywhere near 1,000 objects you don't need to worry about that. :D

As for the error, does this happen to all of your maps or just one?
Taivyx
2008 Best Games Related Avatar
Posts: 1706
Joined: Thu Jun 07, 2007 3:34 pm
Projects :: Terra Strife - discontinued
Games I'm Playing :: none
xbox live or psn: No gamertag set
Contact:

Re: A simple question, and quite a large problem

Post by Taivyx »

elfie wrote:
Does anyone know the precise object count limit Zeroengine can handle?
unless you have anywhere near 1,000 objects you don't need to worry about that. :D

As for the error, does this happen to all of your maps or just one?
Actually I have somewhere near 2,000 I think........XD, but I'm going to try and tone down on that :P


I'll test that last question when I have time
Taivyx
2008 Best Games Related Avatar
Posts: 1706
Joined: Thu Jun 07, 2007 3:34 pm
Projects :: Terra Strife - discontinued
Games I'm Playing :: none
xbox live or psn: No gamertag set
Contact:

Re: A simple question, and quite a large problem

Post by Taivyx »

I don't like to double post, but some more clarifications, yes this happens on all of my (ie munged with my modtools) maps with world changes, and a few other maps by other people.

Here's the BF2_Modtools.exe debug report (excluding the usual severity 2's):

Code: Select all

Message Severity: 3
.\Source\LoadUtil.cpp(1019)
Unable to find level chunk  in MISSION.lvl


Message Severity: 3
.\Source\LuaHelper.cpp(112)
OpenScript(TSWc_con): script (6bc891a5) not found

Message Severity: 5
.\Source\GameState.cpp(1283)
Could not open MISSION\TSWc_con.lvl
Remember, NO changes out of the ordinary, just a tiny little edit with anything to do with the world and that happens.
if I can't get this problem solved, I'll have to rely on other people to test the map, which is extremely inefficient, and will delay the release of it by astronomical proportions.
User avatar
Teancum
Jedi Admin
Jedi Admin
Posts: 11080
Joined: Wed Sep 07, 2005 11:42 pm
Projects :: No Mod project currently.
Games I'm Playing :: Destiny
xbox live or psn: No gamertag set
Location: Indiana

Re: A simple question, and quite a large problem

Post by Teancum »

mission.lvl isn't building because there's some sort of error in TSWc_con.lua. Probably some sort of syntax error or something else easy to fix, but you'll have that error until you fix it. Post they lua and we'll help you look for it.
Taivyx
2008 Best Games Related Avatar
Posts: 1706
Joined: Thu Jun 07, 2007 3:34 pm
Projects :: Terra Strife - discontinued
Games I'm Playing :: none
xbox live or psn: No gamertag set
Contact:

Re: A simple question, and quite a large problem

Post by Taivyx »

That's just the thing, I haven't even touched the LUA's yet.
Of course if there's something wrong with the default one that my modtools gave me......
But this hasn't been happening until 2 months ago :?

Anyway, on to TSWc_con.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;
-- 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"}



--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: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\\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:TSW\\TSW.lvl", "TSW_conquest")
ReadDataFile("dc:TSW\\TSW.lvl", "TSW_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]
I couldn't find anything myself

Forgot to mention, but when I zip the map up and send it to others, it works perfectly fine for them :faint:
Which makes me think it's a problem with my swbf2.
But this problem didn't exist 2 months ago. >.<
User avatar
[RDH]Zerted
Gametoast Staff
Gametoast Staff
Posts: 2982
Joined: Sun Feb 26, 2006 7:36 am
Projects :: Bos Wars AI - a RTS game
Games I'm Playing :: SWBF2 and Bos Wars
xbox live or psn: No gamertag set
Location: USA
Contact:

Re: A simple question, and quite a large problem

Post by [RDH]Zerted »

I had the exact same problem about a month ago, and just found the fix. You have too many maps in your addon folder. Delete some or use the Map Manager (I recommend going with the deleting).
Taivyx
2008 Best Games Related Avatar
Posts: 1706
Joined: Thu Jun 07, 2007 3:34 pm
Projects :: Terra Strife - discontinued
Games I'm Playing :: none
xbox live or psn: No gamertag set
Contact:

Re: A simple question, and quite a large problem

Post by Taivyx »

Thanks a bundle Zerted :D , no more fatals.
Turns out the addon folder limit is about 50, not 56.
Post Reply