Trouble adding the Dark Times

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
StarkillerMarek
Rebel Colonel
Rebel Colonel
Posts: 611
Joined: Wed Aug 12, 2009 4:42 pm
Location: I may be back.

Trouble adding the Dark Times

Post by StarkillerMarek »

I tried to add Mav's Dark Times to a map last night, and I obviously didn't do something right. I get a whole bunch of munge errors. :
Hidden/Spoiler:
C:\BF2_ModTools\ToolsFL\Bin\luac.exe: ..\..\common\scripts\MI1\MI11_con.lua:269: `end' expected (to close `function' at line 19) near `<eof>'
ERROR[scriptmunge scripts\MI1\MI11_con.lua]:Could not read input file.ERROR[scriptmunge scripts\MI1\MI11_con.lua]:Could not read input file. [continuing]
2 Errors 0 Warnings

ERROR[levelpack mission\MI11_con.req]:Expecting bracket, but none was found.
File : munged\pc\mi11_con.script.req(1)...

ucft <--
ERROR[levelpack mission\MI11_con.req]:Expecting bracket, but none was found.
File : munged\pc\mi11_con.script.req(1)...

ucft <--

2 Errors 0 Warnings

ERROR[levelpack mission.req]:Expecting bracket, but none was found.
File : munged\pc\mi11_con.lvl.req(1)...

ucft <--
ERROR[levelpack mission.req]:Expecting bracket, but none was found.
File : munged\pc\mi11_con.lvl.req(1)...

ucft <--
[continuing]
2 Errors 0 Warnings
I tried reviewing all the sutff I did, but everything looks ok. I edited by mission.req, and I added a mi11_con.req. I then followed Mav's tutorial.


The lua looks ok to me, but apparently ScriptPostLoad is not ended.
Hidden/Spoiler:
--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
-- load the gametype script
ScriptCB_DoFile("ObjectiveConquest")
ScriptCB_DoFile("setup_teams")
ScriptCB_DoFile("TFURandom")
ScriptCB_DoFile("AIHeroSupport")

-- Empire Attacking (attacker is always #1)
ALL = 1
IMP = 2
-- These variables do not change
ATT = 1
DEF = 2

ReadDataFile("..\\..\\addon\\BDT\\data\\_LVL_PC\\core.lvl")

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"}


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

if not ScriptCB_InMultiplayer() then


herosupport = AIHeroSupport:New{AIATTHeroHealth = 5000, AIDEFHeroHealth = 3000, gameMode = "conquest",}
herosupport:SetHeroClass(IMP, "herostrEmp")
herosupport:SetHeroClass(ALL, "herostrAll")
herosupport:AddSpawnCP("CP1","CP1_SPAWN")
herosupport:AddSpawnCP("CP2","CP2_SPAWN")
herosupport:AddSpawnCP("CP3","CP3_SPAWN")
herosupport:AddSpawnCP("CP4","CP4_SPAWN")
herosupport:AddSpawnCP("CP5","CP5_SPAWN")

herosupport: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()

if not ScriptCB_InMultiplayer() then
DecideUnits(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
elseif ScriptCB_InMultiplayer() then
herostrAll = "all_hero_marek"
supportstrAll = "all_inf_elite"
herostrEmp = "imp_hero_shadowguard"
supportstrEmp = "imp_inf_shadowtrooper"
end



ReadDataFile("dc:Load\\common.lvl")

ReadDataFile("..\\..\\addon\\BDT\\data\\_LVL_PC\\ingame.lvl")

ReadDataFile("ingame.lvl")



SetMaxFlyHeight(40)
SetMaxPlayerFlyHeight(40)


SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("ClothData",40)
SetMemoryPoolSize ("Combo",170) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",1850) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",1850) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",1850) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",1750) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",14000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",1140) -- should be ~1x #combo -- should be ~1x #combo


