fix(botgen): a place decides the method, and a resource names its kind #234

Merged
sickday merged 2 commits from fix/botgen-place-fishing-default into main 2026-08-17 13:41:16 +00:00
Owner

Reported from the first sitting: ::botgen 3 fish at barb village answered
"There is nothing a fisher can work in Barbarian Village" about a river
every player fishes.

:fisher seeds a net and the place gate was asking for net grounds, so a
river offering fly and bait read as empty water. A kind's default target
answers what should this body carry and was never an answer to may it
work here
. A bare fisher now takes the place's own family; a cager and a
harpooner keep theirs, because those two name the gear rather than the
trade.

Widening the gate to :any is the fix that fails, and is worth stating: the
body would rise holding a net at a river with no net spot and stand there,
which is the silent failure the bait supply line already exists to avoid.
The gate and the seed have to agree, so the place decides both.

The candidate ranking had the same shape of bug one layer down. Ranking on
the family's global floor picked bait for Barbarian Village -- the family's
easiest method is the sardine at 5, while the bait actually on that river is
pike at 25 against its fly at 20. It ranks on the easiest method present at
the tile now, and every refusal carries what the place does offer, because
"there is nothing here" and "there is none of that here, but there is this"
are different sentences and only the second says what to type next.

Two axes on top of it, both asked for:

  • a resource names its own kind, so ::botgen 3 fly is a fly fisher and
    ::botgen 3 iron an iron miner. Sound only while no word names two
    trades, which is asserted over the whole derived vocabulary rather than
    a sample -- these tables are cache-scanned, and a species that came to
    share an ore's name would silently pick whichever kind sorted first.
  • a comma list is one fleet working either resource, so
    ::botgen 3 copper,tin at varrock is the classic mine said exactly. It
    is a union rather than an intersection, levelled against the hardest of
    them, and a fishing list is seeded with every tool and bait it names. A
    sitter works one job and a pker one style, so neither takes a list; and
    a list spanning two trades is refused as such rather than complaining
    about its first word.

Gates pass; the suite's failures are the documented reds.

Reported from the first sitting: `::botgen 3 fish at barb village` answered "There is nothing a fisher can work in Barbarian Village" about a river every player fishes. `:fisher` seeds a net and the place gate was asking for net grounds, so a river offering fly and bait read as empty water. A kind's default target answers *what should this body carry* and was never an answer to *may it work here*. A bare fisher now takes the place's own family; a cager and a harpooner keep theirs, because those two name the gear rather than the trade. Widening the gate to `:any` is the fix that fails, and is worth stating: the body would rise holding a net at a river with no net spot and stand there, which is the silent failure the bait supply line already exists to avoid. The gate and the seed have to agree, so the place decides both. The candidate ranking had the same shape of bug one layer down. Ranking on the family's global floor picked bait for Barbarian Village -- the family's easiest method is the sardine at 5, while the bait actually on that river is pike at 25 against its fly at 20. It ranks on the easiest method present at the tile now, and every refusal carries what the place does offer, because "there is nothing here" and "there is none of that here, but there is this" are different sentences and only the second says what to type next. Two axes on top of it, both asked for: * a resource names its own kind, so `::botgen 3 fly` is a fly fisher and `::botgen 3 iron` an iron miner. Sound only while no word names two trades, which is asserted over the whole derived vocabulary rather than a sample -- these tables are cache-scanned, and a species that came to share an ore's name would silently pick whichever kind sorted first. * a comma list is one fleet working either resource, so `::botgen 3 copper,tin at varrock` is the classic mine said exactly. It is a union rather than an intersection, levelled against the hardest of them, and a fishing list is seeded with every tool and bait it names. A sitter works one job and a pker one style, so neither takes a list; and a list spanning two trades is refused as such rather than complaining about its first word. Gates pass; the suite's failures are the documented reds.
fix(botgen): a place decides the method, and a resource names its kind
Some checks failed
ci / gates (pull_request) Has been cancelled
427a8c8b81
Reported from the first sitting: `::botgen 3 fish at barb village` answered
"There is nothing a fisher can work in Barbarian Village" about a river
every player fishes.

`:fisher` seeds a net and the place gate was asking for net grounds, so a
river offering fly and bait read as empty water. A kind's default target
answers *what should this body carry* and was never an answer to *may it
work here*. A bare fisher now takes the place's own family; a cager and a
harpooner keep theirs, because those two name the gear rather than the
trade.

Widening the gate to `:any` is the fix that fails, and is worth stating: the
body would rise holding a net at a river with no net spot and stand there,
which is the silent failure the bait supply line already exists to avoid.
The gate and the seed have to agree, so the place decides both.

The candidate ranking had the same shape of bug one layer down. Ranking on
the family's global floor picked bait for Barbarian Village -- the family's
easiest method is the sardine at 5, while the bait actually on that river is
pike at 25 against its fly at 20. It ranks on the easiest method present at
the tile now, and every refusal carries what the place does offer, because
"there is nothing here" and "there is none of that here, but there is this"
are different sentences and only the second says what to type next.

Two axes on top of it, both asked for:

  * a resource names its own kind, so `::botgen 3 fly` is a fly fisher and
    `::botgen 3 iron` an iron miner. Sound only while no word names two
    trades, which is asserted over the whole derived vocabulary rather than
    a sample -- these tables are cache-scanned, and a species that came to
    share an ore's name would silently pick whichever kind sorted first.
  * a comma list is one fleet working either resource, so
    `::botgen 3 copper,tin at varrock` is the classic mine said exactly. It
    is a union rather than an intersection, levelled against the hardest of
    them, and a fishing list is seeded with every tool and bait it names. A
    sitter works one job and a pker one style, so neither takes a list; and
    a list spanning two trades is refused as such rather than complaining
    about its first word.

Gates pass; the suite's failures are the documented reds.
Merge branch 'main' into fix/botgen-place-fishing-default
All checks were successful
ci / gates (pull_request) Successful in 3m22s
build / image (push) Successful in 38s
ci / gates (push) Successful in 3m34s
b59535ea4b
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!234
No description provided.