feat(pets): a follower the cache states twice #251
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/pets"
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?
The pet framework, and every pet whose source stands in this world. The
cache's enum 985 is the roster — 37 items — and NPC opcode 111 is the
follower flag: every pet is defined twice and exactly one twin carries it,
which no id order predicts, so Cache.Npc now decodes it as follower?.
Five skilling pets roll per yield at 1 in (base - level * 25): the Beaver,
the Rock golem, the Heron, the fourteen Rift guardians (the variant is the
rune crafted, and crafting elsewhere recolours the one that follows) and
Tangleroot (Check-health where the crop has one, the exhausting stroke where
it does not). Nineteen flat boss rates over sixteen standing bosses roll at
the corpse's own vanishing, addressed to the top damager. Receipt is the
era's one rule for all of them — follower first, backpack second, nothing
third — with its three messages verbatim, and a pet already owned anywhere
in the family is a duplicate.
Dropping the item releases it (a pet never reaches the floor as a pile);
Pick-up folds it back for its owner alone; Talk-to answers with the pet's
own sourced line; Metamorphosis cycles the morph pairs. The follower heels a
tile behind its owner each tick, is re-placed past a fifteen-tile leash or a
plane change the way a fishing spot relocates, survives a logout on the
account (pet_out / pet_insured columns), and a real death loses it — to
Probita's books if insured (500k to insure, 1M to reclaim), for good if not.
One engine fix the world test forced: the tick's settle phase writes every
stepped NPC back into the world wholesale, so anything removed mid-tick was
resurrected by its own stale copy. Pet requests now apply after settle, and
settle skips an index no longer present — which also covers a session dying
inside the barrier with its pet out.
Every rate, price and message is sourced from dated 2017-04..07 wiki
revisions in priv/data/pets.exs, and Data.PetsTest regenerates the identity
claims from the cache. What is out of reach here — Kraken, Zulrah, Skotizo,
the minigames, Hunter, Agility, Thieving — is refused by name rather than
omitted.