- Implemented `MessageDeduplication` class to suppress duplicate bot replies:
- Normalizes sender and message content for reliable comparison.
- Tracks processed messages with timestamp-based expiry (default 1 hour).
- Integrated into `run_ui_monitoring_loop()` with support for F7/F8-based history resets.
- Periodic cleanup thread purges expired entries every 10 minutes.
- Added new UI fallback handling logic to address post-update game state changes:
- Detects `chat_option.png` overlay before bubble detection and presses ESC to dismiss.
- Detects `update_confirm.png` when chat room state is unavailable and clicks it to proceed.
- Both behaviors improve UI stability following game version changes.
- Updated `essential_templates` dictionary and constants with the two new template paths:
- `chat_option.png`
- `update_confirm.png`
These improvements reduce redundant bot responses and enhance UI resilience against inconsistent or obstructed states in the latest game versions.