These should be all of the necessary files:
pcf.req -
Hidden/Spoiler:
[code]ucft
{
REQN
{
"str"
"align=2048"
"pcf_vo_slow" // Added back as per Marth's post
}
REQN
{
"lvl"
"pcfcw"
"pcfgcw"
}
}[/code]
{
REQN
{
"str"
"align=2048"
"pcf_vo_slow" // Added back as per Marth's post
}
REQN
{
"lvl"
"pcfcw"
"pcfgcw"
}
}[/code]
Hidden/Spoiler:
[code]ucft
{
REQN
{
"bnk"
"align=2048"
"pcf"
"pcfgcw"
}
REQN
{
"config"
"pcfgcw"
"pcf"
"pcf_vo"
"pcfcw_music_config"
"pcfcw_music"
"gar_unit"
}
}[/code]
{
REQN
{
"bnk"
"align=2048"
"pcf"
"pcfgcw"
}
REQN
{
"config"
"pcfgcw"
"pcf"
"pcf_vo"
"pcfcw_music_config"
"pcfcw_music"
"gar_unit"
}
}[/code]
Hidden/Spoiler:
[code]// ----------------------------------------------- Hero Battlechatter VO -----------------------------------------------------
SoundStreamProperties()
{
Name("hero_rex_spawn");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM001", 200.0, 10.0, 3.0); // The name's Rex, but you'll call me Captain or Sir.
Segment("REXCOM002", 200.0, 10.0, 3.0); // In my book, experience outranks everything.
}
}
SoundStreamProperties()
{
Name("hero_rex_AcquiredTarget");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM003", 200.0, 10.0, 3.0); // Go go go!
Segment("REXCOM004", 200.0, 10.0, 3.0); // Incoming!
Segment("REXCOM005", 200.0, 10.0, 3.0); // This'll be quick.
}
}
SoundStreamProperties()
{
Name("hero_rex_KillingSpree4");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM006", 200.0, 10.0, 3.0); // Nothing deadlier than a Clone behind the trigger.
Segment("REXCOM007", 200.0, 10.0, 3.0); // This is what Clones do.
Segment("REXCOM008", 200.0, 10.0, 3.0); // Just like in Basic Training.
Segment("REXCOM009", 200.0, 10.0, 3.0); // Combat is a Clone's natural element.
}
}
SoundStreamProperties()
{
Name("hero_rex_exhausted");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM010", 200.0, 10.0, 3.0); // Eh, that's just great.
}
}[/code]
SoundStreamProperties()
{
Name("hero_rex_spawn");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM001", 200.0, 10.0, 3.0); // The name's Rex, but you'll call me Captain or Sir.
Segment("REXCOM002", 200.0, 10.0, 3.0); // In my book, experience outranks everything.
}
}
SoundStreamProperties()
{
Name("hero_rex_AcquiredTarget");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM003", 200.0, 10.0, 3.0); // Go go go!
Segment("REXCOM004", 200.0, 10.0, 3.0); // Incoming!
Segment("REXCOM005", 200.0, 10.0, 3.0); // This'll be quick.
}
}
SoundStreamProperties()
{
Name("hero_rex_KillingSpree4");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM006", 200.0, 10.0, 3.0); // Nothing deadlier than a Clone behind the trigger.
Segment("REXCOM007", 200.0, 10.0, 3.0); // This is what Clones do.
Segment("REXCOM008", 200.0, 10.0, 3.0); // Just like in Basic Training.
Segment("REXCOM009", 200.0, 10.0, 3.0); // Combat is a Clone's natural element.
}
}
SoundStreamProperties()
{
Name("hero_rex_exhausted");
Group("hero_vo");
Inherit("Hero_battle_chatter_template");
Stream("pcf_vo_slow");
SegmentList()
{
Segment("REXCOM010", 200.0, 10.0, 3.0); // Eh, that's just great.
}
}[/code]
Hidden/Spoiler:
[code]// ----------------------------------------------- Hero Battlechatter VO -----------------------------------------------------
// The name's Rex, but you'll call me Captain or Sir.
streams\REXCOM001.wav
// In my book, experience outranks everything.
streams\REXCOM002.wav
// Go go go!
streams\REXCOM003.wav
// Incoming!
streams\REXCOM004.wav
// This'll be quick.
streams\REXCOM005.wav
// Nothing deadlier than a Clone behind the trigger.
streams\REXCOM006.wav
// This is what Clones do.
streams\REXCOM007.wav
// Just like in Basic Training.
streams\REXCOM008.wav
// Combat is a Clone's natural element.
streams\REXCOM009.wav
// Eh, that's just great.
streams\REXCOM010.wav[/code]
// The name's Rex, but you'll call me Captain or Sir.
streams\REXCOM001.wav
// In my book, experience outranks everything.
streams\REXCOM002.wav
// Go go go!
streams\REXCOM003.wav
// Incoming!
streams\REXCOM004.wav
// This'll be quick.
streams\REXCOM005.wav
// Nothing deadlier than a Clone behind the trigger.
streams\REXCOM006.wav
// This is what Clones do.
streams\REXCOM007.wav
// Just like in Basic Training.
streams\REXCOM008.wav
// Combat is a Clone's natural element.
streams\REXCOM009.wav
// Eh, that's just great.
streams\REXCOM010.wav[/code]
Hidden/Spoiler:
[code][GameObjectClass]
ClassParent = "com_hero_default"
GeometryName = "rep_inf_REX_Clone_Trooper.msh"
[Properties]
FoleyFXClass = "rep_inf_trooper"
UnitType = "Trooper"
GeometryName = "rep_inf_REX_Clone_Trooper"
GeometryLowRes = "rep_inf_arctrooper_low1"
SkeletonName = "jango"
FirstPerson = "rep\reparc;rep_1st_arctrooper"
ClothODF = "rep_inf_REX_Clone_Trooper_cape"
AnimationName = "jango"
AnimatedAddon = "left_gun"
GeometryAddon = "weap_inf_dc17pistol" // the pistols meshname
AddonAttachJoint = "hp_weapons_1"
WEAPONSECTION = 1
WeaponName1 = "ant_weap_hero_rex_pistol"
WeaponAmmo1 = 0
WEAPONSECTION = 2
WeaponName2 = "rep_weap_inf_thermaldetonator"
WeaponAmmo2 = 3
WeaponChannel2 = 1
WEAPONSECTION = 3
WeaponName3 = "ant_weap_inf_timebomb"
WeaponAmmo3 = 2
WeaponChannel3 = 1
//SOUND
HurtSound = "rep_inf_com_chatter_wound"
DeathSound = "rep_inf_com_chatter_death"
AcquiredTargetSound = ""
HidingSound = ""
ApproachingTargetSound = ""
FleeSound = ""
PreparingForDamageSound = ""
HeardEnemySound = ""
SCFieldMoveOutSound = ""
SCFieldHoldSound = ""
SCFieldFollowSound = ""
SCDriverGetInSound = ""
SCDriverGetOutSound = ""
SCPassengerMoveOutSound = ""
SCPassengerStopSound = ""
SCPassengerGetInSound = ""
SCPassengerGetOutSound = ""
SCGunnerAllClearSound = ""
SCGunnerSteadySound = ""
SCGunnerGetInSound = ""
SCGunnerGetOutSound = ""
SCResponseYessirSound = ""
SCResponseNosirSound = ""
AISCFieldMoveOutSound = ""
AISCFieldHoldSound = ""
AISCFieldFollowSound = ""
AISCDriverGetInSound = ""
AISCDriverGetOutSound = ""
AISCPassengerMoveOutSound = ""
AISCPassengerStopSound = ""
AISCPassengerGetInSound = ""
AISCPassengerGetOutSound = ""
AISCGunnerAllClearSound = ""
AISCGunnerSteadySound = ""
AISCGunnerGetInSound = ""
AISCGunnerGetOutSound = ""
AISCResponseYessirSound = ""
AISCResponseNosirSound = ""
SndHeroSelectable = ""
SndHeroSpawned = "hero_rex_spawn"
SndHeroDefeated = "hero_rex_exhausted"
SndHeroKiller = "hero_rex_exhausted"
VOSound = "rep_off_response_hero_command SC_Follow"
VOSound = "rep_off_response_hero_command SC_StopFollow"
VOSound = "rep_off_response_hero_command SC_VehicleWaitUp"
VOSound = "rep_off_response_hero_command SC_GetIn"
VOSound = "rep_off_response_hero_command SC_GetOut"
//VOSound = "rex_hero_pc_com_hostile SpottedVO"
//VOSound = "rex_hero_pc_com_mechanic NeedRepairVO"
//VOSound = "rex_hero_pc_com_transport NeedPickupVO"
//VOSound = "rex_hero_pc_com_backup NeedBackupVO"
//VOSound = "rex_hero_pc_com_clear_area AttackPositionVO"
//VOSound = "rex_hero_pc_com_defend DefendPositionVO"
//VOSound = "rex_hero_pc_com_hostile_inVehicle SpottedVO +InVehicle"
//VOSound = "rex_hero_pc_com_mechanic_inVehicle NeedRepairVO +InVehicle"
//VOSound = "rex_hero_pc_com_transport_inVehicle NeedPickupVO +InVehicle"
//VOSound = "rex_hero_pc_com_backup_inVehicle NeedBackupVO +InVehicle"
//VOSound = "rex_hero_pc_com_clear_area_inVehicle AttackPositionVO +InVehicle"
//VOSound = "rex_hero_pc_com_defend_inVehicle DefendPositionVO +InVehicle"
VOSound = "hero_rex_AcquiredTarget AcquiredTarget"
VOSound = "hero_rex_KillingSpree4 KillingSpree4"
VOUnitType = 121
SoldierMusic = "rep_hero_Rex_lp"[/code]
ClassParent = "com_hero_default"
GeometryName = "rep_inf_REX_Clone_Trooper.msh"
[Properties]
FoleyFXClass = "rep_inf_trooper"
UnitType = "Trooper"
GeometryName = "rep_inf_REX_Clone_Trooper"
GeometryLowRes = "rep_inf_arctrooper_low1"
SkeletonName = "jango"
FirstPerson = "rep\reparc;rep_1st_arctrooper"
ClothODF = "rep_inf_REX_Clone_Trooper_cape"
AnimationName = "jango"
AnimatedAddon = "left_gun"
GeometryAddon = "weap_inf_dc17pistol" // the pistols meshname
AddonAttachJoint = "hp_weapons_1"
WEAPONSECTION = 1
WeaponName1 = "ant_weap_hero_rex_pistol"
WeaponAmmo1 = 0
WEAPONSECTION = 2
WeaponName2 = "rep_weap_inf_thermaldetonator"
WeaponAmmo2 = 3
WeaponChannel2 = 1
WEAPONSECTION = 3
WeaponName3 = "ant_weap_inf_timebomb"
WeaponAmmo3 = 2
WeaponChannel3 = 1
//SOUND
HurtSound = "rep_inf_com_chatter_wound"
DeathSound = "rep_inf_com_chatter_death"
AcquiredTargetSound = ""
HidingSound = ""
ApproachingTargetSound = ""
FleeSound = ""
PreparingForDamageSound = ""
HeardEnemySound = ""
SCFieldMoveOutSound = ""
SCFieldHoldSound = ""
SCFieldFollowSound = ""
SCDriverGetInSound = ""
SCDriverGetOutSound = ""
SCPassengerMoveOutSound = ""
SCPassengerStopSound = ""
SCPassengerGetInSound = ""
SCPassengerGetOutSound = ""
SCGunnerAllClearSound = ""
SCGunnerSteadySound = ""
SCGunnerGetInSound = ""
SCGunnerGetOutSound = ""
SCResponseYessirSound = ""
SCResponseNosirSound = ""
AISCFieldMoveOutSound = ""
AISCFieldHoldSound = ""
AISCFieldFollowSound = ""
AISCDriverGetInSound = ""
AISCDriverGetOutSound = ""
AISCPassengerMoveOutSound = ""
AISCPassengerStopSound = ""
AISCPassengerGetInSound = ""
AISCPassengerGetOutSound = ""
AISCGunnerAllClearSound = ""
AISCGunnerSteadySound = ""
AISCGunnerGetInSound = ""
AISCGunnerGetOutSound = ""
AISCResponseYessirSound = ""
AISCResponseNosirSound = ""
SndHeroSelectable = ""
SndHeroSpawned = "hero_rex_spawn"
SndHeroDefeated = "hero_rex_exhausted"
SndHeroKiller = "hero_rex_exhausted"
VOSound = "rep_off_response_hero_command SC_Follow"
VOSound = "rep_off_response_hero_command SC_StopFollow"
VOSound = "rep_off_response_hero_command SC_VehicleWaitUp"
VOSound = "rep_off_response_hero_command SC_GetIn"
VOSound = "rep_off_response_hero_command SC_GetOut"
//VOSound = "rex_hero_pc_com_hostile SpottedVO"
//VOSound = "rex_hero_pc_com_mechanic NeedRepairVO"
//VOSound = "rex_hero_pc_com_transport NeedPickupVO"
//VOSound = "rex_hero_pc_com_backup NeedBackupVO"
//VOSound = "rex_hero_pc_com_clear_area AttackPositionVO"
//VOSound = "rex_hero_pc_com_defend DefendPositionVO"
//VOSound = "rex_hero_pc_com_hostile_inVehicle SpottedVO +InVehicle"
//VOSound = "rex_hero_pc_com_mechanic_inVehicle NeedRepairVO +InVehicle"
//VOSound = "rex_hero_pc_com_transport_inVehicle NeedPickupVO +InVehicle"
//VOSound = "rex_hero_pc_com_backup_inVehicle NeedBackupVO +InVehicle"
//VOSound = "rex_hero_pc_com_clear_area_inVehicle AttackPositionVO +InVehicle"
//VOSound = "rex_hero_pc_com_defend_inVehicle DefendPositionVO +InVehicle"
VOSound = "hero_rex_AcquiredTarget AcquiredTarget"
VOSound = "hero_rex_KillingSpree4 KillingSpree4"
VOUnitType = 121
SoldierMusic = "rep_hero_Rex_lp"[/code]
Hidden/Spoiler:
[code] --
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
ScriptCB_DoFile("setup_teams")
ScriptCB_DoFile("ObjectiveConquest")
-- Empire Attacking (attacker is always #1)
REP = 2;
IMP = 1;
-- These variables do not change
ATT = 1;
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()
SetProperty("cp1", "Team", "1")
SetProperty("cp2", "Team", "2")
SetProperty("cp3", "Team", "2")
SetProperty("cp4", "Team", "2")
SetProperty("cp5", "Team", "1")
SetProperty("cp6", "Team", "1")
DisableBarriers("camp")
SetAIDamageThreshold("Comp1", 0 )
SetAIDamageThreshold("Comp2", 0 )
SetAIDamageThreshold("Comp3", 0 )
SetAIDamageThreshold("Comp4", 0 )
SetAIDamageThreshold("Comp5", 0 )
SetAIDamageThreshold("Comp6", 0 )
SetAIDamageThreshold("Comp7", 0 )
SetAIDamageThreshold("Comp8", 0 )
SetAIDamageThreshold("Comp9", 0 )
SetAIDamageThreshold("Comp10", 0 )
SetProperty("Kam_Bldg_Podroom_Door32", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door33", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door32", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door34", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door35", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door27", "Islocked", 0)
SetProperty("Kam_Bldg_Podroom_Door28", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door36", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door20", "Islocked", 0)
UnblockPlanningGraphArcs("connection71")
--Objective1
UnblockPlanningGraphArcs("connection85")
UnblockPlanningGraphArcs("connection48")
UnblockPlanningGraphArcs("connection63")
UnblockPlanningGraphArcs("connection59")
UnblockPlanningGraphArcs("close")
UnblockPlanningGraphArcs("open")
DisableBarriers("frog")
DisableBarriers("close")
DisableBarriers("open")
--blocking Locked Doors
UnblockPlanningGraphArcs("connection194");
UnblockPlanningGraphArcs("connection200");
UnblockPlanningGraphArcs("connection118");
DisableBarriers("FRONTDOOR2-3");
DisableBarriers("FRONTDOOR2-1");
DisableBarriers("FRONTDOOR2-2");
--Lower cloning facility
UnblockPlanningGraphArcs("connection10")
UnblockPlanningGraphArcs("connection159")
UnblockPlanningGraphArcs("connection31")
DisableBarriers("FRONTDOOR1-3")
DisableBarriers("FRONTDOOR1-1")
DisableBarriers("FRONTDOOR1-2")
--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 = "cp6"}
--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:AddCommandPost(cp6)
conquest:Start()
EnableSPHeroRules()
SetProperty("cp2", "spawnpath", "cp2_spawn")
SetProperty("cp2", "captureregion", "cp2_capture")
end
--START BRIDGEWORK!
-- OPEN
function ScriptInit()
-- Designers, these two lines *MUST* be first!
SetPS2ModelMemory(3600000)
ReadDataFile("ingame.lvl")
ReadDataFile("dc:sound\\pcf.lvl;pcfgcw")
ReadDataFile("sound\\kam.lvl;kam1cross")
--SetMaxFlyHeight(43)
--SetMaxPlayerFlyHeight (43)
ReadDataFile("SIDE\\rep.lvl",
"rep_inf_ep2_rifleman",
"rep_inf_ep2_rocketeer",
"rep_inf_ep2_sniper",
"rep_inf_ep2_engineer",
"rep_inf_ep2_jettrooper",
"rep_inf_ep3_officer")
ReadDataFile("dc:SIDE\\ant.lvl",
"ant_inf_rifleman",
"ant_inf_rocketeer",
"ant_inf_sniper",
"ant_inf_engineer",
"ant_inf_jettrooper",
"ant_inf_officer",
"rep_hero_rex")
ReadDataFile("SIDE\\imp.lvl",
"imp_inf_rifleman",
"imp_inf_rocketeer",
"imp_inf_engineer",
"imp_inf_sniper",
"imp_inf_officer",
"imp_inf_dark_trooper",
"imp_hero_bobafett")
ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_chaingun_roof",
"tur_weap_built_gunturret")
-- Level Stats
ClearWalkers()
-- AddWalkerType(0, 0) -- 8 droidekas (special case: 0 leg pairs)
-- AddWalkerType(1, 3) -- 8 droidekas (special case: 0 leg pairs)
-- AddWalkerType(2, 0) -- 2 spider walkers with 2 leg pairs each
-- AddWalkerType(3, 0) -- 2 attes with 3 leg pairs each
SetMemoryPoolSize ("EntityCloth", 33)
SetMemoryPoolSize("ClothData",50)
SetMemoryPoolSize ("EntityLight", 64)
SetMemoryPoolSize ("Obstacle", 800)
SetMemoryPoolSize("EntitySoundStream", 3)
SetMemoryPoolSize ("SoundSpaceRegion", 36)
SetMemoryPoolSize("EntitySoundStatic", 85)
SetMemoryPoolSize ("Weapon", 260)
SetupTeams{
rep = {
team = REP,
units = 32,
reinforcements = 150,
soldier = { "ant_inf_rifleman",9, 25},
assault = { "ant_inf_rocketeer",1, 4},
engineer = { "ant_inf_engineer",1, 4},
sniper = { "ant_inf_sniper",1, 4},
officer = { "ant_inf_officer",1, 4},
special = { "ant_inf_jettrooper",1,4},
},
}
SetupTeams{
imp = {
team = IMP,
units = 32,
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},
},
}
SetHeroClass(REP, "rep_hero_rex")
SetHeroClass(IMP, "imp_hero_bobafett")
SetSpawnDelay(10.0, 0.25)
-- AddDeathRegion("deathregion")
ReadDataFile("KAM\\kam1.lvl", "kamino1_conquest")
SetMemoryPoolSize("EntityFlyer", 6)
SetDenseEnvironment("false")
SetMinFlyHeight(60)
SetAllowBlindJetJumps(0)
SetMaxFlyHeight(102)
SetMaxPlayerFlyHeight(102)
--SetStayInTurrets(1)
-- Movies
-- SetVictoryMovie(ALL, "all_end_victory")
-- SetDefeatMovie(ALL, "imp_end_victory")
-- SetVictoryMovie(IMP, "imp_end_victory")
-- SetDefeatMovie(IMP, "all_end_victory")
-- Sound
voiceSlow = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "imp_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", "imp_unit_vo_quick", voiceQuick)
OpenAudioStream("dc:sound\\pcf.lvl", "pcf_vo_slow")
OpenAudioStream("sound\\global.lvl", "cw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\kam.lvl", "kam1")
OpenAudioStream("sound\\kam.lvl", "kam1")
-- OpenAudioStream("sound\\mus.lvl", "kamino1_emt")
SetBleedingVoiceOver(REP, REP, "rep_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(REP, IMP, "rep_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, REP, "imp_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, IMP, "imp_off_com_report_us_overwhelmed", 1)
SetLowReinforcementsVoiceOver(REP, REP, "rep_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(REP, IMP, "rep_off_victory_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, IMP, "imp_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, REP, "imp_off_victory_im", .1, 1)
SetOutOfBoundsVoiceOver(2, "repleaving")
SetOutOfBoundsVoiceOver(1, "impleaving")
SetAmbientMusic(REP, 1.0, "rep_kam_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_kam_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_kam_amb_end", 2,1)
SetAmbientMusic(IMP, 1.0, "cis_kam_amb_start", 0,1)
SetAmbientMusic(IMP, 0.8, "cis_kam_amb_middle", 1,1)
SetAmbientMusic(IMP, 0.2, "cis_kam_amb_end", 2,1)
SetVictoryMusic(REP, "rep_kam_amb_victory")
SetDefeatMusic (REP, "rep_kam_amb_defeat")
SetVictoryMusic(IMP, "cis_kam_amb_victory")
SetDefeatMusic (IMP, "cis_kam_amb_defeat")
SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
-- SetSoundEffect("BirdScatter", "birdsFlySeq1")
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")
SetAttackingTeam(ATT)
AddDeathRegion("deathregion")
AddCameraShot(0.564619, -0.121047, 0.798288, 0.171142, 68.198814, 79.137611, 110.850922);
AddCameraShot(-0.281100, 0.066889, -0.931340, -0.221616, 10.076019, 82.958336, -26.261774);
AddCameraShot(0.209553, -0.039036, -0.960495, -0.178923, 92.558563, 58.820618, 130.675919);
AddCameraShot(0.968794, 0.154227, 0.191627, -0.030506, -173.914413, 69.858940, 52.532421);
AddCameraShot(0.744389, 0.123539, 0.647364, -0.107437, 97.475639, 53.216236, 76.477089);
AddCameraShot(-0.344152, 0.086702, -0.906575, -0.228393, 95.062233, 105.285820, -37.661552);
end[/code]
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
ScriptCB_DoFile("setup_teams")
ScriptCB_DoFile("ObjectiveConquest")
-- Empire Attacking (attacker is always #1)
REP = 2;
IMP = 1;
-- These variables do not change
ATT = 1;
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()
SetProperty("cp1", "Team", "1")
SetProperty("cp2", "Team", "2")
SetProperty("cp3", "Team", "2")
SetProperty("cp4", "Team", "2")
SetProperty("cp5", "Team", "1")
SetProperty("cp6", "Team", "1")
DisableBarriers("camp")
SetAIDamageThreshold("Comp1", 0 )
SetAIDamageThreshold("Comp2", 0 )
SetAIDamageThreshold("Comp3", 0 )
SetAIDamageThreshold("Comp4", 0 )
SetAIDamageThreshold("Comp5", 0 )
SetAIDamageThreshold("Comp6", 0 )
SetAIDamageThreshold("Comp7", 0 )
SetAIDamageThreshold("Comp8", 0 )
SetAIDamageThreshold("Comp9", 0 )
SetAIDamageThreshold("Comp10", 0 )
SetProperty("Kam_Bldg_Podroom_Door32", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door33", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door32", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door34", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door35", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door27", "Islocked", 0)
SetProperty("Kam_Bldg_Podroom_Door28", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door36", "Islocked", 1)
SetProperty("Kam_Bldg_Podroom_Door20", "Islocked", 0)
UnblockPlanningGraphArcs("connection71")
--Objective1
UnblockPlanningGraphArcs("connection85")
UnblockPlanningGraphArcs("connection48")
UnblockPlanningGraphArcs("connection63")
UnblockPlanningGraphArcs("connection59")
UnblockPlanningGraphArcs("close")
UnblockPlanningGraphArcs("open")
DisableBarriers("frog")
DisableBarriers("close")
DisableBarriers("open")
--blocking Locked Doors
UnblockPlanningGraphArcs("connection194");
UnblockPlanningGraphArcs("connection200");
UnblockPlanningGraphArcs("connection118");
DisableBarriers("FRONTDOOR2-3");
DisableBarriers("FRONTDOOR2-1");
DisableBarriers("FRONTDOOR2-2");
--Lower cloning facility
UnblockPlanningGraphArcs("connection10")
UnblockPlanningGraphArcs("connection159")
UnblockPlanningGraphArcs("connection31")
DisableBarriers("FRONTDOOR1-3")
DisableBarriers("FRONTDOOR1-1")
DisableBarriers("FRONTDOOR1-2")
--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 = "cp6"}
--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:AddCommandPost(cp6)
conquest:Start()
EnableSPHeroRules()
SetProperty("cp2", "spawnpath", "cp2_spawn")
SetProperty("cp2", "captureregion", "cp2_capture")
end
--START BRIDGEWORK!
-- OPEN
function ScriptInit()
-- Designers, these two lines *MUST* be first!
SetPS2ModelMemory(3600000)
ReadDataFile("ingame.lvl")
ReadDataFile("dc:sound\\pcf.lvl;pcfgcw")
ReadDataFile("sound\\kam.lvl;kam1cross")
--SetMaxFlyHeight(43)
--SetMaxPlayerFlyHeight (43)
ReadDataFile("SIDE\\rep.lvl",
"rep_inf_ep2_rifleman",
"rep_inf_ep2_rocketeer",
"rep_inf_ep2_sniper",
"rep_inf_ep2_engineer",
"rep_inf_ep2_jettrooper",
"rep_inf_ep3_officer")
ReadDataFile("dc:SIDE\\ant.lvl",
"ant_inf_rifleman",
"ant_inf_rocketeer",
"ant_inf_sniper",
"ant_inf_engineer",
"ant_inf_jettrooper",
"ant_inf_officer",
"rep_hero_rex")
ReadDataFile("SIDE\\imp.lvl",
"imp_inf_rifleman",
"imp_inf_rocketeer",
"imp_inf_engineer",
"imp_inf_sniper",
"imp_inf_officer",
"imp_inf_dark_trooper",
"imp_hero_bobafett")
ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_chaingun_roof",
"tur_weap_built_gunturret")
-- Level Stats
ClearWalkers()
-- AddWalkerType(0, 0) -- 8 droidekas (special case: 0 leg pairs)
-- AddWalkerType(1, 3) -- 8 droidekas (special case: 0 leg pairs)
-- AddWalkerType(2, 0) -- 2 spider walkers with 2 leg pairs each
-- AddWalkerType(3, 0) -- 2 attes with 3 leg pairs each
SetMemoryPoolSize ("EntityCloth", 33)
SetMemoryPoolSize("ClothData",50)
SetMemoryPoolSize ("EntityLight", 64)
SetMemoryPoolSize ("Obstacle", 800)
SetMemoryPoolSize("EntitySoundStream", 3)
SetMemoryPoolSize ("SoundSpaceRegion", 36)
SetMemoryPoolSize("EntitySoundStatic", 85)
SetMemoryPoolSize ("Weapon", 260)
SetupTeams{
rep = {
team = REP,
units = 32,
reinforcements = 150,
soldier = { "ant_inf_rifleman",9, 25},
assault = { "ant_inf_rocketeer",1, 4},
engineer = { "ant_inf_engineer",1, 4},
sniper = { "ant_inf_sniper",1, 4},
officer = { "ant_inf_officer",1, 4},
special = { "ant_inf_jettrooper",1,4},
},
}
SetupTeams{
imp = {
team = IMP,
units = 32,
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},
},
}
SetHeroClass(REP, "rep_hero_rex")
SetHeroClass(IMP, "imp_hero_bobafett")
SetSpawnDelay(10.0, 0.25)
-- AddDeathRegion("deathregion")
ReadDataFile("KAM\\kam1.lvl", "kamino1_conquest")
SetMemoryPoolSize("EntityFlyer", 6)
SetDenseEnvironment("false")
SetMinFlyHeight(60)
SetAllowBlindJetJumps(0)
SetMaxFlyHeight(102)
SetMaxPlayerFlyHeight(102)
--SetStayInTurrets(1)
-- Movies
-- SetVictoryMovie(ALL, "all_end_victory")
-- SetDefeatMovie(ALL, "imp_end_victory")
-- SetVictoryMovie(IMP, "imp_end_victory")
-- SetDefeatMovie(IMP, "all_end_victory")
-- Sound
voiceSlow = OpenAudioStream("sound\\global.lvl", "rep_unit_vo_slow")
AudioStreamAppendSegments("sound\\global.lvl", "imp_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", "imp_unit_vo_quick", voiceQuick)
OpenAudioStream("dc:sound\\pcf.lvl", "pcf_vo_slow")
OpenAudioStream("sound\\global.lvl", "cw_music")
-- OpenAudioStream("sound\\global.lvl", "global_vo_quick")
-- OpenAudioStream("sound\\global.lvl", "global_vo_slow")
OpenAudioStream("sound\\kam.lvl", "kam1")
OpenAudioStream("sound\\kam.lvl", "kam1")
-- OpenAudioStream("sound\\mus.lvl", "kamino1_emt")
SetBleedingVoiceOver(REP, REP, "rep_off_com_report_us_overwhelmed", 1)
SetBleedingVoiceOver(REP, IMP, "rep_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, REP, "imp_off_com_report_enemy_losing", 1)
SetBleedingVoiceOver(IMP, IMP, "imp_off_com_report_us_overwhelmed", 1)
SetLowReinforcementsVoiceOver(REP, REP, "rep_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(REP, IMP, "rep_off_victory_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, IMP, "imp_off_defeat_im", .1, 1)
SetLowReinforcementsVoiceOver(IMP, REP, "imp_off_victory_im", .1, 1)
SetOutOfBoundsVoiceOver(2, "repleaving")
SetOutOfBoundsVoiceOver(1, "impleaving")
SetAmbientMusic(REP, 1.0, "rep_kam_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_kam_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_kam_amb_end", 2,1)
SetAmbientMusic(IMP, 1.0, "cis_kam_amb_start", 0,1)
SetAmbientMusic(IMP, 0.8, "cis_kam_amb_middle", 1,1)
SetAmbientMusic(IMP, 0.2, "cis_kam_amb_end", 2,1)
SetVictoryMusic(REP, "rep_kam_amb_victory")
SetDefeatMusic (REP, "rep_kam_amb_defeat")
SetVictoryMusic(IMP, "cis_kam_amb_victory")
SetDefeatMusic (IMP, "cis_kam_amb_defeat")
SetSoundEffect("ScopeDisplayZoomIn", "binocularzoomin")
SetSoundEffect("ScopeDisplayZoomOut", "binocularzoomout")
-- SetSoundEffect("BirdScatter", "birdsFlySeq1")
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")
SetAttackingTeam(ATT)
AddDeathRegion("deathregion")
AddCameraShot(0.564619, -0.121047, 0.798288, 0.171142, 68.198814, 79.137611, 110.850922);
AddCameraShot(-0.281100, 0.066889, -0.931340, -0.221616, 10.076019, 82.958336, -26.261774);
AddCameraShot(0.209553, -0.039036, -0.960495, -0.178923, 92.558563, 58.820618, 130.675919);
AddCameraShot(0.968794, 0.154227, 0.191627, -0.030506, -173.914413, 69.858940, 52.532421);
AddCameraShot(0.744389, 0.123539, 0.647364, -0.107437, 97.475639, 53.216236, 76.477089);
AddCameraShot(-0.344152, 0.086702, -0.906575, -0.228393, 95.062233, 105.285820, -37.661552);
end[/code]