"Say As" lets you change who a chat message was said by, from the message's context menu. This solves the problem where chat messages go out as whichever token you happen to have selected. When that's the wrong character, there is normally no way to correct it.
Functionality
Opening the context menu on a chat message you sent adds up to two options:
- Say As Selected Token: reattributes the message to your currently selected token.
- Say Out Of Character: reattributes the message to you, out of character. Shown only when the message is currently attributed to a character.
Reassignment writes only the message's `speaker` and `style`, never its `content`. That is what makes it safe on roll messages: a roll's content is HTML generated from
its `rolls` array, and rewriting it would desync the two. Rolls, including whispered and private rolls, can be corrected like any other message.
Speakers are built with `ChatMessage.getSpeaker()`, so a corrected message is indistinguishable from one sent correctly, and carries an explicit `speaker.alias` so the name renders identically for every connected client.
Contents
A single ES module (four small script files), one stylesheet rule, and an English localization file.
Compatability
Foundry VTT v13 minimum, verified on v14.
License and credit
MIT. This is a fork of Scorpious187's Chat Edit, itself a fork of alakshana's Chat Edit by way of rydoq's Chat Edit Anduril, reduced to just the speaker-reassignment path. The original MIT copyright notice is retained and the full credit chain is in the repository README. All code is original or MIT-licensed from that lineage; no third-party art or content is included.