Skip to content

Conversation

@suprohub
Copy link
Contributor

@suprohub suprohub commented Nov 1, 2025

This pr adds advanced parkour system, where bot can jump in all directions

@mat-1
Copy link
Collaborator

mat-1 commented Nov 1, 2025

Thanks!

Though, I'd recommend splitting up the changes that you're planning into more PRs to make for cleaner diffs and to make them easier for me to review.

Also, fyi, I've been holding off on making large updates to the pathfinder until there's a realistic benchmark for it. Azalea's pathfinder is several times faster than Baritone in some cases and I'd kind of like to keep it that way. :3

This is why pathfinding through water isn't implemented yet -- it's fairly easy to implement with custom moves but I think doing it without hurting performance might be hard, and I'd like to have an easy way to check that.

There are a couple benchmarks for the pathfinder, and they are useful for checking some types of changes, but they're not realistic. I think a good way to add a realistic benchmark would be by copying a region file (or a few) from a Minecraft world into Azalea's benches directory, and having a benchmark that parses that region file into Azalea's in-memory world representation and calculates a path over it.

@suprohub
Copy link
Contributor Author

suprohub commented Nov 2, 2025

Ok

@suprohub suprohub marked this pull request as ready for review November 2, 2025 07:04
@suprohub
Copy link
Contributor Author

suprohub commented Nov 2, 2025

I think litematic is more good becas you can use only special regions and not import all anvil regions which is ver big 💀
I tested, maybe works.

noviui@suprohub ~/R/azalea (improved-pathfinder) [SIGINT]> cargo bench --bench realistic_one
    Finished `bench` profile [optimized + debuginfo] target(s) in 0.16s
     Running benches/realistic_one.rs (target/release/deps/realistic_one-4063cdf73c0993a9)
Bench: Getting over it, Start: 103 6 120, End: 11 86 15
Benchmarking Getting over it: Warming up for 3.0000 s
Warning: Unable to complete 100 samples in 5.0s. You may wish to increase target time to 8.1s, or reduce sample count to 60.
Getting over it         time:   [80.290 ms 80.502 ms 80.738 ms]
                        change: [−6.6241% −4.4933% −2.9198%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high severe

Bench: Tiny, Start: 1 1 0, End: 1 1 23
Tiny                    time:   [2.2922 ms 2.2978 ms 2.3050 ms]
                        change: [−13.021% −8.9040% −5.6421%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
  1 (1.00%) low mild
  3 (3.00%) high mild
  9 (9.00%) high severe

Bench: The Jumbo LABYRINTH (by TriscuitsAllDay), Start: 105 1 109, End: 2 1 46
The Jumbo LABYRINTH (by TriscuitsAllDay)
                        time:   [47.741 ms 47.847 ms 47.975 ms]
Found 10 outliers among 100 measurements (10.00%)
  6 (6.00%) high mild
  4 (4.00%) high severe

idk how it knows what performance was improved maybe i randomly run 2 times and forgot

@suprohub
Copy link
Contributor Author

suprohub commented Nov 2, 2025

Tiny is tiny parkour map, getting over it its map where you need climb on big mountain and labyrinth its just labyrinth

@suprohub
Copy link
Contributor Author

suprohub commented Nov 3, 2025

Will be cool make func what predicts capacity of call_successor_fn vec:

let mut edges = Vec::with_capacity(16);

Capacity 16 is no good. If i make 32 getting over it alredy go to 32% performance boost.
but 32 not good too for small pathfindings, so we need alghoritm what predicts approx complexety

@suprohub
Copy link
Contributor Author

suprohub commented Nov 4, 2025

Where are you?

@mat-1
Copy link
Collaborator

mat-1 commented Nov 4, 2025

Hi, I'm sorry, I'm currently pretty overwhelmed and do not have time to review this (also why I haven't made any substantial commits to Azalea in a few weeks). I'll review this when I have time.

@suprohub
Copy link
Contributor Author

suprohub commented Nov 4, 2025

oka

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.

2 participants