Bot.Travel wedges any leg whose straight line crosses water, mountain or building #123
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Bot.Travel.hop/2picks its waypoint by straight-line interpolation, so any legwhose direct line crosses water, a mountain or a building wedges the bot
permanently.
hop/2is the whole of long-leg travel: for a destination further than@hop(80) tiles it returns
which is a point 80 tiles along the straight line to the destination.
Nothing asks whether that point is standable, or whether a route to it exists.
When it lands inside terrain the planner cannot reach, the bot issues a walk,
does not move,
stuckclimbs,reroutesreaches@max_reroutes(3), and theleg ends
:stuck. The goal fails, loops, re-chooses, and — because thegeography has not changed — usually picks a destination on the same side of the
same obstacle and wedges again.
Observed
Three times in one sitting, with fishing bots but nothing fishing-specific
about it:
3091,3240) routing to the Al Kharid ground (3267,3149), 176tiles east across the River Lum. Leg state
%{steps: 6, stuck: 4, reroutes: 4, walked?: true}.2598,3420) to Catherby (2835,3432), into the mountains —two bots, both parked at
2697,3409.The log signature is a line repeated forever at one tile:
0 step(s)is the tell: a walk was issued and the planner produced no path.Why it matters beyond bots
This is the leash on where a bot can be usefully spawned — anywhere whose
bank or resource lies across water is unreachable in practice — and it is the
same fact that keeps a pker rising at Edgeville rather than walking in from
further out. Any future goal that travels between regions inherits it.
Shape of a fix
The waypoint is the wrong thing to guess. Options, cheapest first:
planner for a route toward it and walk as far as it actually reached, then
hop again from there. This is close to what a person does and needs no map
knowledge.
waypoints off the straight line before giving up.
durable answer and the most work.
Worth reading #23 first — closed, and about
Movement.routetruncating at 128steps. Different mechanism, adjacent symptom: both are a bound that produces a
bot standing still with nothing said about why.