I found this via https://500mile.email/ - I had seen a lot of the stories there before, but this one was new to me and I thought folks here might appreciate it.
I can imagine that such issues are going to resurface as not-yet-perfectly-working AIs communicate more with each other. Then the AIs are going to have to learn how to deal with the brokenness of the other AIs they talk to. Then the fixes are going to break some stuff that was working...
When I first read your message, “resistant to this transformation” made me think of _avoiding_ characters / pairs / whatever that are transformed: make sure the message is the same whether sober or drunk.
If the specifics of the transform are known, I think you could also start with a prefix that the receiver could use to determine drunk vs sober, and have two different decoding paths.
And I’m not sure whether you meant both meanings or not, but maybe elaborating will help someone else.
Since a lot of people don't remember / haven't played the game, here are the details that can help you:
- You can determine drunken state using the game's front-end API. They call debuffs/buffs 'auras' and you can match it against a specific set of drunken aura ids.
- The game will randomly add Hs and iirc the word "hic" to a sentence in order to emulate drunkenness.
Personally, I like the checksum solution the best -- don't even try to be smart, just validate the integrity of the message. This also solves issues where your message gets truncated, or other problems arise. They also likely had to break up their messages across multiple chat messages (there's chat limit) so a checksum goes a long way here.