ReadDataFile("sound\\tat.lvl;tat2gcw")
ReadDataFile("..\\..\\addon\\BDT\\data\\_LVL_PC\\sound\\tes.lvl;tescw")
ReadDataFile("..\\..\\addon\\BDT\\data\\_LVL_PC\\SIDE\\dark.lvl",
"all_hero_bail",
"all_inf_soldier",
"all_inf_heavy",
"all_inf_marksman",
"all_inf_moncaleng",
"all_inf_durosmerc",
"all_inf_bothan",
"imp_inf_soldier",
"imp_inf_marksman",
"imp_inf_heavy",
"imp_inf_gunner",
"imp_inf_heavymelee",
"imp_inf_commando",
"imp_inf_jumptrooper",
supportstrAll,
supportstrEmp)

ReadDataFile("..\\..\\addon\\BDT\\data\\_LVL_PC\\SIDE\\lead.lvl",
herostrAll,
herostrEmp)

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


SetupTeams{
all = {
team = ALL,
units = 20,
reinforcements = 150,
soldier = { "all_inf_soldier",9, 25},
assault = { "all_inf_heavy",1,4},
engineer = { "all_inf_moncaleng",1,4},
sniper = { "all_inf_marksman",1,4},
officer = { "all_inf_durosmerc",1,4},
special = { "all_inf_bothan",1,4},

},
imp = {
team = IMP,
units = 20,
reinforcements = 150,
soldier = { "imp_inf_soldier",9, 25},
assault = { "imp_inf_heavy",1,4},
engineer = { "imp_inf_gunner",1,4},
sniper = { "imp_inf_marksman",1,4},
officer = { "imp_inf_heavymelee",1,4},
special = { "imp_inf_jumptrooper",1,4},
},

}



AddUnitClass(IMP, supportstrEmp, 1, 4)
AddUnitClass(ALL, supportstrAll, 1, 4)

if ScriptCB_InMultiplayer() then
SetHeroClass(ALL, herostrAll)
SetHeroClass(IMP, herostrEmp)
else
end



-- Level Stats
ClearWalkers()
AddWalkerType(0, 0) -- 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("SoldierAnimation", 500)
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:MI1\\MI1.lvl", "MI1_conquest")
SetDenseEnvironment("false")


-- Sound Stats

