Skip to content

Conversation

@Avanatiker
Copy link
Member

@Avanatiker Avanatiker commented Apr 8, 2025

Introducing an algorithm solving adaptive pathfinding in partially observable dynamic environments using spatial partitioning, iterative pathing using Lazy D* Lite and clearance based path refining using Lazy θ* and Catmull Rom splines.

ToDo:

  • Any angle not yet optimal. Look ahead may go too far and lengthen another shortcut next

@github-actions github-actions bot added the triage Requires labelling or review label Apr 8, 2025
@Avanatiker Avanatiker requested a review from Copilot April 15, 2025 01:24
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 28 out of 28 changed files in this pull request and generated 2 comments.

Comment on lines +95 to +96
// cost == Double.POSITIVE_INFINITY -> BreakMove(checkingPos, hCost, nodeType, currentFeetY, cost)
// (currentFeetY - origin.feetY) > player.stepHeight -> ParkourMove(checkingPos, hCost, nodeType, currentFeetY, cost)
Copy link

Copilot AI Apr 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] There is commented-out code for handling special move cases (e.g. BreakMove and ParkourMove). If these are no longer needed, consider removing them to improve code clarity.

Suggested change
// cost == Double.POSITIVE_INFINITY -> BreakMove(checkingPos, hCost, nodeType, currentFeetY, cost)
// (currentFeetY - origin.feetY) > player.stepHeight -> ParkourMove(checkingPos, hCost, nodeType, currentFeetY, cost)

Copilot uses AI. Check for mistakes.
Introduce extensive path consistency tests for scenarios with different graph connectivities and blocked nodes using D* Lite. Add graph pruning logic to exclude nodes marked as blocked and enhance debugging utilities for path validation.
Abstracted grid connectivity into reusable methods for cleaner and more flexible code. Enhanced block update listener to skip redundant updates and improved logging clarity. Simplified pathfinding and traversal checks for better maintainability.
@Avanatiker Avanatiker force-pushed the feature/pathfinder branch from 30dd2c6 to 63bc635 Compare May 2, 2025 21:04
@Avanatiker Avanatiker closed this Aug 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

triage Requires labelling or review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants