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.

Pathfinder Z coordinate tolerance

Featured Replies

What is tolerance for Z coordinate inside pathfinder for each type of TypeArea ?

In my experiments POLYAREA_BIGDANGER has not infinite height of cylinder, so I forced to play with Z on Blackspots for make Pathfinder avoid it in mountains or oceans

  • 1 month later...
  • Author

Can't understand why pathfinder goes through blacklisted by POLYAREA_BIGDANGER zones.

For sure Z tolerance I'm testing by folowing code:

bool result;
var path = PathFinder.FindPath(new Vector3(4674.098, 3099.332, 352.9073), out result);


var miniMapLandmarkName = "m";
wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Remove(miniMapLandmarkName);
if (path.Count > 0)
     wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Add(path[0], miniMapLandmarkName, System.Drawing.Color.Aquamarine, 10, miniMapLandmarkName, true);
foreach (var vector3 in path)
{
    if (wManager.wManagerSetting.IsBlackListedZone(vector3))
    wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Add(vector3, miniMapLandmarkName, System.Drawing.Color.Blue, 10, "", true);
    else
    wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Add(vector3, miniMapLandmarkName, System.Drawing.Color.Aquamarine, 10, "", true);
}

And i get image.png.95f438ff3d8722bbdea728e4d23e5c3f.png

Zone is too big to find 100% alternative path.

So what should I do to avoid blacklisted zone?

In POLYAREA_BIGDANGER cost is 500 yards by yard.

If crossing the BigDanger zone has a lower total cost than going around it, the bot will cross the zone.

		m_filter->setAreaCost((int)PolyArea::POLYAREA_GROUND, 10.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_WATER, 120.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_ROAD, 1.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_DOOR, 1.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_GRASS, 20.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_JUMP, 15.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_DANGER, 40.0f);
		m_filter->setAreaCost((int)PolyArea::POLYAREA_BIGDANGER, 500.0f);

You can try to bypass the area (BigDanger area) with "ROAD" type.

By default, "Ground" type is used (with cost of 10)

  • Author

cost calculates for each entry path's point to polyarea? What if point will simultaneously in more than one zone? Will cost adding? I mean overlapping blacklist zones.

The fact that the zones overlap does not change anything.

 

1 - If to reach the destination, the character must do 50 yards in normal areas (ground) and 15 yards in bigdanger areas, then the total cost will be 50*10+15*500 = 8000
2
- If to reach the destination, the character must do 850 yards in normal areas (ground) (to  cross the bigdanger zones), then the total cost will be 850*10 = 8500

The bot will choose option 1 (less costs).

This system is not 100% reliable, especially if you are close (flight distance) to the destination

 

  • Author

Well it seems to be a good new feature - to test not just whether a coordinate belongs to an blacklisted areas as sum of all.

But new difficulty appears: path will more complex to avoid overlaps :-) So.. maybe add custom zone with overlayed AreaCost property in new versions?

Is it possible to add a new type, "IMPOSSIBLE" or something, with cost 2000?
There are scenarios where going around is the only way. BigDanger is good as is. It shouldn't be changed.

  • Author

Well, then we need new "wall" polyarea type with int.max cost and infinity height to build real walls, cuz your first answer was Z tolerance has just 20 yards

  • Author

nice pathfinder bug, now all path are straight as a ruler )) It's exactly bug, having nothing in common with new feature. I just ran few times test from this forum thread

yes, blacklist zones dont help, can you do something with fucking water? Bot again and again try to fly into water on flight mount when bot is dead

  • Author

what means your's "yes" ? I mean POLYAREA_AVOID is good enough for avoid. But wManagerSetting.IsBlackListed() method doesn't take new POLYAREA_AVOID enum.

btw little bit more respect for author! take back your "fucks" and describe detailed your repeatable bug

  • Author

wManager.wManagerSetting.ClearBlacklist();
wManager.wManagerSetting.AddBlackListZone(new Vector3(3437.02344, -2807.998, 231.762161), 100, ContinentId.Northrend, RDManaged.RD.PolyArea.POLYAREA_BIGDANGER, true);
wManager.wManagerSetting.CurrentSetting.AvoidBlacklistedZonesPathFinder = false;

bool result;
var path = PathFinder.FindPath(new Vector3(3215.589, -2845.045, 146.3819), new Vector3(3583.113, -2798.588, 175.9346), out result);

var m = "m";
wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Remove(m);
wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Add(path[0], m, System.Drawing.Color.Aquamarine, 10, m, true);
foreach (var vector3 in path)
{
    var color = wManager.wManagerSetting.IsBlackListedZone(vector3) ? System.Drawing.Color.Red : System.Drawing.Color.Aquamarine;
    wManager.Wow.Forms.UserControlMiniMap.LandmarksMiniMap.Add(vector3, m, color, 10, "", true);
}

image.png.b2c87a5dfe592cf563c76987ac751971.png

@Droidz test it please, smth broke

Here is POLYAREA_AVOID result:

image.png.6c9f48ac7e25ae65f3073d8c85973d37.png

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.