feat(bot): cager and harpooner, and a ground the bot's tools can work #122

Merged
sickday merged 1 commit from feat/fishing-kinds into main 2026-08-05 23:45:13 +00:00
Owner

Two kinds on the one fishing goal. Nothing in Bot.Goals.Fish is keyed by
kind: a spot offers Cage at op 1 and Harpoon at op 3, and the tool in the
backpack decides which of them the bot can work. Bot.Seed grows
harpoon_for/1 and lobster_pot_for/1 beside net_for/1, all three now one
tool_for/2 over the method's own tool list — so a ninth fishing kind costs
a seed and nothing else.

The ground choice had a gap the spot scan did not. A ground's minimum level
is not the question "can this bot work anything here", so a level-76
harpooner cleared the level gate at a net-and-bait ground and then stood
scanning water it had no net for. Bot.Sites.fish_ground now carries its
cluster's methods and choosing_ground filters on the same performable?/3
the scan uses, which also grew the bait check it had been missing.

Sat with live: a harpooner and a cager worked the same spot at Catherby by
their own menu option, caught shark and lobster, banked one Deposit-All per
distinct catch, kept their tool and walked back to the water.

Two kinds on the one fishing goal. Nothing in `Bot.Goals.Fish` is keyed by kind: a spot offers Cage at op 1 and Harpoon at op 3, and the tool in the backpack decides which of them the bot can work. `Bot.Seed` grows `harpoon_for/1` and `lobster_pot_for/1` beside `net_for/1`, all three now one `tool_for/2` over the method's own tool list — so a ninth fishing kind costs a seed and nothing else. The ground choice had a gap the spot scan did not. A ground's minimum level is not the question "can this bot work anything here", so a level-76 harpooner cleared the level gate at a net-and-bait ground and then stood scanning water it had no net for. `Bot.Sites.fish_ground` now carries its cluster's methods and `choosing_ground` filters on the same `performable?/3` the scan uses, which also grew the bait check it had been missing. Sat with live: a harpooner and a cager worked the same spot at Catherby by their own menu option, caught shark and lobster, banked one Deposit-All per distinct catch, kept their tool and walked back to the water.
feat(bot): cager and harpooner, and a ground the bot's tools can work
All checks were successful
ci / gates (pull_request) Successful in 54s
build / image (push) Successful in 30s
ci / gates (push) Successful in 56s
06f163a542
Two kinds on the one fishing goal. Nothing in `Bot.Goals.Fish` is keyed by
kind: a spot offers Cage at op 1 and Harpoon at op 3, and the tool in the
backpack decides which of them the bot can work. `Bot.Seed` grows
`harpoon_for/1` and `lobster_pot_for/1` beside `net_for/1`, all three now one
`tool_for/2` over the method's own tool list — so a ninth fishing kind costs
a seed and nothing else.

The ground choice had a gap the spot scan did not. A ground's minimum level
is not the question "can this bot work anything here", so a level-76
harpooner cleared the level gate at a net-and-bait ground and then stood
scanning water it had no net for. `Bot.Sites.fish_ground` now carries its
cluster's methods and `choosing_ground` filters on the same `performable?/3`
the scan uses, which also grew the bait check it had been missing.

Sat with live: a harpooner and a cager worked the same spot at Catherby by
their own menu option, caught shark and lobster, banked one Deposit-All per
distinct catch, kept their tool and walked back to the water.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Revenant/Server!122
No description provided.