Skip to content

navigation: link teleport nodes to their parent's cast origin (Theta*) - #72

Open
ResurrectedTrader wants to merge 1 commit into
mainfrom
teleport-theta-star
Open

ResurrectedTrader wants to merge 1 commit into
mainfrom
teleport-theta-star

Conversation

@ResurrectedTrader

Copy link
Copy Markdown
Owner

Summary

Teleport path search: link a node to its parent's own cast origin whenever that is still within range (Theta*-style).

Where no ring jump makes progress (typically along a wall) the search falls back to 8-way walk steps and charged each a full cast, so it picked and returned wall crawls that scripts then cast one cell at a time. Walk steps now cost nothing until they outgrow one cast, and the emitted chain is the cast sequence itself.

On the 20 real-map fixtures (1140 random pairs, hWeight 3.0): 40.5% fewer casts at radius 40, 40.7% at radius 20, about half the search time; fewer casts than both a reference-style post-reduction of the old search and the reference d2bs reducer.

Adds TeleportAStarTest cases for the wall crawl.

Verification

  • build.ps1 Release (Win32, the 1.14d DLL): builds
  • build.ps1 test: 170/170 pass
  • build.ps1 check-format: clean

🤖 Generated with Claude Code

Where no ring jump makes progress - typically along a wall - the teleport
search falls back to 8-way walk steps, and charged each one a full cast.
It so believed a crawl along a wall cost a cast per cell, picked routes on
that belief, and returned the crawl, which scripts then cast one cell at
a time.

A node is now linked to its parent's own cast origin whenever that is
still within range, so walk steps cost nothing until they outgrow one
cast and the emitted chain is the cast sequence itself. On the 20 real-
map fixtures (1140 random pairs, hWeight 3.0) this cuts casts by 40.5%
at radius 40 and 40.7% at radius 20, finds paths in about half the
time, and beats both a reference-style post-reduction of the old search
and the reference d2bs reducer on cast count.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant