Can't change animation and combo of new melee unit [Solved]

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
Raigiku
Private Third Class
Posts: 58
Joined: Mon Jun 05, 2017 5:14 pm
Projects :: Battlefront Redux
Games I'm Playing :: League of Legends
xbox live or psn: TheRaigiku
Location: Perú

Can't change animation and combo of new melee unit [Solved]

Post by Raigiku »

I was testing if I could make a b1 battledroid have the animation of the wampa and the melee too. It worked on my test map but when I put it on my main map, the map crashed right away. I can't even choose sides.
snw_inf_wampa.odf (the unit)
Hidden/Spoiler:
[code][GameObjectClass]
ClassParent = "com_jedi_default"
GeometryName = "grappledroid"

[Properties]
HUDTag = "hud_wampa"
AISizeType = "HOVER"

GeometryName = "grappledroid"
GeometryLowRes = "grappledroid"
SkeletonLowRes = "bdroidlz"

SkeletonName = "bdroid"
AnimationName = "battlemelee"

//this keeps the player from entering first person with this char
forcemode = 1

// well, they can't use technology!
NoEnterVehicles = 1

// do NOT kneel when dead
FleeLikeAHero = 0

// one jump animation for this dude
UseDirectionalJumps = 0

JetJump = "00.0" //The initial jump-push given when enabling the jet
JetPush = "0.0" //The constant push given while the jet is enabled (20 is gravity)
JetAcceleration = "0.0" // for characters with jet jump, use this acceleration for in air control
JetEffect = ""
JetShowHud = 0

CollisionScale = "0.0 0.0 0.0" // don't take damage from collisions

WEAPONSECTION = 1
WeaponName1 = "hot_weap_lightsaber_wampa"
WeaponAmmo1 = 0

//HEALTH
HealthType = "person"
MaxHealth = 1800.0

// Movement defaults
// These are values for an average class - some soldiers will override these
MaxSpeed = 7.0 // base forward speed
MaxStrafeSpeed = 5.25 // base right/left speed
MaxTurnSpeed = 5.0 // base turn speed
JumpHeight = 2.5 // base jump height in meters
// Speed multipliers for various actions
JumpForwardSpeedFactor = 1.3 // boost forward part of velocity by this factor when jumping
JumpStrafeSpeedFactor = 1.0 // boost side/backward part of velocity by this factor when jumping
RollSpeedFactor = 1.5 // in forward arc, boost speed by this factor when rolling
// Apparently contant for all or most classes:
Acceleration = 70.0 // accelerate to full run in about 7/70 = 0.1 seconds
SprintAccelerateTime = 0.35 // accelerate from run to sprint in this time

// ControlSpeed = "<stance> <thrustfactor> <strafefactor> <turnfactor>"
// For grounded states (stand, crouch, prone, sprint) and jet state,
// in which the thrust/strafe stick controls the player's velocity,
// these values are multipliers on the max speed and acceleration.
// For flying states (jump, roll, tumble), in which the thrust/strafe stick
// applies an acceleration, these values only multiply the acceleration.
ControlSpeed = "stand 1.00 1.00 1.00"
ControlSpeed = "crouch 0.70 0.60 1.00"
ControlSpeed = "prone 0.30 0.20 0.50"
ControlSpeed = "sprint 3.00 0.50 0.35"
ControlSpeed = "jet 0.30 0.30 1.00"
ControlSpeed = "jump 0.03 0.03 0.35"
ControlSpeed = "roll 0.02 0.02 0.35"
ControlSpeed = "tumble 0.00 0.00 0.10"

///SOUND
SndHeroSelectable = ""
SndHeroSpawned = ""
SndHeroDefeated = ""
SndHeroKiller = ""

SoldierMusic = ""
HurtSound = "wampahurt"
DeathSound = "wampadeath"
LowHealthSound = "wampa_chatter"
LowHealthThreshold = "1.1"

FoleyFXClass = "wok_inf_soldier"




[/code]
geo1x_con.lua (main map)
Hidden/Spoiler:
[code]--
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--

-- load the gametype script
ScriptCB_DoFile("ObjectiveConquest")
ScriptCB_DoFile("setup_teams")

---------------------------------------------------------------------------
-- 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()
AddAIGoal(3, "Deathmatch", 100)
AddAIGoal(4, "Deathmatch", 100)
cp1 = CommandPost:New{name = "cp1"}
cp2 = CommandPost:New{name = "cp2"}
cp3 = CommandPost:New{name = "cp3"}
cp4 = CommandPost:New{name = "cp4"}
cp6 = CommandPost:New{name = "cp6"}
cp7 = CommandPost:New{name = "cp7"}
cp8 = CommandPost:New{name = "cp8"}

