Page 1 of 1

Spawn Path Trouble: SOLVED, Now, Lightsaber Trouble....

Posted: Sun Oct 15, 2006 7:31 pm
by Hebes24
I made a mod of the shipped Utapau (same Utapau map, etc, but with a few modifications :wink: ), and I tried to make my own version of Order 66, because the Utapau has it (thanks to the BF1 Conversion Pack v1.7.7 :D). I made a new layer in ZE, put in new uncapturable CPs, etc. then I did the neccessary stuff to make the mode work, made the LUA, and everything seems to work fine. I go to test, but I can't select the CPs. :? They show up, but you cant spawn from them. I get these errors in the BFront2 log:
Message Severity: 3
.\Source\CommandPost.cpp(513)
Command Post missing spawn path "ord66_cp5_spawn"

Message Severity: 3
.\Source\CommandPost.cpp(513)
Command Post missing spawn path "ord66_cp6_spawn"

Message Severity: 3
.\Source\CommandPost.cpp(513)
Command Post missing spawn path "ord66_cp3_spawn"

Message Severity: 3
.\Source\CommandPost.cpp(513)
Command Post missing spawn path "ord66_cp4_spawn"

Message Severity: 3
.\Source\CommandPost.cpp(513)
Command Post missing spawn path "ord66_cp1_spawn"

Message Severity: 3
.\Source\CommandPost.cpp(513)
Command Post missing spawn path "ord66_cp2_spawn"
Pretty straightforward. But, I have those paths in ZE, and they are named correctly (they match up with what I put in the SpawnPath slot for the CP object). It doesn't make any sense! :?

Did I do something wrong? here is the UT2c_ord66.lua:
--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
ScriptCB_DoFile("setup_teams")
-- load the gametype script
ScriptCB_DoFile("ObjectiveTDM")

local CIS = 1
local REP = 2
-- These variables do not change
local ATT = 1
local DEF = 2
----------------------------------------------------------------------
-- 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 ScriptPostLoad()
hunt = ObjectiveTDM:New{teamATT = 1, teamDEF = 2, pointsPerKillATT = 1, pointsPerKillDEF = 3,
textATT = "game.modes.hunt", textDEF = "game.modes.hunt2", multiplayerRules = true}

hunt.OnStart = function(self)

AddAIGoal(ATT, "Deathmatch", 1000)
AddAIGoal(DEF, "Deathmatch", 1000)
end

hunt:Start()
DisableBarriers("Barrier445");
end
function ScriptInit()
-- Designers, these two lines *MUST* be first!
StealArtistHeap(1228*1024)
SetPS2ModelMemory(4380000)

-- Tell the game to load our loading image
ReadDataFile("dc:Load\\common.lvl")

ReadDataFile("ingame.lvl")

-- Republic Attacking (attacker is always #1)

SetTeamAggressiveness(REP, 0.95)
SetTeamAggressiveness(CIS, 0.95)

ReadDataFile("sound\\uta.lvl;uta1cw")

ReadDataFile("SIDE\\rep212th.lvl",
"rep_inf_ep3_rifleman",
"rep_inf_ep3_rocketeer",
"rep_inf_ep3_engineer",
"rep_inf_ep3_sniper",
"rep_inf_ep3_jettrooper",
"rep_hero_obiwan",
"rep_walk_oneman_atst")

ReadDataFile("dc:SIDE\\rep.lvl",
"rep_inf_ep3_officer")

ReadDataFile("SIDE\\jed.lvl",
"jed_knight_01",
"jed_knight_02",
"jed_knight_03",
"jed_knight_04",
"jed_master_01",
"jed_master_02",
"jed_master_03",
"jed_runner")

ReadDataFile("SIDE\\infantry.lvl",
"rep_inf_ep3_recon",
"rep_inf_ep3_commander")


SetupTeams{
rep = {
team = REP,
units = 53,
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},

},
jedi = {
team = CIS,
units = 53,
reinforcements = 150,
soldier = { "jed_knight_01", 9, 25},
assault = { "jed_knight_02",1, 4},
engineer = { "jed_knight_03",1, 4},
sniper = { "jed_knight_04",1, 4},
officer = { "jed_master_01",1, 4},
special = { "jed_master_02",1, 4},
}
}


