Skip to content
View in the app

A better way to browse. Learn more.

WRobot

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Move or Strafe during combat? Open Quester by itself?

Featured Replies

I know of the http://wrobot.eu/files/file/303-move-during-combat/ plugin but looking for something more specific? I was wondering if there's a piece of code I can run to make my character strafe if fighting a certain NPC or if I get a certain debuff? Or maybe even just on a timer to move every X seconds X feet/meters? Basically, there's a specific fight where a debuff I'm standing in kills me, all I have to do is move.

 

Also, is there a way to run the Easy Quests Editor without it being tied to WRobot? Like how the fight class editor is; I can have that open and not have WRobot running.

Hello, like this:

 wManager.Events.FightEvents.OnFightLoop += (unit, cancelable) =>
        {
            var me = wManager.Wow.ObjectManager.ObjectManager.Me;
            var target = wManager.Wow.ObjectManager.ObjectManager.Target;
            if (me.IsAlive && target.IsAlive && !me.IsCast && me.HaveBuff("Buff name"))
            {
                wManager.Wow.Helpers.Keybindings.PressKeybindings(wManager.Wow.Enums.Keybindings.STRAFELEFT, 1000 * 3); // strage left during 3 secondes
            }
        };

(run this code only one time by wrobot session)

  • 2 months later...
On 8-11-2016 at 5:56 PM, Droidz said:

Hello, like this:


 wManager.Events.FightEvents.OnFightLoop += (unit, cancelable) =>
        {
            var me = wManager.Wow.ObjectManager.ObjectManager.Me;
            var target = wManager.Wow.ObjectManager.ObjectManager.Target;
            if (me.IsAlive && target.IsAlive && !me.IsCast && me.HaveBuff("Buff name"))
            {
                wManager.Wow.Helpers.Keybindings.PressKeybindings(wManager.Wow.Enums.Keybindings.STRAFELEFT, 1000 * 3); // strage left during 3 secondes
            }
        };

(run this code only one time by wrobot session)

How to let this code run once and how to let it move to a position xyz?

1 hour ago, Fableonian said:

How to let this code run once and how to let it move to a position xyz?

// Position we want to move to
Vector3 position = new Vector3(1, 1, 1);

// Move to the given position
MovementManager.Go(PathFinder.FindPath(position), false);

// Wait
while (MovementManager.InMovement && Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause && ObjectManager.Me.HaveBuff(new Spell("NameOfTheSpell").Ids)
{
  // Wait follow path
  Thread.Sleep(100);
}

This is an example for the movement to a specified position. Hope it helps.

Edit: Aw droidz was faster :D

4 hours ago, Droidz said:

You can replace PressKey... by


wManager.Wow.Helpers.MovementManager.MoveTo(1, 2, 3);

 

It seems that it wants to work, but i think problem is now that since the condition is in combat that char wants to move and fight at the same time so you get a shakescreen.

Got it working now

This is how my code looks like.

 

wManager.Events.FightEvents.OnFightLoop += (unit, cancelable) =>
        {
           var pos = 1;
            var me = wManager.Wow.ObjectManager.ObjectManager.Me;
            var target = wManager.Wow.ObjectManager.ObjectManager.Target;
            if (me.IsAlive && target.IsAlive && pos == 1)
            {
Vector3 position = new Vector3(3073.848f, -3116.693f, 294.0692f);

// Move to the given position
MovementManager.Go(PathFinder.FindPath(position), false);

// Wait
while (MovementManager.InMovement && Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause)
{
  // Wait follow path
  Thread.Sleep(3000);
pos = 0;
}
            }
        };

Char runs in position and when in position it kept on trying to keep that position while in combat.

So to let it run once i added an extra var to it called 'pos' which i set to 1

After the 3sec he gets in position i change it to 0 so the if condition returns false.

You also could use this code:
 

// Wait
while (MovementManager.InMovement && Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause && ObjectManager.Me.Position.DistanceTo(position) > 1)
{
  // Wait follow path                                                                                                                                         
  Thread.Sleep(100);
}

// Still moving?
if (MovementManager.InMovement)
{
  // Stop
  MovementManager.StopMove();
}

Edit: Oh nvm the problem is that you are using an event.

You could also could check if you are still at the right position with:
 

// Do we need to move?
if(ObjectManager.Me.Position.DistanceTo(position) > 1)
{
  // Move
}

 

11 hours ago, iMod said:

You also could use this code:
 


// Wait
while (MovementManager.InMovement && Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause && ObjectManager.Me.Position.DistanceTo(position) > 1)
{
  // Wait follow path                                                                                                                                         
  Thread.Sleep(100);
}

// Still moving?
if (MovementManager.InMovement)
{
  // Stop
  MovementManager.StopMove();
}

Edit: Oh nvm the problem is that you are using an event.

You could also could check if you are still at the right position with:
 


// Do we need to move?
if(ObjectManager.Me.Position.DistanceTo(position) > 1)
{
  // Move
}

 

Is it possible to add an condition for a specific mob or boss

if (me.IsAlive && target.IsAlive && !me.IsCast && me.HaveBuff("Buff name"))

i want to add in this line a condition to only execute if fighting target (id) or (name)

  • 11 months later...

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.