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

Disable SteedCharge while Tping

OctavioCloss

Member
Joined
Aug 2, 2014
Messages
67
Reaction score
0
Hey guys, im having an issue, everything works smooth, but while my Crusader is trying to TP, it cast steedcharge, wich sucks.

Sometimes it ''fail-cast'' TP [It shows like its casting, but for some reason [might be lag] it failed], and then, a massive ammount of steed charge happen until i get disconected :P!

Is there a way to disable it while trying to TP, or..humm, i dont know, to DB to detect my sader couldnt TP properly?

This happens while running bounties [most of the times], and some times, rifts.

I can sleep while rifting, but not doing bounties, since its going to happen, almost 100% of the times VS ''TheButcher'' in A1.
 
This error happens most likely everytime i face butcher, if i get a way to avoid butcher bounties i might be able to run bounties.

So far, i did 8 hours of rifts, w/o any problems. [no TP problems]
 
Also noticed this problem very irritating. Any solution except banning this mission?
 
Well this happens to me during rifting too not just bounties and it doesn't always happen. Not sure what triggers it. Ends up waiting till the inactivity timer kicks in
 
I have a small fix that should help you for now. You will have to edit two trinity files: CombatCrusader.cs and PlayerMover.cs

In CombatCrusader.cs, remove the following lines:

Line 22-28
Code:
            if (!UseOOCBuff && IsCurrentlyAvoiding)
            {
                if (CanCastSteedChargeOutOfCombat())
                {
                    return new TrinityPower(SNOPower.X1_Crusader_SteedCharge);
                }
            }

Line 220-223 (Line numbers after the previous lines were removed)
Code:
                if (CanCast(SNOPower.X1_Crusader_SteedCharge) && CrusaderSettings.SteedChargeOOC)
                {
                    return new TrinityPower(SNOPower.X1_Crusader_SteedCharge);
                }

Line 285-288 (Line numbers after the previous lines were removed)
Code:
        private static bool CanCastSteedChargeOutOfCombat()
        {
            return CanCast(SNOPower.X1_Crusader_SteedCharge) && CrusaderSettings.SteedChargeOOC && Player.MovementSpeed > 0 && !Player.IsInTown;
        }



Now, once those are removed, open up PlayerMover.cs and add in this segment into line 528 (just below Furious Charge code):

Code:
	//Steed Charge OOC for Crusader
		if (Trinity.Settings.Combat.Crusader.SteedChargeOOC && Trinity.Hotbar.Contains(SNOPower.X1_Crusader_SteedCharge) && !bTooMuchZChange &&
                    destinationDistance >= 20f &&
                    PowerManager.CanCast(SNOPower.X1_Crusader_SteedCharge) && !ShrinesInArea(vMoveToTarget))
                {
                    Vector3 vThisTarget = vMoveToTarget;
                    if (destinationDistance > 35f)
                        vThisTarget = MathEx.CalculatePointFrom(vMoveToTarget, MyPosition, 35f);
                    ZetaDia.Me.UsePower(SNOPower.X1_Crusader_SteedCharge, vThisTarget, Trinity.CurrentWorldDynamicId, -1);
                    SpellHistory.RecordSpell(SNOPower.X1_Crusader_SteedCharge);
                    if (Trinity.Settings.Advanced.LogCategories.HasFlag(LogCategory.Movement))
                        Logger.Log(TrinityLogLevel.Debug, LogCategory.Movement, "Using Steed Charge for OOC movement, distance={0}", destinationDistance);
                    return;
                }

Now, the problem with this is that it wont use steed charge during combat to avoid mechanics, however it fixes your tp issues as far as im aware and will still use steed charge OOC.
Make sure you have movement while OOC checked aswell as Steed Charge OOC checked.
 
Tested 2 games in a row vs butcher - Bot keeps using steed charge, not tping. Not working : [
 
I dont use steed charge since its a waste of space, but why not just remove it in trinity?
uncheck Use Steed Charge OOC, under combat?
 
Found a workaround:

You need:
Swiftmount
Use Lord Commander Passive.
Get at least 55+%cdr and use Endurancee

This will achieve perma steed charge, and wont hijack your TP's as much as the old situation did. It'll let you TP while using steedcharge.

Stuck rate before 75%

Stuck rate now: around 25% - all of them, mainly VS Kill Butcher. [Wich means if you get a game w/o butcher, you got the cache 100%. If butcher, around 75% chances
 
Or you could just check if we are trying to tp... so you disable steedcharge OOC...

Search "CanCastSteedChargeOutOfCombat()" in Abilities/Crusader.cs

and return this :

Code:
return CanCast(SNOPower.X1_Crusader_SteedCharge) && CrusaderSettings.SteedChargeOOC && Player.MovementSpeed > 0 && !Player.IsInTown [COLOR="#FF0000"]&& !Trinity.TownRun.IsTryingToTownPortal()[/COLOR];

I'm pretty sure this would solve the whole problem...

/EDIT/

btw, remove the shit you've added in PlayerMover.cs this is ridiculous.
 
Last edited:
would you please upload a crusader combat file here? I tried doing what you just told me to do, and its not working, trinity get a crapload of errors : [

I have this:

// Buffs
if (UseOOCBuff)
{
if (CanCast(SNOPower.X1_Crusader_SteedCharge) && CrusaderSettings.SteedChargeOOC);
{

}
 
Last edited:
would you please upload a crusader combat file here? I tried doing what you just told me to do, and its not working, trinity get a crapload of errors : [

I have this:

// Buffs
if (UseOOCBuff)
{
if (CanCast(SNOPower.X1_Crusader_SteedCharge) && CrusaderSettings.SteedChargeOOC);
{

}

search for return CanCast(SNOPower.X1_Crusader_SteedCharge)
and place tonys code in


ok getting error too <.<

Code:
Compiler Error: Plugins\Trinity\Combat\Abilities\CrusaderCombat.cs(298,157) : error CS0117: 'Trinity.Trinity' does not contain a definition for 'TownRun'
 
Last edited:
search for return CanCast(SNOPower.X1_Crusader_SteedCharge)
and place tonys code in


ok getting error too <.<

Code:
Compiler Error: Plugins\Trinity\Combat\Abilities\CrusaderCombat.cs(298,157) : error CS0117: 'Trinity.Trinity' does not contain a definition for 'TownRun'

Remove "Trinity." >

Code:
!TownRun.IsTryingToTownPortal()
 
Back
Top