Files
benilla-octo/crates/benilla-app/src/sound
Sam SungandClaude Opus 5.5 459a9a5697 Party and raid roster lines and the join chime follow the reference's two stores (#388)
Party and raid join and leave lines, and the join chime, follow the reference: it composes them from two stores, the party slots and the raid roster, where benilla ran one ungated diff over the whole member list.

Fixes #264. Fixes #268. Fixes #269. Fixes #270.

- **Party lines** (`0x5e6a40`): join lines print only onto a group already held (an occupied slot, `0x5e6afb`, or a raid roster, `0x5e6b29`); forming a group as leader prints one line, for the member the list names last (`0x5e6c94`-`0x5e6cc1`); a raid list prints no party member lines (`0x5e6c01`, `0x5e6cd1`).
- **Raid lines** (`0x4ba5f0`, `0x4ba550`): arrivals print only onto a held roster (`0x4ba725`), departures from `0x4ba7a0`; "You have joined a raid group" when none was held (`0x4ba83a`), and "You have left the raid group" when a non-raid list ends a held raid (`0x4ba55f`).
- **Ending the group**: the leave acknowledgement, `SMSG_GROUP_UNINVITE` and `SMSG_GROUP_DESTROYED` empty the party slots first (`0x4e84a0`), so the empty list that follows names nobody.
- **The chime** (`igPlayerInviteAccept`): queued when a member is seated into no held group (`0x5e6dc6`) or joins a held party (`0x5e6c24`); a raid arrival plays nothing.

Tests: eight new tests fail on the old composition and pass now; `scripts/check.sh` is green.

To see it (two or more characters): accept a party invite and hear the chime, with no "joins the party." lines for members already there; `/leave` prints only "You leave the group."; convert a party of four to a raid and party members see only "You have joined a raid group".

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-26 06:56:26 +07:00
..