This update includes some substantial improvements for XenoBot. After some intense profiling, I've identified the most computationally taxing parts of the bot, and greatly improved their performance. People on slower machines should see a noticable improvement from these changes. Additionally, I've re-coded the path following system to be far better. There will be no more randomly falling down holes, smoother kiting, and better overall walking. To compliment this, I've also reduced delays in the Walker so that there are less awkward pauses between waypoints, added new distance ranges, added new lure walk ranges, improved the wave shooter so that it will never miss, and improved the positioning heuristic for strait-line kiting. To top it all off, I've added Dynamic Lure to Targeting, which will allow mages and knights to hunt to their full potential, without having to employ hacked-up Lua scripts to achieve a desirable lure.
Changelog:
Code:
v14.11.19.982
Re-coded many internal mechanisms to be faster, leaner, and more accurate.
Fixed some small bugs with Lure mode.
Fixed a bug that caused the internal path following mechanism to sometimes fall down holes.
If you see this happen, please inform me. But it shouldn't, unless maybe you have SEVERE lag.
Fixed a bug that caused Shooter settings not to be saved/loaded when selecting the Cavebot group in settings.
Improved the Walker to move between waypoints more smoothly (less waiting time on stands and labels).
Improved the Shooter to work much better when kiting, especially with wave spells.
Improved the efficiency and accuracy of the internal path following algorithm.
Improved the internal path following algorithm to walk much smoother on high-ping characters.
Improved many core functions to be more CPU and memory efficient.
Improved Keep Distance targeting stance to prefer strait lines in that same way that "Keep Diagonal" prefers slanted lines.
Modified the Walker context menu to be cleaner, moved some related options to their own dialogs.
Added Dynamic Lure to Targeting.
When dynamic lure settings are present, Targeting will go into a passive lure mode, where it will attack but not chase or kite targets.
Multiple lure directives can be set; they look like this:
3 Creatures Very High
5 Creatures Medium or Above
7 Creatures Very Low or Above
etc
A lure directive is met when the number of creatures at the specified priority level is at or above the specified count.
Once a lure directive has been met, Targeting will activate and kill all of the creatures before going back into lure mode.
Tips when using Dynamic Lure:
1. Use "Lure Walk" waypoints in place of "Stand" waypoints inside of a spawn so you don't outrun creatures you're luring
2. Make your Shooter settings work well with Dynmaic Lure so you're not shooting and luring, unless that's your goal
3. Dynamic Lure can be on at all times, it will play nice with Ignore mode and will still attack creatures if you get stuck
Added Keep Distance targeting stances for 4, 5, and 6 SQM ranges.
6 SQM range can potentially go off-screen, you should use it conservatively with a proper special area setup.
Added Keep Diagonal targeting stances for 4, 5, 6, and 7 SQM ranges.
7 SQM range can potentially go off-screen, you should use it conservatively with a proper special area setup.
Added Lure Walk 4 and Lure Walk 5 to the Walker lure system.
As you can see, this update is huge. Overall, about 2% of XenoBot's total code-base has been effected by this update, which means that there is the small potential for some unseen bugs. If you notice anything unusual, please report it ASAP.
Also note that previous Dynamic Lure settings will remain loaded when you load new settings that haven't been saved on this later version, so please make sure to re-save all relevant settings before playing with Dynamic Lure.