What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

Wave of Force code help

Radziu

Member
Joined
Sep 8, 2012
Messages
205
Reaction score
15
**Wave of Force code help**Fixed//Meteor help Please

Hello,
I am trying to have Wave of Force//Heat Wave be a "spammable" primary attack. My arcane power regen/+on crit/total allows me to just spam the spell as a primary. Unfortunately DB/Trinity only uses the spell very seldom, as if it thinks it is on like a 5-7 second cool-down.
I changed the code a little to elites within 15 yard, 1 or more, and any mob 15 yard, 1 or more. No avail. Please help!
I am no coding guy at all, just reading it as it is and playing with numbers.
Thanks!

// Wave of force
if (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 20 && CombatBase.CanCast(SNOPower.Wizard_WaveOfForce) &&
(TargetUtil.AnyElitesInRange(15, 1) || TargetUtil.AnyMobsInRange(15, 1) || Player.CurrentHealthPct >= .9 || (CurrentTarget.IsBossOrEliteRareUnique && CurrentTarget.RadiusDistance <= 15f)))
{
return new TrinityPower(SNOPower.Wizard_WaveOfForce, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 1, 2, WAIT_FOR_ANIM);
}




This code previously posted by someone does not help


// Wave of Force
if (!UseOOCBuff && !Player.IsIncapacitated && CombatBase.CanCast(SNOPower.Wizard_WaveOfForce, CombatBase.CanCastFlags.NoTimer) && Player.PrimaryResource >= 25 &&
(TargetUtil.AnyMobsInRange(15) && CurrentTarget.RadiusDistance <= 15f) &&
PowerManager.CanCast(SNOPower.Wizard_WaveOfForce))
{
return new TrinityPower(SNOPower.Wizard_WaveOfForce, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 1, 2, WAIT_FOR_ANIM);
}
}
 
Last edited:
if (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 25 && TimeSinceUse(SNOPower.Wizard_WaveOfForce) >= 1000 &&
(TargetUtil.AnyElitesInRange(14, 1) || TargetUtil.AnyMobsInRange(14, 1) || (CurrentTarget.IsBossOrEliteRareUnique && CurrentTarget.RadiusDistance <= 14f)))
{
return new TrinityPower(SNOPower.Wizard_WaveOfForce, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 1, 2, WAIT_FOR_ANIM);
}
 
if (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 25 && TimeSinceUse(SNOPower.Wizard_WaveOfForce) >= 1000 &&
(TargetUtil.AnyElitesInRange(14, 1) || TargetUtil.AnyMobsInRange(14, 1) || (CurrentTarget.IsBossOrEliteRareUnique && CurrentTarget.RadiusDistance <= 14f)))
{
return new TrinityPower(SNOPower.Wizard_WaveOfForce, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 1, 2, WAIT_FOR_ANIM);
}


It works!
Thanks cowabunga!! Changed my TimeSinceUse to 600 as I have 1.71 attack/s, and primary resource to >= 20 due to fire skills resource reduction

Now if only Trinity used Meteor, any of the fire runes, currently does not use it at all...
Here is the current code, if anyone knows how to edit to use Meteor//Meteor Shower for example...

// Meteor
if (!UseOOCBuff && !Player.IsIncapacitated && !arcaneDynamoPassiveReady && CombatBase.CanCast(SNOPower.Wizard_Meteor, CombatBase.CanCastFlags.NoTimer) &&
(TargetUtil.EliteOrTrashInRange(65) || TargetUtil.ClusterExists(15f, 65, 2, true)))
{
return new TrinityPower(SNOPower.Wizard_Meteor, 65f, bestMeteorClusterUnit.Position);
}
 
Last edited:
if (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 25 && TimeSinceUse(SNOPower.Wizard_WaveOfForce) >= 1000 &&
(TargetUtil.AnyElitesInRange(14, 1) || TargetUtil.AnyMobsInRange(14, 1) || (CurrentTarget.IsBossOrEliteRareUnique && CurrentTarget.RadiusDistance <= 14f)))
{
return new TrinityPower(SNOPower.Wizard_WaveOfForce, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 1, 2, WAIT_FOR_ANIM);
}

Code:
                bool hasStaticPulse = HotbarSkills.AssignedSkills.Any(s => s.Power == SNOPower.Wizard_WaveOfForce && s.RuneIndex == 4);
                bool hasHeatWave = HotbarSkills.AssignedSkills.Any(s => s.Power == SNOPower.Wizard_WaveOfForce && s.RuneIndex == 5);
                // Wave of force
								if (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 25 && hasStaticPulse && ((CurrentTarget.IsBossOrEliteRareUnique && CurrentTarget.RadiusDistance <= 14f) && TimeSinceUse(SNOPower.Wizard_WaveOfForce) >= 4000)
								|| (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 25 && (hasStaticPulse || hasHeatWave) && (TargetUtil.AnyElitesInRange(14, 2) || TargetUtil.AnyMobsInRange(14, 3) && TimeSinceUse(SNOPower.Wizard_WaveOfForce) >= 450))
								|| (!UseOOCBuff && !Player.IsIncapacitated && Player.PrimaryResource >= 25 && (hasHeatWave) && ((CurrentTarget.IsBossOrEliteRareUnique && CurrentTarget.RadiusDistance <= 14f) && TimeSinceUse(SNOPower.Wizard_WaveOfForce) >= 450)))								
								{
								return new TrinityPower(SNOPower.Wizard_WaveOfForce, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 1, 2, WAIT_FOR_ANIM);
								}

What it does:
If you are using Static Pulse it will SPAM if there are more then 2 elites or more then 3 normal mobs. For uniques and boss's it will cast once every 4 seconds to retain the 15% damage buff static wave offers but use signature spell's to finish off boss's as that makes more sense because we can't generate enough arcane power from a single target...

If you are using Heat Wave it will SPAM same as above but it will also SPAM in against Uniques & Boss's.

TimeSinceUse you need to adjust depending on your attack speed haven't figured out how do it in a more elegant way..

Should proberbly also add the rest of the runes and normal spell usage but oh well this is for close combat wizards who cares about the rest:)
 
Back
Top