voiceSlow = OpenAudioStream("sound\\global.lvl", "all_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "imp_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "des_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "global_vo_slow", voiceSlow)

voiceQuick = OpenAudioStream("sound\\global.lvl", "all_unit_vo_quick")
AudioStreamAppendSegments("sound\\global.lvl", "imp_unit_vo_quick", voiceQuick)

OpenAudioStream("sound\\global.lvl", "gcw_music")
OpenAudioStream("sound\\tat.lvl", "tat2")
OpenAudioStream("sound\\tat.lvl", "tat2")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")

SetBleedingVoiceOver(ALL, ALL, "all_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(ALL, IMP, "all_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, ALL, "imp_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, IMP, "imp_off_com_report_us_overwhelmed", 1)

SetLowReinforcementsVoiceOver(ALL, ALL, "all_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(ALL, IMP, "all_off_victory_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, IMP, "imp_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, ALL, "imp_off_victory_im", .1, 1)

SetOutOfBoundsVoiceOver(2, "Allleaving")
SetOutOfBoundsVoiceOver(1, "Impleaving")

SetAmbientMusic(ALL, 1.0, "all_tat_amb_start", 0,1)
SetAmbientMusic(ALL, 0.8, "all_tat_amb_middle", 1,1)
SetAmbientMusic(ALL, 0.2, "all_tat_amb_end", 2,1)
SetAmbientMusic(IMP, 1.0, "imp_tat_amb_start", 0,1)
SetAmbientMusic(IMP, 0.8, "imp_tat_amb_middle", 1,1)
SetAmbientMusic(IMP, 0.2, "imp_tat_amb_end", 2,1)

SetVictoryMusic(ALL, "all_tat_amb_victory")
SetDefeatMusic (ALL, "all_tat_amb_defeat")
SetVictoryMusic(IMP, "imp_tat_amb_victory")
SetDefeatMusic (IMP, "imp_tat_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
--Tat2 Mos Eisley
AddCameraShot(0.173623, -0.037013, -0.962489, -0.205184, -231.336563, 3.800790, 137.311600);

end
Mission.req:
Hidden/Spoiler:
ucft
{
REQN
{
"config"
"ingame_movies"
}

REQN
{
"script"
"setup_teams"
"gametype_conquest"
"gametype_capture"
"Objective"
"MultiObjectiveContainer"
"ObjectiveCTF"
"ObjectiveAssault"
"ObjectiveSpaceAssault"
"ObjectiveConquest"
"ObjectiveTDM"
"ObjectiveOneFlagCTF"
"SoundEvent_ctf"
"ObjectiveGoto"
"LinkedShields"
"LinkedDestroyables"
"LinkedTurrets"
"Ambush"
"PlayMovieWithTransition"
"AIHeroSupport"
"TFURandom"
}

REQN
{
"lvl"
"MI1g_con"
"MI1c_con"
"MI11_con"
}
}
mi11_con.req:
Hidden/Spoiler:
ucft
{
REQN
{

"config"
"cor_movies"

}

REQN
{
"script"
"MI11_con"
}
}
Maybe I just am too frustrated to see the errors, I don't know. Help is appreciated
User avatar
Maveritchell
Jedi Admin
Jedi Admin
Posts: 7366
Joined: Mon Aug 21, 2006 11:03 pm

Re: Trouble adding the Dark Times

Post by Maveritchell »

It's not ended, because the "end" you have at the end of the ScriptPostLoad only closes out the "if" statement right above it. Here's what I said in the tutorial, with some emphasis added:
Proceed down towards the end of the ScriptPostLoad section (before "end"). This is essentially just how you set up hero support (and as such is covered in more detail in archer's tutorial), but note that you will need to add the hero support like this:
Hidden/Spoiler:
[code]if not ScriptCB_InMultiplayer() then
herosupport = AIHeroSupport:New{AIATTHeroHealth = 4000, AIDEFHeroHealth = 4000, gameMode = "NonConquest",}
herosupport:SetHeroClass(ALL, herostrAll)
herosupport:SetHeroClass(IMP, herostrEmp)
herosupport:AddSpawnCP("CP1","CP1SpawnPath")
herosupport:AddSpawnCP("CP2","CP2SpawnPath")
herosupport:AddSpawnCP("CP3","CP3SpawnPath")
herosupport:AddSpawnCP("CP4","CP4SpawnPath")
herosupport:AddSpawnCP("CP5","CP5SpawnPath")
herosupport:AddSpawnCP("CP6","CP6SpawnPath")
herosupport:Start()
else
end [/code]
This is part of what makes sure AI heroes don't show up (and mess up) multiplayer. Note also that you're redefining your CPs here as well as their spawnpaths.
You need a second "end" at the end.
User avatar
StarkillerMarek
Rebel Colonel
Rebel Colonel
Posts: 611
Joined: Wed Aug 12, 2009 4:42 pm
Location: I may be back.

Re: Trouble adding the Dark Times

Post by StarkillerMarek »

Ok, it works now, thanks. The heroes do not spawn, though.
User avatar
Maveritchell
Jedi Admin
Jedi Admin
Posts: 7366
Joined: Mon Aug 21, 2006 11:03 pm

Re: Trouble adding the Dark Times

Post by Maveritchell »

StarkillerMarek wrote:Ok, it works now, thanks. The heroes do not spawn, though.
Are you getting hero support units available? Are you sure you entered the spawn path names correctly?
User avatar
StarkillerMarek
Rebel Colonel
Rebel Colonel
Posts: 611
Joined: Wed Aug 12, 2009 4:42 pm
Location: I may be back.

Re: Trouble adding the Dark Times

Post by StarkillerMarek »

I am getting the hero support units, and the spawn path names should be correct since I copied them from my galactic civil war lua, and the hero support works with that.
User avatar
Maveritchell
Jedi Admin
Jedi Admin
Posts: 7366
Joined: Mon Aug 21, 2006 11:03 pm

Re: Trouble adding the Dark Times

Post by Maveritchell »

You have parentheses around herostrAll and herostrEmp in the HeroSupport setup. You should not.
User avatar
StarkillerMarek
Rebel Colonel
Rebel Colonel
Posts: 611
Joined: Wed Aug 12, 2009 4:42 pm
Location: I may be back.

Re: Trouble adding the Dark Times

Post by StarkillerMarek »

Maveritchell wrote:You have parentheses around herostrAll and herostrEmp in the HeroSupport setup. You should not.
You mean quotation marks? I removed them and the heroes do now show up, so thanks.


However, I tried to add CTF modes to all eras, and now my map name or description does not show up in the menu. Also, when I try to play CTF on any era, I get a FATAL error. I have added game modes manually in the past, so I don't know what could be wrong. I added a new game mode in ZE called CTF, and new layer called CTF, and set them up properly. I added all the required flag related stuff.

My addme lua may be to blame for the missing name and description:
Hidden/Spoiler:
--Search through the missionlist to find a map that matches mapName,
--then insert the new flags into said entry.
--Use this when you know the map already exists, but this content patch is just
--adding new gamemodes (otherwise you should just add whole new entries to the missionlist)
function AddNewGameModes(missionList, mapName, newFlags)
for i, mission in missionList do
if mission.mapluafile == mapName then
for flag, value in pairs(newFlags) do
mission[flag] = value
end
end
end
end

ReadDataFile("..\\..\\addon\\BDT\\data\\_LVL_PC\\dtshell.lvl")


--insert totally new maps here:
local sp_n = 0
local mp_n = 0
sp_n = table.getn(sp_missionselect_listbox_contents)

sp_missionselect_listbox_contents[sp_n+1] = { red = 0, blue = 255, green = 100, isModLevel = 1, mapluafile = "MI1%s_%s", era_1 = 1, era_g = 1, era_c = 1, mode_con_1 = 1, mode_con_g = 1, mode_con_c = 1, mode_ctf_1 = 1, mode_ctf_c = 1, mode_ctf_g = 1, change = {
era_1 = { name="Dark Times", icon2="darktimes_icon" },
},}
mp_n = table.getn(mp_missionselect_listbox_contents)
mp_missionselect_listbox_contents[mp_n+1] = sp_missionselect_listbox_contents[sp_n+1]

-- associate this mission name with the current downloadable content directory
-- (this tells the engine which maps are downloaded, so you need to include all new mission lua's here)
-- first arg: mapluafile from above
-- second arg: mission script name
-- third arg: level memory modifier. the arg to LuaScript.cpp: DEFAULT_MODEL_MEMORY_PLUS(x)

AddDownloadableContent("MI1","MI1g_con",4)
AddDownloadableContent("MI1","MI1c_con",4)
AddDownloadableContent("MI1","MI11_con",4)
AddDownLoadableContent("MI1","MI1g_ctf",4)
AddDownLoadableContent("MI1","MI1c_ctf",4)
AddDownLoadableContent("MI1","MI11_ctf",4)

-- all done
newEntry = nil
n = nil

-- Now load our core.lvl into the shell to add our localize keys
ReadDataFile("..\\..\\addon\\MI1\\data\\_LVL_PC\\core.lvl")
Here is galactic civil war lua ctf:
Hidden/Spoiler:
--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

ScriptCB_DoFile("setup_teams")
ScriptCB_DoFile("ObjectiveCTF")
ScriptCB_DoFile("AIHeroSupport")

-- Empire Attacking (attacker is always #1)
local ALL = 2
local IMP = 1
-- These variables do not change
local ATT = 1
local DEF = 2

function ScriptPostLoad()
--Switch the flag appearance(s) for CW vs GCW
SetProperty("ctf_flag1", "GeometryName", "com_icon_alliance_flag")
SetProperty("ctf_flag1", "CarriedGeometryName", "com_icon_alliance_flag_carried")

SetProperty("ctf_flag2", "GeometryName", "com_icon_imperial_flag")
SetProperty("ctf_flag2", "CarriedGeometryName", "com_icon_imperial_flag_carried")

SetProperty ("flag2_effect","Team",2) -- Kludge because the effect objects are shared with 1flag
SetProperty ("flag1_effect","Team",1) -- Kludge because the effect objects are shared with 1flag

--This is all the actual ctf objective setup
ctf = ObjectiveCTF:New{teamATT = ATT, teamDEF = DEF, captureLimit = 5, textATT = "game.modes.CTF", textDEF = "game.modes.CTF2", hideCPs = true, multiplayerRules = true}
ctf:AddFlag{name = "ctf_flag1", homeRegion = "flag1_home", captureRegion = "flag2_home",
capRegionMarker = "hud_objective_icon_circle", capRegionMarkerScale = 3.0,
icon = "", mapIcon = "flag_icon", mapIconScale = 3.0}
ctf:AddFlag{name = "ctf_flag2", homeRegion = "flag2_home", captureRegion = "flag1_home",
capRegionMarker = "hud_objective_icon_circle", capRegionMarkerScale = 3.0,
icon = "", mapIcon = "flag_icon", mapIconScale = 3.0}

SoundEvent_SetupTeams( 2, 'imp', 1, 'all' )

ctf:Start()


herosupport = AIHeroSupport:New{AIATTHeroHealth = 5000, AIDEFHeroHealth = 3000, gameMode = "CTF",}
herosupport:SetHeroClass(IMP, "imp_inf_Darth_Vader")
herosupport:SetHeroClass(ALL, "all_hero_luke_pilot")
herosupport:AddSpawnCP("CP1","CP1_SPAWN")
herosupport:AddSpawnCP("CP2","CP2_SPAWN")
herosupport:AddSpawnCP("CP3","CP3_SPAWN")
herosupport:AddSpawnCP("CP4","CP4_SPAWN")
herosupport:AddSpawnCP("CP5","CP5_SPAWN")

herosupport: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("dc:Load\\common.lvl")



ReadDataFile("ingame.lvl")



SetMaxFlyHeight(40)
SetMaxPlayerFlyHeight(40)


SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",100) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",1200) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",1250) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",1250) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",1200) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",12000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",200) -- should be ~1x #combo


ReadDataFile("sound\\tat.lvl;tat2gcw")
ReadDataFile("dc:SIDE\\vad.lvl","imp_inf_Darth_Vader")
ReadDataFile("SIDE\\all.lvl",
"all_inf_rifleman_jungle",
"all_inf_rocketeer_jungle",
"all_inf_sniper_jungle",
"all_inf_engineer",
"all_inf_officer",
"all_inf_wookiee",
"all_hero_luke_pilot")

ReadDataFile("SIDE\\imp.lvl",
"imp_inf_rifleman",
"imp_inf_rocketeer",
"imp_inf_engineer",
"imp_inf_sniper",
"imp_inf_officer",
"imp_inf_dark_trooper",
"imp_fly_destroyer_dome")

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


SetupTeams{
all = {
team = ALL,
units = 20,
reinforcements = 150,
soldier = { "all_inf_rifleman_jungle",9, 25},
assault = { "all_inf_rocketeer_jungle",1,4},
engineer = { "all_inf_engineer",1,4},
sniper = { "all_inf_sniper_jungle",1,4},
officer = { "all_inf_officer",1,4},
special = { "all_inf_wookiee",1,4},

},
imp = {
team = IMP,
units = 20,
reinforcements = 150,
soldier = { "imp_inf_rifleman",9, 25},
assault = { "imp_inf_rocketeer",1,4},
engineer = { "imp_inf_engineer",1,4},
sniper = { "imp_inf_sniper",1,4},
officer = { "imp_inf_officer",1,4},
special = { "imp_inf_dark_trooper",1,4},
},
}


-- Level Stats
ClearWalkers()
AddWalkerType(0, 0) -- 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("SoldierAnimation", 500)
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:MI1\\MI1.lvl", "MI1_ctf")
SetDenseEnvironment("false")


-- Sound Stats

voiceSlow = OpenAudioStream("sound\\global.lvl", "all_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "imp_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "des_unit_vo_slow", voiceSlow)
AudioStreamAppendSegments("sound\\global.lvl", "global_vo_slow", voiceSlow)

voiceQuick = OpenAudioStream("sound\\global.lvl", "all_unit_vo_quick")
AudioStreamAppendSegments("sound\\global.lvl", "imp_unit_vo_quick", voiceQuick)

OpenAudioStream("sound\\global.lvl", "gcw_music")
OpenAudioStream("sound\\tat.lvl", "tat2")
OpenAudioStream("sound\\tat.lvl", "tat2")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")

SetBleedingVoiceOver(ALL, ALL, "all_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(ALL, IMP, "all_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, ALL, "imp_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, IMP, "imp_off_com_report_us_overwhelmed", 1)

SetLowReinforcementsVoiceOver(ALL, ALL, "all_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(ALL, IMP, "all_off_victory_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, IMP, "imp_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, ALL, "imp_off_victory_im", .1, 1)

SetOutOfBoundsVoiceOver(2, "Allleaving")
SetOutOfBoundsVoiceOver(1, "Impleaving")

SetAmbientMusic(ALL, 1.0, "all_tat_amb_start", 0,1)
SetAmbientMusic(ALL, 0.8, "all_tat_amb_middle", 1,1)
SetAmbientMusic(ALL, 0.2, "all_tat_amb_end", 2,1)
SetAmbientMusic(IMP, 1.0, "imp_tat_amb_start", 0,1)
SetAmbientMusic(IMP, 0.8, "imp_tat_amb_middle", 1,1)
SetAmbientMusic(IMP, 0.2, "imp_tat_amb_end", 2,1)

SetVictoryMusic(ALL, "all_tat_amb_victory")
SetDefeatMusic (ALL, "all_tat_amb_defeat")
SetVictoryMusic(IMP, "imp_tat_amb_victory")
SetDefeatMusic (IMP, "imp_tat_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
--Tat2 Mos Eisley
AddCameraShot(0.173623, -0.037013, -0.962489, -0.205184, -231.336563, 3.800790, 137.311600);

end
As I said befroe, I have succeded in doing this in the past, so I have no idea what could be wrong.
User avatar
Maveritchell
Jedi Admin
Jedi Admin
Posts: 7366
Joined: Mon Aug 21, 2006 11:03 pm

Re: Trouble adding the Dark Times

Post by Maveritchell »

Look some more; it doesn't look like your addme.lua has a problem, and a fatal error is usually only caused by a failure to add the correct script data. Make sure that the script "MI11_ctf" exists, and that it is loaded in the mission.req, and that it has a correct MI11_ctf.req file.

I would point out that your script you posted is also not a Dark Times script (although you may just not have added that part yet), but regardless the problem does not look like it is currently in either of the two scripts you posted.
User avatar
StarkillerMarek
Rebel Colonel
Rebel Colonel
Posts: 611
Joined: Wed Aug 12, 2009 4:42 pm
Location: I may be back.

Re: Trouble adding the Dark Times

Post by StarkillerMarek »

The script I posted before is not meant to be a Dark Times script. I think this problem is completely unrelated to the Dark Times, as both GCW, and CW, as well as the Dark Times CTF modes crash.



The strange thing is, in the menu, the map name shows up as MI1%_%, or something like that.
Post Reply