AddUnitClass(REP, "rep_inf_ep3_commander",1, 2)
AddUnitClass(REP, "rep_inf_ep3_recon",1, 2)
AddUnitClass(CIS, "jed_master_03",1, 2)
AddUnitClass(CIS, "jed_runner",1, 2)

-- Level Stats
ClearWalkers()
AddWalkerType(0, 5) -- droidekas
AddWalkerType(1, 5) -- ATRTa (special case: 0 leg pairs)
local weaponCnt = 220
SetMemoryPoolSize("Aimer", 36)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 200)
SetMemoryPoolSize("Combo::DamageSample", 610)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityHover",6)
SetMemoryPoolSize("EntityLight", 60)
SetMemoryPoolSize("EntityFlyer", 8)
SetMemoryPoolSize("EntitySoundStream", 8)
SetMemoryPoolSize("EntitySoundStatic", 27)
SetMemoryPoolSize("MountedTurret", 2)
SetMemoryPoolSize("Navigator", 40)
SetMemoryPoolSize("Obstacle", 400)
SetMemoryPoolSize("PathFollower", 40)
SetMemoryPoolSize("PathNode", 160)
SetMemoryPoolSize("TentacleSimulator", 0)
SetMemoryPoolSize("TreeGridStack", 225)
SetMemoryPoolSize("UnitAgent", 40)
SetMemoryPoolSize("UnitController", 40)
SetMemoryPoolSize("Weapon", weaponCnt)
SetMemoryPoolSize("SoldierAnimation", 1000)
SetMemoryPoolSize("ParticleTransformer::ColorTrans", 2000)
SetMemoryPoolSize("ParticleTransformer::SizeTransf", 2000)


SetSpawnDelay(10.0, 0.25)
ReadDataFile("dc:UT2\\UT2.lvl", "UT2_ord66")
AddDeathRegion("deathregion")
SetDenseEnvironment("false")
SetMaxFlyHeight(29.5)
SetMaxPlayerFlyHeight(29.5)


