feat(bot): net-fishing bot that re-acquires spots when they relocate #121
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/fishing-bots"
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?
A sixth kind,
fisher(::botgen fisher/fish), now that Fishing exists.It is not a third GatherAndBank
:skillconfig the way miner was to chopper,because a fishing spot is an NPC rather than a loc. So the goal is a hybrid:
GatherAndBank's choose-ground/travel/work/bank skeleton with HuntNpcs' scan
swapped into the middle — the target is found through MovementAuthority and
clicked with an npc_action, not read from the collision index.
That one substitution makes spot relocation free. A relocated spot is simply a
different nearby entity on the next scan; the only latched index lives in the
workingphase, where present?/1 drops it the tick it stops carrying a spotthat offers the same option, and the goal re-finds. No engine change and no
skilling?-only heuristic — the explicit re-aim is what makes the re-click
prompt rather than waiting out a grace.
Scope is a net fisher (small net, shrimp, no bait): net spots are static
spawns, so Bot.Sites grows a fishing-ground list beside the water the same way
it grows trees and rocks — cluster the spot spawns, stand a tile beside them
(the spots are on water), pair the nearest bank. Fly spots are excluded on
purpose: they relocate and want a rod and feathers. The bank leg keeps tools
and baits and banks the catch; Seed.net_for/1 derives the net id from the
method's own tool list rather than naming it.
Also fixes default_activity(:travel_to_site)/(:travel_to_ground), which the
existing gatherers reported as :idle while walking to a site.