[code]--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
-- load the gametype script
ScriptCB_DoFile("ObjectiveTDM")
ScriptCB_DoFile("setup_teams")
ReadDataFile("..\\..\\addon\\TES\\data\\_LVL_PC\\core.lvl")
-- Empire Attacking (attacker is always #1)
ALL = 1
IMP = 2
-- These variables do not change
ATT = 1
DEF = 2
function ScriptPostLoad()
SetProperty("cp1", "Team", "1")
SetProperty("cp2", "Team", "2")
SetProperty("cp3", "Team", "1")
SetProperty("cp4", "Team", "2")
SetProperty("cp5", "Team", "1")
SetProperty("cp6", "Team", "2")
SetProperty("cp1", "CaptureRegion", "nil")
SetProperty("cp2", "CaptureRegion", "nil")
SetProperty("cp3", "CaptureRegion", "nil")
SetProperty("cp4", "CaptureRegion", "nil")
SetProperty("cp5", "CaptureRegion", "nil")
SetProperty("cp6", "CaptureRegion", "nil")
SetProperty("cp1", "HUDIndexDisplay", "")
SetProperty("cp2", "HUDIndexDisplay", "")
SetProperty("cp3", "HUDIndexDisplay", "")
SetProperty("cp4", "HUDIndexDisplay", "")
SetProperty("cp5", "HUDIndexDisplay", "")
SetProperty("cp6", "HUDIndexDisplay", "")
SetClassProperty("com_bldg_major_controlzone", "SwitchClassRadius", 5.0)
SetClassProperty("com_inv_col_8", "SoldierCollision", "none")
SetClassProperty("com_inv_col_16", "SoldierCollision", "none")
SetClassProperty("com_inv_col_32", "SoldierCollision", "none")
SetClassProperty("com_inv_col_64", "SoldierCollision", "none")
EnableSPHeroRules()
SetClassProperty("rep_inf_assassin", "PointsToUnlock", "0")
SetClassProperty("imp_inf_royalguard", "PointsToUnlock", "0")
SetClassProperty("imp_inf_royalguard", "AddHealth", "20")
SetClassProperty("rep_inf_assassin", "AddHealth", "20")
-- This is the actual objective setup
TDM = ObjectiveTDM:New{teamATT = 1, teamDEF = 2,
multiplayerScoreLimit = 100,
textATT = "game.modes.tdm",
textDEF = "game.modes.tdm2", multiplayerRules = true, isCelebrityDeathmatch = true}
TDM:Start()
AddAIGoal(1, "Deathmatch", 100)
AddAIGoal(2, "Deathmatch", 100)
-- AddDeathRegion("Death")
AddDeathRegion("Death1")
AddDeathRegion("Death2")
-- AddDeathRegion("Death3")
-- AddDeathRegion("Death4")
SetProperty ("LibCase1","MaxHealth",1000)
SetProperty ("LibCase2","MaxHealth",1000)
SetProperty ("LibCase3","MaxHealth",1000)
SetProperty ("LibCase4","MaxHealth",1000)
SetProperty ("LibCase5","MaxHealth",1000)
SetProperty ("LibCase6","MaxHealth",1000)
SetProperty ("LibCase7","MaxHealth",1000)
SetProperty ("LibCase8","MaxHealth",1000)
SetProperty ("LibCase9","MaxHealth",1000)
SetProperty ("LibCase10","MaxHealth",1000)
SetProperty ("LibCase11","MaxHealth",1000)
SetProperty ("LibCase12","MaxHealth",1000)
SetProperty ("LibCase13","MaxHealth",1000)
SetProperty ("LibCase14","MaxHealth",1000)
SetProperty ("LibCase1","CurHealth",1000)
SetProperty ("LibCase2","CurHealth",1000)
SetProperty ("LibCase3","CurHealth",1000)
SetProperty ("LibCase4","CurHealth",1000)
SetProperty ("LibCase5","CurHealth",1000)
SetProperty ("LibCase6","CurHealth",1000)
SetProperty ("LibCase7","CurHealth",1000)
SetProperty ("LibCase8","CurHealth",1000)
SetProperty ("LibCase9","CurHealth",1000)
SetProperty ("LibCase10","CurHealth",1000)
SetProperty ("LibCase11","CurHealth",1000)
SetProperty ("LibCase12","CurHealth",1000)
SetProperty ("LibCase13","CurHealth",1000)
SetProperty ("LibCase14","CurHealth",1000)
EnableSPHeroRules()
DisableBarriers("SideDoor1")
DisableBarriers("MainLibraryDoors")
DisableBarriers("SideDoor2")
DisableBarriers("SIdeDoor3")
DisableBarriers("ComputerRoomDoor1")
DisableBarriers("StarChamberDoor1")
DisableBarriers("StarChamberDoor2")
DisableBarriers("WarRoomDoor1")
DisableBarriers("WarRoomDoor2")
DisableBarriers("WarRoomDoor3")
PlayAnimation("DoorOpen01")
PlayAnimation("DoorOpen02")
-- KillObject("CP1")
-- KillObject("CP2")
-- KillObject("CP3")
-- KillObject("CP4")
-- KillObject("CP5")
-- KillObject("CP6")
end
function ScriptInit()
-- Designers, these two lines *MUST* be first.
SetPS2ModelMemory(4030000)
SetMemoryPoolSize ("ClothData",30)
SetMemoryPoolSize ("Combo",40) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",600) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",800) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",800) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",500) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",5000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",100) -- should be ~1x #combo
SetMemoryPoolSize("SoldierAnimation", 888)
SetMemoryPoolSize("ParticleTransformer::SizeTransf", 2113)
SetMemoryPoolSize("ParticleTransformer::ColorTrans", 2388)
SetMemoryPoolSize("ParticleTransformer::PositionTr", 1541)
SetMemoryPoolSize("EntitySoundStream", 12)
ReadDataFile("ingame.lvl")
SetMapNorthAngle(180, 1)
SetMaxFlyHeight(40)
SetMaxPlayerFlyHeight (40)
AISnipeSuitabilityDist(30)
ReadDataFile("sound\\tat.lvl;tat2gcw")
ReadDataFile("SIDE\\kit.lvl","rep_hero_fisto")
ReadDataFile("SIDE\\asj.lvl","cis_hero_ventress")
ReadDataFile("SIDE\\tcw.lvl","imp_inf_royalguard",
"rep_inf_assassin",
"rep_hero_kitfisto",
"cis_hero_CadBane",
"cis_hero_darthsidious",
"rep_hero_macewindu",
"cis_hero_barriss",
"rep_hero_koon",
"cis_hero_vizsla",
"rep_hero_aalya")
SetClassProperty("rep_hero_kitfisto", "AnimationName", "mace")
ReadDataFile("SIDE\\gcw.lvl","all_hero_ackbar",
"imp_hero_ig88",
"all_hero_marek",
"all_hero_juno",
"all_hero_lando",
"imp_hero_sith_stalker",
"imp_hero_mara_jade",
"imp_hero_bossk",
"imp_hero_dengar")
ReadDataFile("SIDE\\all.lvl","all_hero_luke_jedi")
SetupTeams{
hero = {
team = ALL,
units = 12,
reinforcements = -1,
soldier = { "all_hero_marek",1,2},
assault = { "all_hero_lando", 1,2},
engineer= { "all_hero_luke_jedi", 1,2},
sniper = { "rep_hero_kitfisto", 1,2},
officer = { "rep_hero_koon", 1,2},
special = { "rep_hero_macewindu", 1,2},
},
}
AddUnitClass(ALL,"all_hero_juno", 1,2)
AddUnitClass(ALL,"rep_hero_aalya", 1,2)
AddUnitClass(ALL,"all_hero_ackbar",1,2)
SetupTeams{
villain = {
team = IMP,
units = 12,
reinforcements = -1,
soldier = { "imp_hero_sith_stalker", 1,2},
assault = { "cis_hero_barriss",1,2},
engineer= { "imp_hero_dengar", 1,2},
sniper = { "imp_hero_bossk", 1,2},
officer = { "cis_hero_darthsidious", 1,2},
special = { "imp_hero_mara_jade", 1,2},
},
}
AddUnitClass(IMP, "cis_hero_CadBane",1,2)
AddUnitClass(IMP, "cis_hero_vizsla",1,2)
AddUnitClass(IMP, "imp_hero_ig88",1,2)
-- SetTeamAsEnemy(DEF, 3)
-- 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 = 96
SetMemoryPoolSize("Aimer", 1)
SetMemoryPoolSize("AmmoCounter", weaponCnt)
SetMemoryPoolSize("BaseHint", 320)
SetMemoryPoolSize("ConnectivityGraphFollower", 23)
SetMemoryPoolSize("EnergyBar", weaponCnt)
SetMemoryPoolSize("EntityCloth",41)
SetMemoryPoolSize("EntityDefenseGridTurret", 0)
SetMemoryPoolSize("EntityDroid", 0)
SetMemoryPoolSize("EntityFlyer", 5) -- to account for 5 chewbaccas
SetMemoryPoolSize("EntityLight", 80, 80) -- stupid trickery to actually set lights to 80
SetMemoryPoolSize("EntityPortableTurret", 0) -- nobody has autoturrets AFAIK - MZ
SetMemoryPoolSize("EntitySoundStream", 2)
SetMemoryPoolSize("EntitySoundStatic", 45)
SetMemoryPoolSize("FLEffectObject::OffsetMatrix", 120)
SetMemoryPoolSize("MountedTurret", 0)
SetMemoryPoolSize("Navigator", 23)
SetMemoryPoolSize("Obstacle", 667)
SetMemoryPoolSize("Ordnance", 80) -- not much ordnance going on in the level
SetMemoryPoolSize("ParticleEmitter", 512)
SetMemoryPoolSize("ParticleEmitterInfoData", 512)
SetMemoryPoolSize("PathFollower", 23)
SetMemoryPoolSize("PathNode", 128)
SetMemoryPoolSize("ShieldEffect", 0)
SetMemoryPoolSize("TentacleSimulator", 24)
SetMemoryPoolSize("TreeGridStack", 290)
SetMemoryPoolSize("UnitAgent", 23)
SetMemoryPoolSize("UnitController", 23)
SetMemoryPoolSize("Weapon", weaponCnt)
AddDeathRegion("DeathRegion1")
SetSpawnDelay(10.0, 0.25)
-- ReadDataFile("dc:cor\\cor1.lvl","cor1_eli")
ReadDataFile("cor\\cor1.lvl","cor1_Conquest")
SetDenseEnvironment("True")
-- SetMaxFlyHeight(25)
--SetMaxPlayerFlyHeight (25)
-- Movies
-- SetVictoryMovie(ALL, "all_end_victory")
-- SetDefeatMovie(ALL, "imp_end_victory")
-- SetVictoryMovie(IMP, "imp_end_victory")
-- SetDefeatMovie(IMP, "all_end_victory")
-- Sound Stats
ScriptCB_EnableHeroMusic(0)
ScriptCB_EnableHeroVO(0)
voiceSlow = OpenAudioStream("sound\\global.lvl", "all_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", "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(1, "Allleaving")
SetOutOfBoundsVoiceOver(2, "Impleaving")
SetAmbientMusic(ALL, 1.0, "gen_amb_celebDeathmatch", 0,1)
-- SetAmbientMusic(ALL, 0.9, "all_tat_amb_middle", 1,1)
-- SetAmbientMusic(ALL, 0.1, "all_tat_amb_end", 2,1)
SetAmbientMusic(IMP, 1.0, "gen_amb_celebDeathmatch", 0,1)
-- SetAmbientMusic(IMP, 0.9, "imp_tat_amb_middle", 1,1)
-- SetAmbientMusic(IMP, 0.1, "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")
SetAttackingTeam(ATT)
AddCameraShot(0.419938, 0.002235, -0.907537, 0.004830, -15.639358, 5.499980, -176.911179);
AddCameraShot(0.994506, 0.104463, -0.006739, 0.000708, 1.745251, 5.499980, -118.700668);
AddCameraShot(0.008929, -0.001103, -0.992423, -0.122538, 1.366768, 16.818106, -114.422173);
AddCameraShot(0.761751, -0.117873, -0.629565, -0.097419, 59.861904, 16.818106, -81.607773);
AddCameraShot(0.717110, -0.013583, 0.696703, 0.013197, 98.053314, 11.354497, -85.857857);
AddCameraShot(0.360958, -0.001053, -0.932577, -0.002721, 69.017578, 18.145807, -56.992413);
AddCameraShot(-0.385976, 0.014031, -0.921793, -0.033508, 93.111061, 18.145807, -20.164375);
AddCameraShot(0.695468, -0.129569, -0.694823, -0.129448, 27.284357, 18.145807, -12.377695);
AddCameraShot(0.009002, -0.000795, -0.996084, -0.087945, 1.931320, 13.356332, -16.410583);
AddCameraShot(0.947720, -0.145318, 0.280814, 0.043058, 11.650738, 16.955814, 28.359180);
AddCameraShot(0.686380, -0.127550, 0.703919, 0.130810, -30.096384, 11.152356, -63.235146);
AddCameraShot(0.937945, -0.108408, 0.327224, 0.037821, -43.701199, 8.756138, -49.974789);
AddCameraShot(0.531236, -0.079466, -0.834207, -0.124787, -62.491230, 10.305247, -120.102989);
AddCameraShot(0.452286, -0.179031, -0.812390, -0.321572, -50.015198, 15.394646, -114.879379);
AddCameraShot(0.927563, -0.243751, 0.273918, 0.071982, 26.149965, 26.947924, -46.834148);
end[/code]