Here are the originals.
Force Freeze - Majorly overbalanced. But fun to play around with all the same. When you use this move on a unit, the unit will be frozen and become unfrozen when you stop holding the button down.
Force Heal - Gives the targeted unit a health buff for a short amount of time.
The new one is force stasis.
Force Stasis - Freezes the targeted unit for 2(can be adjusted) seconds.
To use this ability you'll need to add some code into your lua.
Hidden/Spoiler:
--New Hero Assault
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
-- Mos Eisley Hero Deathmatch (uses Space Assault rules)
-- First team to reach 100 kills wins
--
ScriptCB_DoFile("setup_teams")
ScriptCB_DoFile("ObjectiveTDM")
--ADD THIS AFTER THE ScriptCB_DoFile SECTION
count = 0
--END
---------------------------------------------------------------------------
-- ScriptPostLoad
---------------------------------------------------------------------------
function ScriptPostLoad()
EnableSPHeroRules()
-- 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()
-- ADD THIS IN THE ScriptPostLoad SECTION
OnObjectDamage(
function(object, damager)
if GetObjectHealth(object) > 900000 then return end
if GetObjectLastHitWeaponClass(object) == "com_weap_inf_stasis" then
FreezeFor(object,2)
end
end
)
--END
AddAIGoal(1, "Deathmatch", 100)
AddAIGoal(2, "Deathmatch", 100)
end
--ADD THIS AFTER THE ScriptPostLoad SECTION
function FreezeFor(object, timercount)
--Freeze
print("--Freeze")
count = count + 1
health = GetObjectHealth(object)
SetProperty(object, "CurHealth", 1000000)
DeactivateObject(object)
-- Wait for timercount
print("-- Wait for timercount")
CreateTimer("timer" .. count)
SetTimerValue("timer" .. count, timercount)
StartTimer("timer" .. count)
OnTimerElapse(
function(timer)
--Unfreeze
print("--Unfreeze")
ActivateObject(object)
SetProperty(object, "CurHealth", (GetObjectHealth(object) - 1000000) + health)
end,
"timer" .. count
)
DestroyTimer("timer" .. count)
end
--END
---------------------------------------------------------------------------
-- ScriptInit
---------------------------------------------------------------------------
function ScriptInit()
ReadDataFile("dC:Load\\common.lvl")
SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",70) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",850) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",850) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",850) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",750) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",8000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",140) -- should be ~1x #combo -- should be ~1x #combo
[...]
-- Copyright (c) 2005 Pandemic Studios, LLC. All rights reserved.
--
-- Mos Eisley Hero Deathmatch (uses Space Assault rules)
-- First team to reach 100 kills wins
--
ScriptCB_DoFile("setup_teams")
ScriptCB_DoFile("ObjectiveTDM")
--ADD THIS AFTER THE ScriptCB_DoFile SECTION
count = 0
--END
---------------------------------------------------------------------------
-- ScriptPostLoad
---------------------------------------------------------------------------
function ScriptPostLoad()
EnableSPHeroRules()
-- 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()
-- ADD THIS IN THE ScriptPostLoad SECTION
OnObjectDamage(
function(object, damager)
if GetObjectHealth(object) > 900000 then return end
if GetObjectLastHitWeaponClass(object) == "com_weap_inf_stasis" then
FreezeFor(object,2)
end
end
)
--END
AddAIGoal(1, "Deathmatch", 100)
AddAIGoal(2, "Deathmatch", 100)
end
--ADD THIS AFTER THE ScriptPostLoad SECTION
function FreezeFor(object, timercount)
--Freeze
print("--Freeze")
count = count + 1
health = GetObjectHealth(object)
SetProperty(object, "CurHealth", 1000000)
DeactivateObject(object)
-- Wait for timercount
print("-- Wait for timercount")
CreateTimer("timer" .. count)
SetTimerValue("timer" .. count, timercount)
StartTimer("timer" .. count)
OnTimerElapse(
function(timer)
--Unfreeze
print("--Unfreeze")
ActivateObject(object)
SetProperty(object, "CurHealth", (GetObjectHealth(object) - 1000000) + health)
end,
"timer" .. count
)
DestroyTimer("timer" .. count)
end
--END
---------------------------------------------------------------------------
-- ScriptInit
---------------------------------------------------------------------------
function ScriptInit()
ReadDataFile("dC:Load\\common.lvl")
SetMemoryPoolSize ("ClothData",20)
SetMemoryPoolSize ("Combo",70) -- should be ~ 2x number of jedi classes
SetMemoryPoolSize ("Combo::State",850) -- should be ~12x #Combo
SetMemoryPoolSize ("Combo::Transition",850) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Condition",850) -- should be a bit bigger than #Combo::State
SetMemoryPoolSize ("Combo::Attack",750) -- should be ~8-12x #Combo
SetMemoryPoolSize ("Combo::DamageSample",8000) -- should be ~8-12x #Combo::Attack
SetMemoryPoolSize ("Combo::Deflect",140) -- should be ~1x #combo -- should be ~1x #combo
[...]
Have fun!
Original Post:
Hidden/Spoiler:
I have some new force moves here if anyone wants 'em.
Force Freeze: with this force move you can stop other units from moving.
[code][WeaponClass]
ClassLabel = "areaeffectweapon"
[Properties]
HUDTag = "hud_force_push"
GeometryName = ""
HighResGeometry = ""
//MuzzleFlash = "med_muzzle_flash"
FlashColor = "80 80 255 255"
FlashLength = 0.025
FlashLightColor = "220 220 255 175"
Discharge = "med_smoke_effect"
//RoundsPerClip = "32"
RoundsPerClip = "0"
ReloadTime = "0.0"
HeatPerShot = "0.0" // only allow player to fire every 5 seconds
HeatRecoverRate = "0.2"
HeatThreshold = "0.01"
DisplayRefire = "0"
EnergyDrain = "40.0"
EnergyDrainRate = "15.0"
FireType = "Hold"
InitialSalvoDelay = "0.5"
//ChargeMaxTime = "0.0"
//ChargeMinStrength = "0.0"
MaxTargets = "1"
AreaType = "Ray"
AreaRange = "10.0"
AreaRadius = "10.0" // -> 20 degree arc
AreaHeight = "4.0"
EffectDamage = "0.0"
EffectType = "Choke"
EffectStrength = "10.0"
EffectFalloff = "1.0"
ThrustFactor = "0.5" // when firing, move at half speed
// I don't think this is used in the code at all -> TargetLock = "1" // when firing, activate target lock
SoldierAnimation = "idle_emote_full"
OffhandWeapon = 1
InstantPlayFireAnim = 1
TriggerSingle = "1" // if FireType = "Hold" this will work correctly now - Mike Z
LockOnRange = "64.0"
LockTime = "0.0"
AutoAimSize = "2.0"
TargetEnemy = "1"
TargetNeutral = "0"
TargetFriendly = "0"
TargetPerson = "1"
TargetAnimal = "1"
TargetDroid = "1"
TargetVehicle = "0"
TargetBuilding = "0"
ChargeRateLight = "1.0"
MaxChargeStrengthLight = "1.0"
ChargeDelayLight = "0.0"
ChargeRateHeavy = "1.0"
MaxChargeStrengthHeavy = "0.5"
ChargeDelayHeavy = "2.2"
RecoilLengthHeavy = "0.25"
RecoilStrengthHeavy = "2"
RecoilDecayHeavy = "0.0"
FireSound = "force_choke_fire"
//ReloadSound = ""
WeaponChangeSound = ""
ChangeModeSound = ""
FireEmptySound = ""
ChargeSound = ""
ChargeSoundPitch = "0.05"
OverheatSound = ""
OverheatSoundPitch = "0.5"
OverheatStopSound = ""[/code]
Force Heal: You fire this at your teamates and it gives them regen for a little while.
[code][WeaponClass]
ClassLabel = "cannon"
[Properties]
OrdnanceName = "Rep_weap_inf_force_heal_ord"
HUDTag = "hud_health_regen"
RoundsPerClip = "0"
ReloadTime = "0.3"
HeatRecoverRate = "0.2"
HeatThreshold = "0.0"
TriggerSingle = "1"
ShotDelay = "0.5"
HeatPerShot = "0.0"
MaxPressedTime = "0.0"
ZoomMin = "0.0"
ZoomMax = "0.0"
ZoomRate = "0.0"
MinRange = "0"
OptimalRange = "5"
MaxRange = "8"
//Use the offhand shoot_secondary2 anim: (grenade throw, overridden by buff anim)
EnergyDrain = 100.0
InstantPlayFireAnim = 1
OffhandWeapon = 1
LockOnRange = "64.0"
LockTime = "0.0"
AutoAimSize = "2.0"
SalvoCount = "1"
ShotsPerSalvo = "1"
SalvoDelay = "0.0"
SalvoTime = "0.0"
InitialSalvoDelay = "0.5" // must have one or no animation - Mike Z
TargetEnemy = "0"
TargetNeutral = "0"
TargetFriendly = "1"
TargetPerson = "1"
TargetAnimal = "1"
TargetDroid = "1"
TargetVehicle = "0"
TargetBuilding = "0"
FireSound = "force_push_fire"
[/code]
And the ord file for force heal
[code][OrdnanceClass]
ClassLabel = "emitterordnance"
[Properties]
BuffHealthTimer = "3"
BuffHealthRate = "100"
//PlayEffectOnOwner = "com_sfx_buff_regen"
AffectEnemies = "0"
ConeLength = "15"
ConeAngle = "120"
FirstRadius = "0.0"
MaxTargets = "1" // Max number of targets to hit. Chaining is off so the damage will be split between the number of targets
NoChaining = "1" // No chaining - all bolts coming from the attacker
ApplyOnOwnerIfOnOthers = "0"
VehicleScale = "0.0"
ShieldScale = "1.0"
PersonScale = "1.0"
AnimalScale = "1.0"
DroidScale = "1.0"
BuildingScale = "0.0"[/code]
Let me know if you like them and if you use them in a mod map please give me credit.
MasterSaitek009
Force Freeze: with this force move you can stop other units from moving.
[code][WeaponClass]
ClassLabel = "areaeffectweapon"
[Properties]
HUDTag = "hud_force_push"
GeometryName = ""
HighResGeometry = ""
//MuzzleFlash = "med_muzzle_flash"
FlashColor = "80 80 255 255"
FlashLength = 0.025
FlashLightColor = "220 220 255 175"
Discharge = "med_smoke_effect"
//RoundsPerClip = "32"
RoundsPerClip = "0"
ReloadTime = "0.0"
HeatPerShot = "0.0" // only allow player to fire every 5 seconds
HeatRecoverRate = "0.2"
HeatThreshold = "0.01"
DisplayRefire = "0"
EnergyDrain = "40.0"
EnergyDrainRate = "15.0"
FireType = "Hold"
InitialSalvoDelay = "0.5"
//ChargeMaxTime = "0.0"
//ChargeMinStrength = "0.0"
MaxTargets = "1"
AreaType = "Ray"
AreaRange = "10.0"
AreaRadius = "10.0" // -> 20 degree arc
AreaHeight = "4.0"
EffectDamage = "0.0"
EffectType = "Choke"
EffectStrength = "10.0"
EffectFalloff = "1.0"
ThrustFactor = "0.5" // when firing, move at half speed
// I don't think this is used in the code at all -> TargetLock = "1" // when firing, activate target lock
SoldierAnimation = "idle_emote_full"
OffhandWeapon = 1
InstantPlayFireAnim = 1
TriggerSingle = "1" // if FireType = "Hold" this will work correctly now - Mike Z
LockOnRange = "64.0"
LockTime = "0.0"
AutoAimSize = "2.0"
TargetEnemy = "1"
TargetNeutral = "0"
TargetFriendly = "0"
TargetPerson = "1"
TargetAnimal = "1"
TargetDroid = "1"
TargetVehicle = "0"
TargetBuilding = "0"
ChargeRateLight = "1.0"
MaxChargeStrengthLight = "1.0"
ChargeDelayLight = "0.0"
ChargeRateHeavy = "1.0"
MaxChargeStrengthHeavy = "0.5"
ChargeDelayHeavy = "2.2"
RecoilLengthHeavy = "0.25"
RecoilStrengthHeavy = "2"
RecoilDecayHeavy = "0.0"
FireSound = "force_choke_fire"
//ReloadSound = ""
WeaponChangeSound = ""
ChangeModeSound = ""
FireEmptySound = ""
ChargeSound = ""
ChargeSoundPitch = "0.05"
OverheatSound = ""
OverheatSoundPitch = "0.5"
OverheatStopSound = ""[/code]
Force Heal: You fire this at your teamates and it gives them regen for a little while.
[code][WeaponClass]
ClassLabel = "cannon"
[Properties]
OrdnanceName = "Rep_weap_inf_force_heal_ord"
HUDTag = "hud_health_regen"
RoundsPerClip = "0"
ReloadTime = "0.3"
HeatRecoverRate = "0.2"
HeatThreshold = "0.0"
TriggerSingle = "1"
ShotDelay = "0.5"
HeatPerShot = "0.0"
MaxPressedTime = "0.0"
ZoomMin = "0.0"
ZoomMax = "0.0"
ZoomRate = "0.0"
MinRange = "0"
OptimalRange = "5"
MaxRange = "8"
//Use the offhand shoot_secondary2 anim: (grenade throw, overridden by buff anim)
EnergyDrain = 100.0
InstantPlayFireAnim = 1
OffhandWeapon = 1
LockOnRange = "64.0"
LockTime = "0.0"
AutoAimSize = "2.0"
SalvoCount = "1"
ShotsPerSalvo = "1"
SalvoDelay = "0.0"
SalvoTime = "0.0"
InitialSalvoDelay = "0.5" // must have one or no animation - Mike Z
TargetEnemy = "0"
TargetNeutral = "0"
TargetFriendly = "1"
TargetPerson = "1"
TargetAnimal = "1"
TargetDroid = "1"
TargetVehicle = "0"
TargetBuilding = "0"
FireSound = "force_push_fire"
[/code]
And the ord file for force heal
[code][OrdnanceClass]
ClassLabel = "emitterordnance"
[Properties]
BuffHealthTimer = "3"
BuffHealthRate = "100"
//PlayEffectOnOwner = "com_sfx_buff_regen"
AffectEnemies = "0"
ConeLength = "15"
ConeAngle = "120"
FirstRadius = "0.0"
MaxTargets = "1" // Max number of targets to hit. Chaining is off so the damage will be split between the number of targets
NoChaining = "1" // No chaining - all bolts coming from the attacker
ApplyOnOwnerIfOnOthers = "0"
VehicleScale = "0.0"
ShieldScale = "1.0"
PersonScale = "1.0"
AnimalScale = "1.0"
DroidScale = "1.0"
BuildingScale = "0.0"[/code]
Let me know if you like them and if you use them in a mod map please give me credit.
MasterSaitek009