Four zone and sound helpers have no production caller #64

Open
opened 2026-07-30 21:02:58 +00:00 by sickday · 1 comment
Owner

Four world-level helpers are built, transcribed from the client, tested, and
called by nothing in lib/:

  • World.tile_graphic/4 — a graphic on a place rather than on an entity
    (zone opcode 102);
  • World.animate_loc/4 — animate the loc standing on a tile (34);
  • World.tile_sound/5 — positional sound (248);
  • World.sound/4 — non-positional sound in one player's head (s2c 19, which
    differs from 248 by one field).

World.projectile/2 is in the same family and is not in this list: it has
::proj and the bench harness driving it.

Traps already recorded against these, so a caller does not rediscover them:
248's loop count is & 7 with zero discarded, so the quietest useful
value is 1; heights are quartered on the wire; and most animation sound needs
none of these at all, because sequence opcode 13 gives each frame its own
sound effect and the client plays it unprompted.

Combat and skills are the callers. Filed as a seam so they are found rather than
reimplemented.

Four world-level helpers are built, transcribed from the client, tested, and called by nothing in `lib/`: * `World.tile_graphic/4` — a graphic on a *place* rather than on an entity (zone opcode `102`); * `World.animate_loc/4` — animate the loc standing on a tile (`34`); * `World.tile_sound/5` — positional sound (`248`); * `World.sound/4` — non-positional sound in one player's head (s2c `19`, which differs from `248` by one field). `World.projectile/2` is in the same family and is *not* in this list: it has `::proj` and the bench harness driving it. Traps already recorded against these, so a caller does not rediscover them: `248`'s loop count is `& 7` with **zero discarded**, so the quietest useful value is `1`; heights are quartered on the wire; and most animation sound needs none of these at all, because sequence opcode `13` gives each frame its own sound effect and the client plays it unprompted. Combat and skills are the callers. Filed as a seam so they are found rather than reimplemented.
Author
Owner

Partial progress from the standoff-combat work (2026-07-31): tile_sound/5 gained its first production callers — a cast rings its cast sound at the caster's tile and its impact sound at the target's, with a cycle delay matched to the flight's arrival. Still uncalled: tile_graphic/4, animate_loc/4 and sound/4, which wait on skills as filed.

Partial progress from the standoff-combat work (2026-07-31): tile_sound/5 gained its first production callers — a cast rings its cast sound at the caster's tile and its impact sound at the target's, with a cycle delay matched to the flight's arrival. Still uncalled: tile_graphic/4, animate_loc/4 and sound/4, which wait on skills as filed.
Sign in to join this conversation.
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#64
No description provided.