ECHO-93 ๐Ÿž Biting more than twice in a row causes spamming penalty

MediaStable ยท Echo
Done

Attachments

Images

SCR-20260220-hsyd.png
SCR-20260220-hsyd.png
35.7 KB
Assignee
Unassigned
Created By
Phase
Beta
Created
Feb 20, 2026 at 11:15 AM
Contributors
๐Ÿ˜Ž
Ben

This was maybe fixed for /attack (https://app.codebake.ai/mediastable-956/echo-150/ECHO-89), but it also happens for /bite.

Comments

admin@mediastable.com
[email protected] Feb 21, 2026 at 10:02 AM

Diagnosis\n\nRoot cause: Player-vs-player /bite feedback messages use send_player_message (kind: :info_player), which goes through spam detection. When biting the same target 3+ times in 30 seconds, the similar feedback messages ("You bite X for Y damage! (Z HP)") trigger the repeat spam detector and mute the player.\n\nWhy ECHO-89 didn't fully fix this:\nThe ECHO-89 fix added a bypass for kind: :action messages in the spam detector, but /bite's player combat feedback uses send_player_message which creates kind: :info_player messages. Only NPC bite messages use send_action_message and bypass spam detection.\n\nSolution:\nChange player-vs-player bite feedback messages to use send_action_message instead of send_player_message. This ensures command feedback bypasses spam detection while player-typed chat remains protected.\n\nFiles to modify:\n- lib/echo/chat/actions/bite.ex (lines ~460-495 in send_bite_messages/6)\n\nImplementation:\nReplace ChatOps.send_player_message calls with ChatOps.send_action_message for combat feedback in the bite success flow. The pattern is already used correctly for NPC bites (lines 436-443).\n\nExample change:\nelixir\n# Before:\nChatOps.send_player_message(player, attacker_msg)\n\n# After:\nChatOps.send_action_message(player, attacker_msg)\n\n\nTesting:\n1. Bite same target 5+ times rapidly\n2. Verify no mute is applied\n3. Verify feedback messages still display correctly\n4. Verify player-typed chat spam detection still works\n\nNote: The /attack command likely has the same issue - it also uses send_player_message for feedback. Consider applying the same fix there or verifying ECHO-89 actually resolved it.

Activity

๐Ÿ˜Ž
Ben updated this task
Feb 21, 2026 at 10:37 AM
๐Ÿ˜Ž
Ben changed status from To Do to Done
Feb 21, 2026 at 10:37 AM

View this task in Codebake: mediastable-956/echo-150/ECHO-93