--This sets up the actual objective. This needs to happen after cp's are defined
conquest = ObjectiveConquest:New{teamATT = ATT, teamDEF = DEF, text = "level.geo1.objectives.conquest", 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(cp6)
conquest:AddCommandPost(cp7)
conquest:AddCommandPost(cp8)

conquest:Start()

SetUberMode(1);

EnableSPHeroRules()

AddDeathRegion("deathregion")
AddDeathRegion("deathregion2")
AddDeathRegion("deathregion3")
AddDeathRegion("deathregion4")
AddDeathRegion("deathregion5")

end
function ScriptInit()

-- CIS Random Hero
heroCis1 = 0
heroCis2 = 0
herocisand = math.random(1, 2)

if herocisand == 1 then
heroCis1 = "cis_hero_countdooku"
heroCis2 = "cis_hero_jangofett"
elseif herocisand == 2 then
heroCis1 = "cis_hero_jangofett"
heroCis2 = "cis_hero_countdooku"
end

-- REP Random Hero
heroRep1 = 0
heroRep2 = 0
herorepand = math.random(1, 3)

if herorepand == 1 then
heroRep1 = "rep_hero_macewindu"
herorepand = math.random(1, 2)
if herorepand == 1 then
heroRep2 = "rep_hero_aalya"
elseif herorepand == 2 then
heroRep2 = "rep_hero_kitfisto"
end

elseif herorepand == 2 then
heroRep1 = "rep_hero_aalya"
herorepand = math.random(1, 2)
if herorepand == 1 then
heroRep2 = "rep_hero_macewindu"
elseif herorepand == 2 then
heroRep2 = "rep_hero_kitfisto"
end

elseif herorepand == 3 then
heroRep1 = "rep_hero_kitfisto"
herorepand = math.random(1, 2)
if herorepand == 1 then
heroRep2 = "rep_hero_macewindu"
elseif herorepand == 2 then
heroRep2 = "rep_hero_aalya"
end
end

StealArtistHeap(800*1024)
-- Designers, these two lines *MUST* be first.
SetPS2ModelMemory(3500000)

SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",30) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",500) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",500) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",500) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",400) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",4000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",88) -- should be ~1x #combo

ReadDataFile("ingame.lvl")

