req. file 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
User avatar
agzilla123
First Lance Corporal
First Lance Corporal
Posts: 135
Joined: Sun Aug 03, 2008 11:20 am

req. file problem?

Post by agzilla123 »

I really am not sure what is wrong here. I am trying to add a unit, tes_inf_arcprudii, to my map.
Hidden/Spoiler:
Message Severity: 3
.\Source\LuaCallbacks_Mission.cpp(866)
Lua ReadDataFile: Could not open dc:SIDE\tes.lvl
uf_updateClassIndex(): Added class: rep_inf_ep3_rifleman
uf_updateClassIndex(): Added class: rep_inf_ep3_rocketeer
uf_updateClassIndex(): Added class: tes_inf_arcprudii

Message Severity: 2
.\Source\Team.cpp(625)
Team missing class "tes_inf_arcprudii" (check the side's .req file)
uf_updateClassIndex(): Added class: rep_inf_ep3_engineer
uf_updateClassIndex(): Added class: rep_inf_ep3_officer
uf_updateClassIndex(): Added class: rep_inf_ep3_jettrooper
uf_updateClassIndex(): Added class: cis_inf_rifleman
uf_updateClassIndex(): Added class: cis_inf_rocketeer
uf_updateClassIndex(): Added class: cis_inf_sniper
uf_updateClassIndex(): Added class: cis_inf_engineer
uf_updateClassIndex(): Added class: cis_inf_officer
uf_updateClassIndex(): Added class: cis_inf_droideka
uf_updateClassIndex(): Added class: cis_hero_darthmaul
uf_updateClassIndex(): Added class: rep_hero_anakin
utility_functions2: ReadDataFile(): This map's code, mode: tes tes_conquest
As you can see, the first message indicates that the game is not loading my unit, and I am not sure why. Here is my .lua:
Hidden/Spoiler:
--
-- 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("dc:SIDE\\tes.lvl",
"tes_inf_arcprudii")

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 = { "tes_inf_arcprudii",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:TES\\TES.lvl", "TES_conquest")
ReadDataFile("dc:TES\\TES.lvl", "TES_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
The next message says that I should check the sides .req file. I did, yet i see absolutely no problems there. Here is my side's .req file:
Hidden/Spoiler:
ucft
{
REQN
{
"lvl"
"tes_inf_arcprudii"
}
}
This is probably a pretty simple answer to this problem, but I simply cannot find it. so, does anyone else know whats wrong?

Any help would be appreciated.
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: req. file problem?

Post by Fiodis »

Aside from the side's req, what about the unit's own req?
biohazard
Command Sergeant Major
Command Sergeant Major
Posts: 268
Joined: Sun Oct 18, 2009 8:20 am
Projects :: No Mod project currently.
Games I'm Playing :: I have not listed any games yet
xbox live or psn: No gamertag set
Location: http://www.youtube.com/watch?v=jWFk0XasQmE
Contact:

Re: req. file problem?

Post by biohazard »

You also need to have a file in your side's req folder. Just copy and rename an existing unit req to the same name as your unit (or, more specifically, what you put in the side's req file) and open it up and replace the unit's name that's there with your own.
User avatar
agzilla123
First Lance Corporal
First Lance Corporal
Posts: 135
Joined: Sun Aug 03, 2008 11:20 am

Re: req. file problem?

Post by agzilla123 »

I had exactly (the unit .req) but, for some reason, it came up with an error.

Here is my unit .req:
Hidden/Spoiler:
ucft
{
REQN
{
"class"
"tes_inf_arcprudii"
}
}
Any help would be appreciated
mswf
Master Bounty Hunter
Master Bounty Hunter
Posts: 1674
Joined: Tue Mar 31, 2009 3:40 pm
Location: Twello, The Netherlands
Contact:

Re: req. file problem?

Post by mswf »

Just to check; did you munge your side correctly?
User avatar
agzilla123
First Lance Corporal
First Lance Corporal
Posts: 135
Joined: Sun Aug 03, 2008 11:20 am

Re: req. file problem?

Post by agzilla123 »

I believe so, if you mean that I encountered absolutely no problems and my map works just fine.
User avatar
destos
Chief Warrant Officer
Chief Warrant Officer
Posts: 349
Joined: Sat Sep 22, 2007 10:37 pm

Re: req. file problem?

Post by destos »

i think i know the problemo here (Could not open dc:SIDE\tes.lvl) you forgot to add the second \ in your LUA,

in the LUA it should look like

Code: Select all

ReadDataFile("SIDE\\***.lvl",
(insert your req file name with the ***)

EDIT*- well now looking at your lua, it does have that, but the log says it's looking for SIDE\ter.req, so I might be wrong.
MercuryNoodles
Jedi
Jedi
Posts: 1003
Joined: Sun Mar 12, 2006 7:16 pm
Projects :: Space - Boarding Action
xbox live or psn: No gamertag set

Re: req. file problem?

Post by MercuryNoodles »

Try a clean and remunge of the tes side. Often, when it gives a set of messages like those, it's because the files are not munged correctly. If the game can't read the lvl file, it won't be able to find the class.
User avatar
agzilla123
First Lance Corporal
First Lance Corporal
Posts: 135
Joined: Sun Aug 03, 2008 11:20 am

Re: req. file problem?

Post by agzilla123 »

Hidden/Spoiler:
How to do a manual clean:
--------------------
(replace *** with your 3 letter map ID)

Delete all files in the following folders:
data_***/_BUILD/SIDE/***/MUNGED/PC --do this for each side you've munged
data_***/_BUILD/WORLDS/***/MUNGED/PC

Delete any LVL and REQ files in the following folders
data_***/_BUILD/SIDE/***
data_***/_BUILD/WORLDS/***
data_***/_LVL_PC/SIDE
data_***/_LVL_PC/*** --Your world name

Finally delete your map from
/Star Wars Battlefront II/Gamedata/Addon

That's a manual clean. Try munging again after that.
It has been awhile since I have had to do a manual clean, so I could be wrong here, but there should be absolutely no difference in what Teancum posted and whats should be in my folders right? I mean in the way of capital letter, like if it says SIDE then it should appear just like that not in lower cases in your folders.

If this is the case, then I have absolutely no files that need to be deleted, accept for the ones in my addon folder.

Any help would be appreciated.
Post Reply