Comments (4)
Done! e0f2159
from baritone.
Here's a gotcha, 30-minutes-ago-self. If the next path is allowed to start anywhere along the current path it wants, it might start from a position that it's already passed.
So there's a tradeoff here. The earlier you calculate the path, the more breathing room you have to calculate the next one. But also, the earlier you calculate it, the fewer chunks are loaded in the direction you're going in. (this is why old MineBot next planning was so dumb: it starting calculating the next segment immediately after current finished calculating and started executing). So, right now path calculation takes a max of 4 seconds, and to account for fluctuations between cost calculation and actual tick time, we start calculating the next path 150 ticks out (7.5 seconds). So, theoretically, we could start calculating at 150 ticks out, then allow the last 3 seconds of path to be valid starting points for the next path? This is tricky. What if there's an overestimate in cost? Does the current path just stop N blocks from the end because it's still waiting for the next one to be done calculating and we told it that it could start from any of these last N blocks?
This is starting to just sound like we should cutoff the last N blocks from every path we calculate and let the next one start from there, which is bad.
from baritone.
Ok here's a better way to do it! Force the next path to start from exactly the end of the current one, but decrease the cost of backtracking below what the actual costs of those movements are. Like, if a movement ends on a position that's a part of the current path, decrease its cost by 10%. This will tiebreak between all the possible traverse/diagonal combinations to backtrack and make the "best" one an exact backtrack of the current path. This way we can use the existing path splicer and get the benefit. Yay!
from baritone.
Explanatory video: https://www.youtube.com/watch?v=CGiMcb8-99Y
from baritone.
Related Issues (20)
- baritone crash on startup HOT 4
- Kill Please add a brief but descriptive title
- Switch to sword if a hostile mob is near HOT 2
- Probleme implementing Barione API in my 1.12.2 forge MOD
- Is it possible to simulate a right click using baritone api? HOT 2
- I installed baratone and got a weird error HOT 1
- #Mine command not working properly HOT 4
- Baritone not working HOT 1
- #fill causes crash HOT 7
- cleararea not getting the entire area HOT 3
- [NeoForge] Use of deprecated toml file
- Please add a brief but descriptive title
- Impossible to use elytra fly on nether's roof HOT 3
- Please add a brief but descriptive title
- update to 1.20.6 please
- Baritone misses coal ore on close distance
- Disable Autowalk HOT 2
- [BUG] baritone crashed from mobile.
- Please add a brief but descriptive title
- Cannot Find any Path while it's near and easy
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from baritone.