-- Sound Stats

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\\uta.lvl", "uta1")
OpenAudioStream("sound\\uta.lvl", "uta1")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
-- OpenAudioStream("sound\\uta.lvl", "uta1_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)

SetLowReinforcementsVoiceOver(REP, REP, "rep_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(REP, CIS, "rep_off_victory_im", .1, 1)
SetLowReinforcementsVoiceOver(CIS, CIS, "cis_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(CIS, REP, "cis_off_victory_im", .1, 1)

SetOutOfBoundsVoiceOver(2, "Repleaving")
SetOutOfBoundsVoiceOver(1, "Cisleaving")

SetAmbientMusic(REP, 1.0, "rep_uta_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_uta_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_uta_amb_end", 2,1)
SetAmbientMusic(CIS, 1.0, "cis_uta_amb_start", 0,1)
SetAmbientMusic(CIS, 0.8, "cis_uta_amb_middle", 1,1)
SetAmbientMusic(CIS, 0.2, "cis_uta_amb_end", 2,1)

SetVictoryMusic(REP, "rep_uta_amb_victory")
SetDefeatMusic (REP, "rep_uta_amb_defeat")
SetVictoryMusic(CIS, "cis_uta_amb_victory")
SetDefeatMusic (CIS, "cis_uta_amb_defeat")

SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
--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")

-- Camera Stats - Utapau: Sinkhole
AddCameraShot(-0.428091, 0.045649, -0.897494, -0.095703, 162.714951, 45.857063, 40.647118)
AddCameraShot(-0.194861, -0.001600, -0.980796, 0.008055, -126.179787, 16.113789, 70.012894);
AddCameraShot(-0.462548, -0.020922, -0.885442, 0.040050, -16.947638, 4.561796, 156.926956);
AddCameraShot(0.995310, 0.024582, -0.093535, 0.002310, 38.288612, 4.561796, 243.298508);
AddCameraShot(0.827070, 0.017093, 0.561719, -0.011609, -24.457638, 8.834146, 296.544586);
AddCameraShot(0.998875, 0.004912, -0.047174, 0.000232, -45.868237, 2.978215, 216.217880);


end





As always, any Help would be Greatly Appreciated!! :D

RE: Spawn Path Trouble....

Posted: Mon Oct 16, 2006 5:42 am
by archer01
Are the paths in the same layer as the CPs? I think it says somewhere in the docs that the capture/control/spawn junk for CPs have to be in the same layer.


If that's not it... I haven't a clue. :?

Posted: Mon Oct 16, 2006 8:55 am
by Gogie
do you have 7 nodes for the spawn path?

Posted: Mon Oct 16, 2006 10:20 am
by Hebes24
@Archer - First thing I checked, same layer. :?

@Gogie - Most have 6, some have 7, but, I didn't think it mattered. :?

Posted: Thu Oct 19, 2006 3:45 pm
by Hebes24
Sorry for the Double post, but I tried to remake the paths, and they still aren't working.

However, I have another possible oprtion to fix this.

I could use the Conquest Layer, But I would need some Code for the LUA to:

1.) Disable the Capture Regions of the CPs and

2.) Assign What CPs belong to which Team. (Right now, it is 1 starting point for each team, the rest are neutral.)

If someone could help me out with this, or Has another idea, Tha would Be great!

Posted: Thu Oct 19, 2006 4:53 pm
by archer01
SetProperty("cpName","CaptureRegion","NoRegionForYou")

--Sets the capture region to something that doesn't exist. This will cause a level 3 message to appear in the log, but it doesn't seem to cause any problems. The develeopers themselves did this in some of the campaign missions.



SetProperty("cpName","team",#)

Posted: Thu Oct 19, 2006 5:17 pm
by Hebes24
Thanks Archer! Munging now....

Hmm. It crashed, but with only the expected "NoRegionForYou" errors. :?

Posted: Thu Oct 19, 2006 10:23 pm
by archer01
Where did you put the commands? They should go into the ScriptPostLoad() function.

Posted: Fri Oct 20, 2006 3:55 pm
by Hebes24
They're in ScriptPostLoad. There were some wierd severity 2's though. I'll post them When I get home (I'm at work (bleh)). :?

Posted: Fri Oct 20, 2006 6:34 pm
by Hebes24
This might be the problem:
Message Severity: 2
.\Source\Combo.cpp(2635)
Combo[0fa87c00]::State[JUMPATTACK_LAND]::Transition: failed to add Combo::Transition to state 'IDLE' [c301cf93] (140 needed)
Even though it's a severity 2, it is a pretty serious combo error, and there are alot of them, with alot of different transitions. What does this Message mean? do I need to increase the Combo::Transition memory pool? :?

Edit: AHA!! Victory is mine!!! The problem was, the LUa didn't have these lines:
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",1000) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",60000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",100) -- should be ~1x #combo



But, Now I have a new problem: Some of the lightsaber's don't do any damage, and they can't deflect! Saber throw works, but regular attacks don't. I get a ton of these errors:
Message Severity: 2
.\Source\Combo.cpp(1662)
Combo::Attack: failed to add Combo::DamageSample (1352 needed)
This looks alot like the old error, but both the "Combo::Attack" and the "Combo::DamageSample" memory pools are over 1352 (the highest messge). :?

Posted: Sat Oct 21, 2006 3:41 am
by Syth
That error is always anoying...

this is what my hero assault LUA combo memory has and it doesnt have that problem any more.
SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",50)
SetMemoryPoolSize ("Combo::State",650)
SetMemoryPoolSize ("Combo::Transition",650)
SetMemoryPoolSize ("Combo::Condition",650)
SetMemoryPoolSize ("Combo::Attack",550)
SetMemoryPoolSize ("Combo::DamageSample",6000)
SetMemoryPoolSize ("Combo::Deflect",100)
I dont know if that will work though

Posted: Sat Oct 21, 2006 3:54 pm
by Hebes24
Sorry Syth, but that's the same as the lines that I used (I just edited them). :?

Posted: Sat Oct 21, 2006 6:15 pm
by Syth
THere is one difference though between our combo lines, yours says
SetMemoryPoolSize ("Combo::DamageSample",60000)

Mine says
SetMemoryPoolSize ("Combo::DamageSample",6000)

It might be that if you set a pool to high it cancels out or something. I dont know. :?

Posted: Sat Oct 21, 2006 6:44 pm
by Hebes24
Funny, it seems your solution works, Syth. I changed that memory pool Back to 6000, and now all of the jedi work! (at least, I think. I haven't tested them all yet :P)

Edit: some of the parts of the combos still do not work, but it is improvement!!