-- REP Attacking (attacker is always #1)
local REP = 1
local CIS = 2
-- These variables do not change
local ATT = 1
local DEF = 2

SetTeamAggressiveness(CIS, 1.0)
SetTeamAggressiveness(REP, 1.0)

SetMemoryPoolSize("Music", 40)

ReadDataFile("dc:sound\\RDX.lvl;RDXcw")
ReadDataFile("sound\\geo.lvl;geo1cw")
ReadDataFile("dc:SIDE\\rep.lvl",
"rep_fly_assault_dome",
"rep_fly_gunship_dome",
"rep_fly_jedifighter_dome",
"rep_inf_ep2_rocketeer",
"rep_inf_ep2_rifleman",
"rep_inf_ep2_jettrooper",
"rep_inf_ep2_sniper",
"rep_inf_ep2_engineer",
"rep_inf_ep2_heavy",
"rep_inf_ep2_medic",
"rep_inf_ep2_commander",
"rep_inf_ep2_commando",
"rep_hero_aalya",
"rep_hero_macewindu",
"rep_hero_kitfisto",
"rep_walk_atte")

ReadDataFile("dc:SIDE\\cis.lvl",
"cis_fly_droidfighter_dome",
"cis_inf_sbdroid",
"cis_inf_rocketeer",
"cis_inf_sniper",
"cis_inf_engineer",
"cis_inf_droideka",
"cis_tread_hailfire",
"cis_inf_rifleman",
"cis_inf_commander",
"cis_hero_countdooku",
"cis_hero_jangofett",
"cis_hover_stap",
"cis_walk_spider")
ReadDataFile("dc:SIDE\\geo.lvl",
"gen_inf_geonosian")
ReadDataFile("dc:SIDE\\snw.lvl",
"snw_inf_wampa")
ReadDataFile("SIDE\\tur.lvl",
"tur_bldg_geoturret")

-- Level Stats

ClearWalkers()
SetMemoryPoolSize("EntityWalker", -1)
AddWalkerType(0, 3) -- 8 droidekas (special case: 0 leg pairs)
AddWalkerType(2, 3) -- 2 spider walkers with 2 leg pairs each
AddWalkerType(3, 0) -- 2 attes with 3 leg pairs each
local weaponcnt = 240
SetMemoryPoolSize("Aimer", 50)
SetMemoryPoolSize("AmmoCounter", weaponcnt)
SetMemoryPoolSize("BaseHint", 100)
SetMemoryPoolSize("CommandWalker", 1)
SetMemoryPoolSize("EnergyBar", weaponcnt)
SetMemoryPoolSize("EntityFlyer", 6)
SetMemoryPoolSize("EntityHover", 9)
SetMemoryPoolSize("EntityLight", 50)
SetMemoryPoolSize("EntitySoundStream", 4)
SetMemoryPoolSize("MountedTurret", 10)
SetMemoryPoolSize("Navigator", 50)
SetMemoryPoolSize("Obstacle", 450)
SetMemoryPoolSize("PathFollower", 50)
SetMemoryPoolSize("PathNode", 100)
SetMemoryPoolSize("TreeGridStack", 300)
SetMemoryPoolSize("UnitAgent", 50)
SetMemoryPoolSize("UnitController", 50)
SetMemoryPoolSize("Weapon", weaponcnt)

SetSpawnDelay(10.0, 0.25)

SetupTeams{

rep = {
team = REP,
units = 100,
reinforcements = 800,
soldier = { "rep_inf_ep2_rifleman",32, 33},
assault = { "rep_inf_ep2_rocketeer",9, 10},
engineer = { "rep_inf_ep2_engineer",9, 10},
sniper = { "rep_inf_ep2_sniper",9, 10},
officer = { "rep_inf_ep2_medic",9, 10},
special = { "rep_inf_ep2_jettrooper",9, 10},
extra1 = { "rep_inf_ep2_heavy",5, 6},
extra2 = { "rep_inf_ep2_commander",4, 5},
extra3 = { "rep_inf_ep2_commando",4, 5},
hero = { heroRep1,0, 1},

},
cis = {
team = CIS,
units = 100,
reinforcements = 800,
soldier = { "cis_inf_rifleman",32, 33},
assault = { "cis_inf_rocketeer",9, 10},
engineer = { "cis_inf_engineer",9, 10},
sniper = { "cis_inf_sniper",9, 10},
officer = { "geo_inf_geonosian",9, 10},
special = { "cis_inf_commander",8, 9},
extra1 = { "cis_inf_sbdroid",9, 10},
extra2 = { "cis_inf_droideka",6, 7},
extra3 = { "snw_inf_wampa",1, 5},
hero = { heroCis2,0, 1},
}
}


-- Attacker Stats

--teamATT = ConquestTeam:New{team = ATT}
--teamATT:AddBleedThreshold(21, 0.75)
--teamATT:AddBleedThreshold(11, 2.25)
--teamATT:AddBleedThreshold(1, 3.0)
--teamATT:Init()
SetTeamAsEnemy(ATT,3)
SetTeamAsEnemy(DEF,4)

-- Defender Stats

--teamDEF = ConquestTeam:New{team = DEF}
--teamDEF:AddBleedThreshold(21, 0.75)
--teamDEF:AddBleedThreshold(11, 2.25)
--teamDEF:AddBleedThreshold(1, 3.0)
--teamDEF:Init()
SetTeamAsFriend(DEF,3)
SetTeamAsFriend(ATT,4)

-- Local Stats
SetTeamName(3, "locals1")
SetUnitCount(3, 1)
AddUnitClass(3, heroCis2, 1)
SetTeamAsFriend(3, DEF)
SetTeamAsEnemy(3,ATT)

SetTeamName(4, "locals2")
SetUnitCount(4, 1)
AddUnitClass(4, heroRep2,1)
SetTeamAsFriend(4, ATT)
SetTeamAsEnemy(4,DEF)

ReadDataFile("GEO\\geo1.lvl", "geo1_conquest")

SetDenseEnvironment("false")
SetMinFlyHeight(-65)
SetMaxFlyHeight(50)
SetMaxPlayerFlyHeight(50)



-- Birdies
--SetNumBirdTypes(1)
--SetBirdType(0.0,10.0,"dragon")
--SetBirdFlockMinHeight(90.0)

-- Sound

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\\geo.lvl", "geo1cw")
OpenAudioStream("sound\\geo.lvl", "geo1cw")

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(1, "repleaving")
SetOutOfBoundsVoiceOver(2, "cisleaving")

SetAmbientMusic(REP, 1.0, "rep_GEO_amb_start", 0,1)
SetAmbientMusic(REP, 0.8, "rep_GEO_amb_middle", 1,1)
SetAmbientMusic(REP, 0.2, "rep_GEO_amb_end", 2,1)
SetAmbientMusic(CIS, 1.0, "cis_GEO_amb_start", 0,1)
SetAmbientMusic(CIS, 0.8, "cis_GEO_amb_middle", 1,1)
SetAmbientMusic(CIS, 0.2, "cis_GEO_amb_end", 2,1)

SetVictoryMusic(REP, "rep_geo_amb_victory")
SetDefeatMusic (REP, "rep_geo_amb_defeat")
SetVictoryMusic(CIS, "cis_geo_amb_victory")
SetDefeatMusic (CIS, "cis_geo_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")


--ActivateBonus(CIS, "SNEAK_ATTACK")
--ActivateBonus(REP, "SNEAK_ATTACK")

SetAttackingTeam(ATT)

--Opening Satalite Shot
--Geo
--Mountain
AddCameraShot(0.996091, 0.085528, -0.022005, 0.001889, -6.942698, -59.197201, 26.136919)
--Wrecked Ship
AddCameraShot(0.906778, 0.081875, -0.411906, 0.037192, 26.373968, -59.937874, 122.553581)
--War Room
--AddCameraShot(0.994219, 0.074374, 0.077228, -0.005777, 90.939568, -49.293945, -69.571136)
end

[/code]
TSTc_con.lua (Test map where the unit works)
Hidden/Spoiler:
[code]--
-- 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("dc:SIDE\\cis.lvl",
"cis_inf_marine",
"cis_inf_rocketeer",
"cis_inf_engineer",
"cis_inf_sniper",
"cis_inf_officer",
"cis_inf_droideka",
"cis_hero_darthmaul",
"cis_hover_aat")
ReadDataFile("dc:SIDE\\snw.lvl",
"snw_inf_wampa")


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 = { "rep_inf_ep3_sniper",1, 4},
officer = {"rep_inf_ep3_officer",1, 4},
special = { "rep_inf_ep3_jettrooper",1, 4},

},
cis = {
team = CIS,
units = 20,
reinforcements = 150,
soldier = { "snw_inf_wampa",9, 25},
assault = { "cis_inf_marine",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:TST\\TST.lvl", "TST_conquest")
ReadDataFile("dc:TST\\TST.lvl", "TST_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

[/code]
EDIT:
I decided to redo the entire unit but there is one problem. The map crashes when the unit uses the hot_inf_wampa.combo file for his "lightsaber", when I use the wampa animation set (with the bdroid mesh as the basepose) and when I change his skeleton to the wampa one.
cis_inf_grapple.odf
Hidden/Spoiler:
[code][GameObjectClass]
ClassParent = "com_jedi_default"

[Properties]

AISizeType = "HOVER"
GeometryName = "grappledroid"
GeometryLowRes = "grappledroid"
SkeletonName = "bdroid"
SkeletonLowRes = "bdroidlz"

HealthType = "droid"
CollisionScale = "0.0 0.0 0.0" // don't take damage from collisions
NoEnterVehicles = 0
FleeLikeAHero = 0

WEAPONSECTION = 1
WeaponName = "cis_weap_lightsaber_melee"
WeaponAmmo = 0

HurtSound = "cis_inf_com_chatter_wound"
DeathSound = "droid_death"
DamageRegionSound = "cis_inf_com_chatter_wound"
ShockFadeOutTime = ""
ShockFadeInTime = ""
ShockFadeOutGain = ""
ShockSound = ""
ClothingRustleSound = ""
LowHealthSound = ""
//LowHealthThreshold = ".25"
FoleyFXClass = "cis_inf_droid"

FoleyFXClass = "cis_inf_soldier"

ExplosionName = "cis_inf_droid_exp"

DropItemClass = "com_item_powerup_offense"
DropItemProbability = 0.0
NextDropItem = "-"
DropItemClass = "com_item_powerup_defense"
DropItemProbability = 0.0

// most droids have funky posture, easiest to put it here
CollisionHeadOffset = "0.0 -0.11 0.05"


ChunkFrequency = 0.6

CHUNKSECTION = "CHUNK1"
ChunkGeometryName = "bdroid_chunk1"
ChunkNodeName = "bone_neck"
ChunkTerrainCollisions = "4"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunksmolder"
ChunkPhysics = "FULL"
ChunkOmega = "4.0 4.0 4.0"
ChunkSpeed = 8.0

CHUNKSECTION = "CHUNK2"
ChunkGeometryName = "bdroid_chunk2"
ChunkNodeName = "bone_l_upperarm"
ChunkTerrainCollisions = "4"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunksmolder"
ChunkPhysics = "FULL"
ChunkOmega = "4.0 4.0 4.0"
ChunkSpeed = 8.0

CHUNKSECTION = "CHUNK3"
ChunkGeometryName = "bdroid_chunk3"
ChunkNodeName = "bone_l_calf"
ChunkTerrainCollisions = "4"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunksmolder"
ChunkPhysics = "FULL"
ChunkOmega = "4.0 4.0 4.0"
ChunkSpeed = 8.0

CHUNKSECTION = "CHUNK4"
ChunkGeometryName = "bdroid_chunk4"
ChunkNodeName = "bone_r_thigh"
ChunkTerrainCollisions = "4"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunksmolder"
ChunkPhysics = "FULL"
ChunkOmega = "4.0 4.0 4.0"
ChunkSpeed = 8.0

CHUNKSECTION = "CHUNK5"
ChunkGeometryName = "bdroid_chunk5"
ChunkNodeName = "bone_a_spine"
ChunkTerrainCollisions = "4"
ChunkTerrainEffect = "dirtspray"
ChunkTrailEffect = "com_sfx_chunksmolder"
ChunkPhysics = "FULL"
ChunkOmega = "4.0 4.0 4.0"
ChunkSpeed = 8.0

VOUnitType = 084

VOSound = "cis_command_follow SC_Follow"
VOSound = "cis_command_stopFollow SC_StopFollow"
VOSound = "cis_command_stopVehicle SC_VehicleWaitUp"
VOSound = "cis_command_getIn SC_GetIn"
VOSound = "cis_command_getOut SC_GetOut"
VOSound = "cis_response_follow SC_FollowResponse"
VOSound = "cis_response_stopFollow SC_StopFollowResponse"
VOSound = "cis_response_stopVehicle SC_VehicleWaitUpResponse"
VOSound = "cis_response_getIn SC_GetInResponse"
VOSound = "cis_response_getOut SC_GetOutResponse"

VOSound = "cis1_inf_pc_com_hostile SpottedVO"
VOSound = "cis1_inf_pc_com_bacta NeedMedicVO"
VOSound = "cis1_inf_pc_com_mechanic NeedRepairVO"
VOSound = "cis1_inf_pc_com_ammo NeedAmmoVO"
VOSound = "cis1_inf_pc_com_transport NeedPickupVO"
VOSound = "cis1_inf_pc_com_backup NeedBackupVO"
VOSound = "cis1_inf_pc_com_clear_area AttackPositionVO"
VOSound = "cis1_inf_pc_com_defend DefendPositionVO"

VOSound = "cis1_inf_pc_com_hostile_inVehicle SpottedVO +InVehicle"
VOSound = "cis1_inf_pc_com_bacta_inVehicle NeedMedicVO +InVehicle"
VOSound = "cis1_inf_pc_com_mechanic_inVehicle NeedRepairVO +InVehicle"
VOSound = "cis1_inf_pc_com_ammo_inVehicle NeedAmmoVO +InVehicle"
VOSound = "cis1_inf_pc_com_transport_inVehicle NeedPickupVO +InVehicle"
VOSound = "cis1_inf_pc_com_backup_inVehicle NeedBackupVO +InVehicle"
VOSound = "cis1_inf_pc_com_clear_area_inVehicle AttackPositionVO +InVehicle"
VOSound = "cis1_inf_pc_com_defend_inVehicle DefendPositionVO +InVehicle"

VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum121 AcquiredTarget +VOUnitNum121"
VOSound = "cis1_inf_chatter_AcquiredTarget_Left AcquiredTarget +Left"
VOSound = "cis1_inf_chatter_AcquiredTarget_Right AcquiredTarget +Right"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum123 AcquiredTarget +VOUnitNum123"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum124 AcquiredTarget +VOUnitNum124"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum124 NotShootingCriticalHit +VOUnitNum124"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum125 AcquiredTarget +VOUnitNum125"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum125 NotShootingCriticalHit +VOUnitNum125"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum126 AcquiredTarget +VOUnitNum126"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum126 NotShootingCriticalHit +VOUnitNum126"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum127 AcquiredTarget +VOUnitNum127"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum127 NotShootingCriticalHit +VOUnitNum127"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum132 AcquiredTarget +VOUnitNum132"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum132 NotShootingCriticalHit +VOUnitNum132"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum161 AcquiredTarget +VOUnitNum161"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum161 NotShootingCriticalHit +VOUnitNum161"
VOSound = "cis1_inf_chatter_NearbyFriendlySlaughter NearbyFriendlySlaughter"
VOSound = "cis1_inf_chatter_NearbyEnemySlaughter NearbyEnemySlaughter"
VOSound = "cis1_inf_chatter_KillingSpree4 KillingSpree4"
VOSound = "cis1_inf_chatter_KillingSpree8 KillingSpree8"
VOSound = "cis1_inf_chatter_HeadshotKill HeadshotKill"
VOSound = "cis1_inf_chatter_Grenade Grenade"
VOSound = "cis1_inf_chatter_MissileIncoming MissileIncoming"
VOSound = "cis1_inf_chatter_AcquiredTarget_IsSniper_VOUnitNum122 AcquiredTarget +IsSniper +VOUnitNum122"
VOSound = "cis1_inf_chatter_FriendlyFire FriendlyFire"
VOSound = "cis1_inf_chatter_RebelsShootDeadBody RebelsShootDeadBody"
VOSound = "cis1_inf_chatter_GivePowerup GivePowerup"
VOSound = "cis1_inf_chatter_AcquiredTarget_IsTurret AcquiredTarget +IsTurret"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum181 AcquiredTarget +VOUnitNum181"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum186 AcquiredTarget +VOUnitNum186"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum187 AcquiredTarget +VOUnitNum187"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum188 AcquiredTarget +VOUnitNum188"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum189 AcquiredTarget +VOUnitNum189"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum190 AcquiredTarget +VOUnitNum190"
VOSound = "cis1_inf_chatter_RepairStart_IsHover RepairStart +IsHover"
VOSound = "cis1_inf_chatter_RepairStart_IsWalker RepairStart +IsWalker"
VOSound = "cis1_inf_chatter_RepairStart_IsFlyer RepairStart +IsFlyer"
VOSound = "cis1_inf_chatter_RepairEnd_IsHover RepairEnd +IsHover"
VOSound = "cis1_inf_chatter_RepairEnd_IsWalker RepairEnd +IsWalker"
VOSound = "cis1_inf_chatter_RepairEnd_IsFlyer RepairEnd +IsFlyer"
VOSound = "cis1_inf_chatter_RepairStart_IsTurret RepairStart +IsTurret"
VOSound = "cis1_inf_chatter_RepairEnd_IsTurret RepairEnd +IsTurret"
VOSound = "cis1_inf_chatter_AcquiredTarget AcquiredTarget"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum176 AcquiredTarget +VOUnitNum176"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum175 AcquiredTarget +VOUnitNum175"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum177 AcquiredTarget +VOUnitNum177"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum2 AcquiredTarget +VOUnitNum2"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum172 AcquiredTarget +VOUnitNum172"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum174 AcquiredTarget +VOUnitNum174"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum173 AcquiredTarget +VOUnitNum173"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum171 AcquiredTarget +VOUnitNum171"
VOSound = "cis1_inf_chatter_AcquiredTarget_Above_VOUnitNum121_InHover AcquiredTarget +Above +VOUnitNum121 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_Left_InHover AcquiredTarget +Left +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_Right_InHover AcquiredTarget +Right +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum124_InHover AcquiredTarget +VOUnitNum124 +InHover"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum124_InHover NotShootingCriticalHit +VOUnitNum124 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum125_InHover AcquiredTarget +VOUnitNum125 +InHover"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum125_InHover NotShootingCriticalHit +VOUnitNum125 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum126_InHover AcquiredTarget +VOUnitNum126 +InHover"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum126_InHover NotShootingCriticalHit +VOUnitNum126 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum127_InHover AcquiredTarget +VOUnitNum127 +InHover"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum127_InHover NotShootingCriticalHit +VOUnitNum127 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum132_InHover AcquiredTarget +VOUnitNum132 +InHover"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum132_InHover NotShootingCriticalHit +VOUnitNum132 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum161_InHover AcquiredTarget +VOUnitNum161 +InHover"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum161_InHover NotShootingCriticalHit +VOUnitNum161 +InHover"
VOSound = "cis1_inf_chatter_NearbyEnemySlaughter_InHover NearbyEnemySlaughter +InHover"
VOSound = "cis1_inf_chatter_NearbyFriendlySlaughter_InHover NearbyFriendlySlaughter +InHover"
VOSound = "cis1_inf_chatter_KillingSpree4_InHover KillingSpree4 +InHover"
VOSound = "cis1_inf_chatter_KillingSpree8_InHover KillingSpree8 +InHover"
VOSound = "cis1_inf_chatter_HeadshotKill_InHover HeadshotKill +InHover"
VOSound = "cis1_inf_chatter_Grenade_InHover Grenade +InHover"
VOSound = "cis1_inf_chatter_MissileIncoming_InHover MissileIncoming +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_IsSniper_VOUnitNum122_InHover AcquiredTarget +IsSniper +VOUnitNum122 +InHover"
VOSound = "cis1_inf_chatter_FriendlyFire_InHover FriendlyFire +InHover"
VOSound = "cis1_inf_chatter_RebelsShootDeadBody_InHover RebelsShootDeadBody +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_IsTurret_InHover AcquiredTarget +IsTurret +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum181_InHover AcquiredTarget +VOUnitNum181 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum186_InHover AcquiredTarget +VOUnitNum186 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum187_InHover AcquiredTarget +VOUnitNum187 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum188_InHover AcquiredTarget +VOUnitNum188 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum189_InHover AcquiredTarget +VOUnitNum189 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum190_InHover AcquiredTarget +VOUnitNum190 +InHover"
VOSound = "cis1_inf_chatter_RepairStart_IsHover_InHover RepairStart +IsHover +InHover"
VOSound = "cis1_inf_chatter_RepairStart_IsWalker_InHover RepairStart +IsWalker +InHover"
VOSound = "cis1_inf_chatter_RepairStart_IsFlyer_InHover RepairStart +IsFlyer +InHover"
VOSound = "cis1_inf_chatter_RepairEnd_IsHover_InHover RepairEnd +IsHover +InHover"
VOSound = "cis1_inf_chatter_RepairEnd_IsWalker_InHover RepairEnd +IsWalker +InHover"
VOSound = "cis1_inf_chatter_RepairEnd_IsFlyer_InHover RepairEnd +IsFlyer +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_InHover AcquiredTarget +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum176_InHover AcquiredTarget +VOUnitNum176 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum175_InHover AcquiredTarget +VOUnitNum175 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum177_InHover AcquiredTarget +VOUnitNum177 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum2_InHover AcquiredTarget +VOUnitNum2 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum172_InHover AcquiredTarget +VOUnitNum172 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum174_InHover AcquiredTarget +VOUnitNum174 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum173_InHover AcquiredTarget +VOUnitNum173 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum171_InHover AcquiredTarget +VOUnitNum171 +InHover"
VOSound = "cis1_inf_chatter_AcquiredTarget_Above_VOUnitNum121_InWalker AcquiredTarget +Above +VOUnitNum121 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_Left_InWalker AcquiredTarget +Left +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_Right_InWalker AcquiredTarget +Right +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum124_InWalker AcquiredTarget +VOUnitNum124 +InWalker"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum124_InWalker NotShootingCriticalHit +VOUnitNum124 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum125_InWalker AcquiredTarget +VOUnitNum125 +InWalker"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum125_InWalker NotShootingCriticalHit +VOUnitNum125 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum126_InWalker AcquiredTarget +VOUnitNum126 +InWalker"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum126_InWalker NotShootingCriticalHit +VOUnitNum126 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum127_InWalker AcquiredTarget +VOUnitNum127 +InWalker"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum127_InWalker NotShootingCriticalHit +VOUnitNum127 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum132_InWalker AcquiredTarget +VOUnitNum132 +InWalker"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum132_InWalker NotShootingCriticalHit +VOUnitNum132 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum161_InWalker AcquiredTarget +VOUnitNum161 +InWalker"
VOSound = "cis1_inf_chatter_NotShootingCriticalHit_VOUnitNum161_InWalker NotShootingCriticalHit +VOUnitNum161 +InWalker"
VOSound = "cis1_inf_chatter_NearbyEnemySlaughter_InWalker NearbyEnemySlaughter +InWalker"
VOSound = "cis1_inf_chatter_NearbyFriendlySlaughter_InWalker NearbyFriendlySlaughter +InWalker"
VOSound = "cis1_inf_chatter_KillingSpree4_InWalker KillingSpree4 +InWalker"
VOSound = "cis1_inf_chatter_KillingSpree8_InWalker KillingSpree8 +InWalker"
VOSound = "cis1_inf_chatter_HeadshotKill_InWalker HeadshotKill +InWalker"
VOSound = "cis1_inf_chatter_Grenade_InWalker Grenade +InWalker"
VOSound = "cis1_inf_chatter_MissileIncoming_InWalker MissileIncoming +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_IsSniper_VOUnitNum122_InWalker AcquiredTarget +IsSniper +VOUnitNum122 +InWalker"
VOSound = "cis1_inf_chatter_FriendlyFire_InWalker FriendlyFire +InWalker"
VOSound = "cis1_inf_chatter_RebelsShootDeadBody_InWalker RebelsShootDeadBody +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_IsTurret_InWalker AcquiredTarget +IsTurret +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum181_InWalker AcquiredTarget +VOUnitNum181 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum186_InWalker AcquiredTarget +VOUnitNum186 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum187_InWalker AcquiredTarget +VOUnitNum187 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum188_InWalker AcquiredTarget +VOUnitNum188 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum189_InWalker AcquiredTarget +VOUnitNum189 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum190_InWalker AcquiredTarget +VOUnitNum190 +InWalker"
VOSound = "cis1_inf_chatter_RepairStart_IsHover_InWalker RepairStart +IsHover +InWalker"
VOSound = "cis1_inf_chatter_RepairStart_IsWalker_InWalker RepairStart +IsWalker +InWalker"
VOSound = "cis1_inf_chatter_RepairStart_IsFlyer_InWalker RepairStart +IsFlyer +InWalker"
VOSound = "cis1_inf_chatter_RepairEnd_IsHover_InWalker RepairEnd +IsHover +InWalker"
VOSound = "cis1_inf_chatter_RepairEnd_IsWalker_InWalker RepairEnd +IsWalker +InWalker"
VOSound = "cis1_inf_chatter_RepairEnd_IsFlyer_InWalker RepairEnd +IsFlyer +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_InWalker AcquiredTarget +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum176_InWalker AcquiredTarget +VOUnitNum176 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum175_InWalker AcquiredTarget +VOUnitNum175 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum177_InWalker AcquiredTarget +VOUnitNum177 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum2_InWalker AcquiredTarget +VOUnitNum2 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum172_InWalker AcquiredTarget +VOUnitNum172 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum174_InWalker AcquiredTarget +VOUnitNum174 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum173_InWalker AcquiredTarget +VOUnitNum173 +InWalker"
VOSound = "cis1_inf_chatter_AcquiredTarget_VOUnitNum171_InWalker AcquiredTarget +VOUnitNum171 +InWalker"[/code]
cis_weap_lightsaber_melee.odf
Hidden/Spoiler:
[code][WeaponClass]

ClassLabel = "melee"
ClassParent = "com_weap_inf_lightsaber"

[Properties]

OnSound = "overrideparentsound"
TurnOnSound = "overrideparentsound"
TurnOffSound = "overrideparentsound"
HitEffect = "hot_sfx_weap_pawsmash"
AddHitEffect = "com_sfx_bif"
AddHitEffect = "com_sfx_zap"
AddHitEffect = "com_sfx_blammo"
AddHitEffect = "com_sfx_pow"

HitSound = "wampa_impact"

GeometryName = "cis_inf_weap_l_smash"
ComboAnimationBank = "human_sabre melee cis_hero_countdooku"

NumDamageEdges = "2"
OffhandFirePointName = "hp_fire_lightsabre bone_r_hand"
LightSaberLength = "0.0"
LightSaberWidth = "0.08"

OffhandGeometryName = "cis_inf_weap_r_smash"
OffhandFirePointName = "hp_fire_lightsabre bone_l_hand"
LightSaberLength = "0.0"
LightSaberWidth = "0.08"
[/code]
I get this error in BFront2.log
Hidden/Spoiler:
[code]Message Severity: 3
C:\Battlefront2\main\Battlefront2\Source\SoldierAnimatorClass.cpp(1881)
Can't find soldier animation grapplem_sabre_stand_alternate_attack(_upper)[/code]
However my custom animation has it
Hidden/Spoiler:
Image
EDIT 2:
I fixed it! I had to many animation banks so I deleted some of them and now my unit works perfectly.
Post Reply