Jump to content
This site uses cookies! Learn More

This site uses cookies!

By continuing to use this site, you agree to allow us to store cookies on your computer. :)

  • Add offmesh (forced) for Barrens Elevator


    Matenia
    • Version: All Product: WRobot General Type: Bug Status: Fixed

    Hey Droidz,

    recently, you added the ability to have OffMesh connections even when wRobot can make a path.
    Can you add the barrens elevator (Vanilla => WotLK) to it server side? I am currently having issues with intercepting movement events. Sometimes they are just not firing correctly and I can't intercept to take the elevator. If I pause/unpause the bot, it works again.

    I have similar problems with tram (but it's not that bad and I can probably somehow fix it).

    Important coordinates:
     

    private static Vector3 _topStart = new Vector3(-4659.659, -1828.934, 85.31983); // position of character at elevator top
    private static Vector3 _bottomStart = new Vector3(-4668.06, -1822.035, -44.17824); // position of character after leaving elevator at bottom
    
    private static Vector3 _topPositionOnElevator = new Vector3(-4665.093, -1827.918, 85.44527); // position of character on elevator 
    private static Vector3 _bottomPositionOnElevator = new Vector3(-4665.786, -1827.557, -43.85461); // position of character on elevator 
    
    private static Vector3 _topElevatorPosition = new Vector3(-4665.43f, -1827.67f, 85.4053f); // elevator standing still (reached top)
    private static Vector3 _bottomElevatorPosition = new Vector3(-4665.43f, -1827.67f, -43.89458f); // elevator standing still (reached bottom)

     


    Attached Files:


    User Feedback

    Recommended Comments

                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-4661.469, -1852.599, 85.31993),
                    new Vector3(-4670.487, -1850.974, 85.44978) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, 85.40948)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-4676.191, -1854.226, -44.17822) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, -43.52628)) < 0.5) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor, PathFinder.OffMeshConnectionType.Unidirectional, true),
    
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-4676.191, -1854.226, -44.17822),
                    new Vector3(-4670.487, -1850.974, -44.1039) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, -43.52628)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-4661.469, -1852.599, 85.31993) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, 85.40948)) < 0.5) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor, PathFinder.OffMeshConnectionType.Unidirectional, true),
    
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-4661.469, -1852.599, 85.31993),
                    new Vector3(-4670.487, -1850.974, 85.44978) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, 85.40948)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-4676.191, -1854.226, -44.17822) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, -43.52628)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-4698.969, -1859.781, -47.16851),
                    new Vector3(-4700.999, -1823.182, -55.39115),
                    new Vector3(-4780.597, -1785.426, -48.56682),
                    new Vector3(-4850.14, -1824.823, -52.75588),
                    new Vector3(-4954.374, -1754.894, -58.46568),
                    new Vector3(-5032.556, -1765.546, -65.54012),
                    new Vector3(-5057.792, -1785.469, -59.28477),
                    new Vector3(-5009.802, -1892.393, 3.451542),
                    new Vector3(-4908.038, -1879.857, 29.39223),
                    new Vector3(-4892.369, -1838.979, 54.76697),
                    new Vector3(-4805.432, -1854.13, 78.42011),
                    new Vector3(-4791.457, -1850.512, 77.53859),
                    new Vector3(-4769.437, -1860.235, 86.28339),
                    new Vector3(-4788.422, -1883.129, 90.03716),
                    new Vector3(-4889.425, -1972.254, 91.88503),
                    new Vector3(-5027.259, -1938.423, 90.68459),
                }, (int)ContinentId.Kalimdor, PathFinder.OffMeshConnectionType.Unidirectional, true),
    
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-5027.259, -1938.423, 90.68459),
                    new Vector3(-4889.425, -1972.254, 91.88503),
                    new Vector3(-4788.422, -1883.129, 90.03716),
                    new Vector3(-4769.437, -1860.235, 86.28339),
                    new Vector3(-4791.457, -1850.512, 77.53859),
                    new Vector3(-4805.432, -1854.13, 78.42011),
                    new Vector3(-4892.369, -1838.979, 54.76697),
                    new Vector3(-4908.038, -1879.857, 29.39223),
                    new Vector3(-5009.802, -1892.393, 3.451542),
                    new Vector3(-5057.792, -1785.469, -59.28477),
                    new Vector3(-5032.556, -1765.546, -65.54012),
                    new Vector3(-4954.374, -1754.894, -58.46568),
                    new Vector3(-4850.14, -1824.823, -52.75588),
                    new Vector3(-4780.597, -1785.426, -48.56682),
                    new Vector3(-4700.999, -1823.182, -55.39115),
                    new Vector3(-4698.969, -1859.781, -47.16851),
                    new Vector3(-4676.191, -1854.226, -44.17822),
                    new Vector3(-4670.487, -1850.974, -44.1039) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, -43.52628)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-4661.469, -1852.599, 85.31993) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-4670.77, -1849.61, 85.40948)) < 0.5) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor, PathFinder.OffMeshConnectionType.Unidirectional, true),
    
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-5387.5, -2483.334, 88.93),
                    new Vector3(-5383.036, -2488.412, 89.06) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-5382.5, -2489.42, 89.02528)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-5375.26, -2489.24, -40.56239) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-5382.5, -2489.42, -40.5284)) < 0.5) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor, PathFinder.OffMeshConnectionType.Unidirectional, true),
    
                new PathFinder.OffMeshConnection(new List<Vector3>
                {
                    new Vector3(-5375.26, -2489.24, -40.56239),
                    new Vector3(-5383.036, -2488.412, -40.48) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-5382.5, -2489.42, -40.5284)) < 0.5) break; Thread.Sleep(10); }"},
                    new Vector3(-5387.5, -2483.334, 88.93) {Action = "c#: Logging.WriteNavigator(\"[OffMeshConnection] Barrens Elevator > Wait to leave Elevator\"); while (Conditions.InGameAndConnectedAndProductStartedNotInPause) { var elevator = ObjectManager.GetWoWGameObjectByEntry(11899).OrderBy(o => o.GetDistance).FirstOrDefault(); if (elevator != null && elevator.IsValid && elevator.Position.DistanceTo(new Vector3(-5382.5, -2489.42, 89.02528)) < 0.5) break; Thread.Sleep(10); }"},
                }, (int)ContinentId.Kalimdor, PathFinder.OffMeshConnectionType.Unidirectional, true),
    
            };
    
            //wManager.Wow.Helpers.PathFinder.OffMeshConnections.MeshConnection.Clear();
            wManager.Wow.Helpers.PathFinder.OffMeshConnections.AddRange(connections);

    I'll add it to the server

    Share this comment


    Link to comment
    Share on other sites


    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...