Jump to content
  • [vanilla] something is fundamentaly wrong with the barrens-to-1k elevator


    eniac86
    • Version: All Product: WRobot General Type: Bug Status: Not a Bug

    I'm not even sure what is going on here the interaction of the bot with this elevator is messed up in so many ways.
    It seems like the navigation-system is completely broken when interacting with this elevatore, but maybe it even only has to do with freewind post and it's elevator.

    Let's say the bot is somewhere in 1k-needles and wants to take the flightmaster or doing a townrun (with freewind post being the nearest) then in some cases it walks up the slope to freewindpost and in some cases it runs to the elevator
    to the barrens.It will take the elevator up to the barrens then and try to walk down again through the entrance aread of razorfen downs, which of cause is filled with elite mods and if you level is not significantly higher will result in a dieing loop.

    from what i have observed this seems to be what is going on but sometimes the "going up to barrend walking into elites"-thingy even happen in other cases.
    worst thing is while babysitting the bot it is even hard to get the bot to stop that shit, because most of the time it will run back to that shitty elevator from the weirdest places.



    User Feedback

    Recommended Comments

    Droidz

    Posted

    Hello, Can you share log (or/and video)

    Matenia

    Posted (edited)

    This is a feature of my plugin, that must've broken in one of the recent updates.
    wRobot can not take elevators or anything by default.

    From what I can tell, it's a bug/problem with wRobot not resetting movement correctly. Once I've taken the elevator, I want wRobot to calculate a new path from scratch whereever it needs to go. So I pause the bot and unpause it. Then it tries to go back to the last spot it was at/wanted to go to before and probably takes the elevator back down. This used to work just fine, but seems to not work well anymore. Maybe Droidz can shed some light on how to reset movement entirely.

    That being said, without the plugin you'd run into the elites 100% of the time.

    Edited by Matenia
    Droidz

    Posted

    On 5/11/2018 at 10:15 AM, Matenia said:

    This is a feature of my plugin, that must've broken in one of the recent updates.
    wRobot can not take elevators or anything by default.

    From what I can tell, it's a bug/problem with wRobot not resetting movement correctly. Once I've taken the elevator, I want wRobot to calculate a new path from scratch whereever it needs to go. So I pause the bot and unpause it. Then it tries to go back to the last spot it was at/wanted to go to before and probably takes the elevator back down. This used to work just fine, but seems to not work well anymore. Maybe Droidz can shed some light on how to reset movement entirely.

    That being said, without the plugin you'd run into the elites 100% of the time.

    Use offmeshconnection and action, by sample for thunder bluff, I use in WRobot code:

                // Thunder bluff elevator
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-1280.236, 196.0687, 68.55207),
                    new Vector3(-1286.483, 189.3813, 68.87579) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Thunder Bluff > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(4170).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.Z <= 69) break; Thread.Sleep(10); }"},
                    new Vector3(-1285.303, 179.1285, 129.9943) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Thunder Bluff > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(4170).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.Z >= 130f) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor),
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-1285.303, 179.1285, 129.9943),
                    new Vector3(-1286.483, 189.3813, 130.1201) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Thunder Bluff > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(4170).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.Z >= 130) break; Thread.Sleep(10); }"},
                    new Vector3(-1280.236, 196.0687, 68.55207) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Thunder Bluff > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(4170).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.Z <= 69) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor),

     

    Matenia

    Posted (edited)

    How can I know which coordinate the path ends by? The problem with the barrens elevator is that wRobot can make a path. But the path goes through a bunch of highlevel elite. So from what I understand, it will never even load OffMeshConnection.
    Same problem for Darnassus portal and ships, the bot will just try to swim or walk up a wall. Doesn't realize there is no path available. 

    Edited by Matenia
    Droidz

    Posted

    Yes if WRobot think than he can make path you cannot use offmeshconnection.

    I quickly looked your code, try to use codes like (before to exit "MovementEventsOnOnMovementPulse" if you have used elevator)

    GoToTask.ToPosition(points.Last());
    cancelable.Cancel = true;

    or

    var p = PathFinder.FindPath(points.Last());
    points.Clear();
    points.AddRange(p);

    I'll try to go to the barrens elevator 

    Matenia

    Posted

    I updated my plugin, hopefully this resolves it.
    Canceling the event alone seems to be enough.



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • Create New...