Skip to content

Conversation

@Xian55
Copy link
Owner

@Xian55 Xian55 commented Mar 9, 2025

Please look at the Readme.md file for the introduced changes high level changes. Regarding Auto NPC Route

High Improvements to V1 Local and Remote Pathfinder :

  • PPather: Be able to traverse over Models, Objects and Water surfaces more reliably.
  • PPather: Vanilla and TBC fixed holes in the water mesh. Wotlk has to be done later on with other PR!
  • PPather: Simplify the logic to determine if a given location is standable by the player.
  • PPather: Made most of the Measurement Units derived from ToonHeight and ToonSize
  • PPather: Considers way less Spots when attempting to looking for a viable path for traversal.
  • PPather: Better obstacle avoidance formulas.
  • PPather: When traversing in a narrow doorway/hallway should stick to the middle more likely.
  • PPather: Less likely to fall of cliffs and edges ?!
  • PPather: Pathfinder be able to explore and traverse buildings(Object) more reliably.

Addon Changes:

Npc Goals changes:

  • JSON: Added notable NPCs (World locations) to every zone up until Wrath (Json\npclocations)
  • NpcTypes: Flightmaster, Innkeeper, Repair, Vendor, Trainer

Core Changes:

  • RequirementFactory: Added Requirements for PathSettings like PathDist, PathDist_x, PathEnd_Any, PathEnd_x
  • PathSettings: Has Requirement and SideActivityRequirements essentially can limit when to search for enemy targets.

Xian55 added 30 commits February 6, 2025 21:37
…hen the feature is enabled can use the /target <npc_name>.
PathingAPI: PathGraph: When location requested with v.z = 0, then try to expand the search area.
…called multiple times and switching target just before reaching it!
…in he 2D plane mark it as success. This can help when we are searching for destinations with Z(height) component is zero.
… the zone. Helps to mitigate stuck from navigation
…toonSize! Also use multipilers for StepLength(s)
… a hack! Only counts as indoors when the TriangleType is Object
PPather: ModelManager: use SearchValues for extension match
PPather: ModelFile: Span based BinaryReader
Significant speed up. Allows to step on Objects and Models more easily.

Putting more emphasis on Obstacle avoidance filtering out small below waist triangles.

When instantiating the TriangleMatrix use Parallel.For to speed up the computation.

When Loading Chunks dont reach out to File.Exists rather bookmark in memory.

When Connecting two Spots make a simple LineOfSightExists check in prior.
Core: RequirementFactory: Be able to use  'PathDist' Requirement for local context.
@Xian55 Xian55 added documentation Improvements or additions to documentation bugfix This pull request fixes an issue. refactor This ticket concerns the possible simplification of code/data. enhancement This pull request implements a new feature. labels Mar 9, 2025
@Xian55 Xian55 merged commit 92ce2c5 into dev Mar 9, 2025
1 check passed
@Xian55 Xian55 deleted the exp/core-adhoc-find-closest-npc-by-type branch March 9, 2025 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugfix This pull request fixes an issue. documentation Improvements or additions to documentation enhancement This pull request implements a new feature. refactor This ticket concerns the possible simplification of code/data.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants