89 Commits

Author SHA1 Message Date
3nd3r
0b5b42a507 Fix duck tracking across channel case 2026-01-01 13:32:49 -06:00
3nd3r
626eb7cb2a Fix ignore/unignore global behavior 2026-01-01 11:16:47 -06:00
3nd3r
b6d2fe2a35 Update README; fix duck_types config 2026-01-01 11:10:14 -06:00
3nd3r
77ed3f95ad Update bot 2026-01-01 10:45:59 -06:00
3nd3r
68a0a1fc83 Update DuckHunt bot 2026-01-01 10:42:12 -06:00
3nd3r
292db0c95e PM-only admin reload restarts bot; raise clover price 2025-12-30 23:21:48 -06:00
3nd3r
b944e234d6 Fix file mode (shop.json non-executable) 2025-12-30 23:19:45 -06:00
3nd3r
735c46b8c2 Add clover luck item and admin restart command 2025-12-30 23:19:37 -06:00
3nd3r
38d9159f50 Label legacy bucket in globaltop 2025-12-30 22:56:15 -06:00
3nd3r
a1afd25053 Simplify globaltop output 2025-12-30 22:54:07 -06:00
3nd3r
1e4e1e31ba Format globaltop channel labels 2025-12-30 22:53:12 -06:00
3nd3r
9bff554a07 Fix file mode (non-executable) 2025-12-30 22:49:02 -06:00
3nd3r
2372075195 Add globaltop leaderboard command 2025-12-30 22:49:02 -06:00
3nd3r
2ef81cdd26 Fix file modes (non-executable) 2025-12-30 22:43:30 -06:00
3nd3r
67bf6957a7 Separate player stats per channel 2025-12-30 22:43:23 -06:00
3nd3r
214d1ed263 Fix file modes 2025-12-29 23:36:18 -06:00
3nd3r
f47778e608 Load messages.json from repo root 2025-12-29 23:35:38 -06:00
3nd3r
7147f5f30c Add more duck spawn quacks 2025-12-29 23:32:04 -06:00
3nd3r
51c212e8cd Fix JOIN confirmation tracking for auto-rejoin 2025-12-28 23:11:21 -06:00
3nd3r
5efe1e70bf Fix rejoin loop crash when pending_joins missing 2025-12-28 23:08:04 -06:00
3nd3r
a8b4196cf2 Fix auto-rejoin after KICK to rejoin immediately 2025-12-28 23:04:37 -06:00
3nd3r
5e4bbb4309 Update README to reflect current features
- Removed references to removed duck types (concrete, diamond, explosive, etc.)
- Removed references to removed items (sniper rifle, duck radar, etc.)
- Updated to show only 3 duck types: normal, golden, fast
- Documented current commands and features
- Added Recent Updates section
- Cleaned up and organized for clarity
2025-12-28 17:58:01 -06:00
3nd3r
53a66f5202 Update duckhelp to send PM with detailed commands 2025-12-28 17:52:02 -06:00
3nd3r
b71f8f4ec6 Add join and part admin commands for channel management 2025-12-28 17:49:31 -06:00
3nd3r
5db4ce0ab3 Revert to original working code - clean slate
- Start from original code that was known to work
- Will add features back incrementally
- This ensures we know exactly what breaks/works
2025-12-28 17:43:11 -06:00
3nd3r
90b604ba72 Add force_spawn_duck for admin ducklaunch - fixes missing method error 2025-12-28 16:51:26 -06:00
3nd3r
dd06c9377f Revert to simple version: Remove new ducks and items
- Removed new duck types (concrete, diamond, holy_grail, explosive, poisonous, etc.)
- Removed new shop items (sniper rifle, duck radar, bread, splash water, etc.)
- Removed status effects system (eliminated, poisoned, wet, etc.)
- Removed item drops and temporary effects
- Kept only original 3 duck types: normal, golden, fast
- Kept original simple shop
- KEPT BUG FIX: Golden duck XP now awarded on each hit
- KEPT BUG FIX: Message sanitization preserves IRC codes
- Simpler, more stable bot with core improvements
2025-12-28 16:48:56 -06:00
3nd3r
eb907e1e2c Add original/backup code for reference
- Original working code before recent modifications
- Kept for comparison and debugging purposes
- Helps identify what changed and what broke
2025-12-28 16:29:47 -06:00
3nd3r
f6a9f4592a Fix critical bug: Messages being stripped by over-aggressive sanitization
- Bot messages containing IRC color codes were being completely stripped
- sanitize_user_input() without allowed_chars was removing all formatting
- Changed to only remove CR/LF from messages while preserving formatting codes
- This was causing silent failures where no messages were sent to channel
2025-12-28 16:03:42 -06:00
3nd3r
6069240553 Fix critical bug: Award XP on multi-HP duck hits
- Fixed issue where players weren't getting XP when hitting (but not killing) multi-HP ducks
- XP was calculated but never added to player's total
- This bug could cause bot failures with new multi-HP duck types
- Now properly awards XP on each hit and saves to database
2025-12-28 16:00:40 -06:00
3nd3r
f3f251a391 Add explicit error replies for core commands 2025-12-28 15:49:07 -06:00
3nd3r
3e7436840e Fix: remove blocking sleep, unreachable code, and unused admin helper 2025-12-28 15:40:59 -06:00
3nd3r
9bd51a24cc Accept leading-whitespace commands; log spawn send failures 2025-12-28 15:33:17 -06:00
3nd3r
d5654e9783 Normalize channel names for join tracking and commands 2025-12-28 15:30:17 -06:00
3nd3r
ba9beae82f Harden temporary effect parsing to prevent silent command failures 2025-12-28 15:24:46 -06:00
3nd3r
7d85f83faa Fix JOIN parsing for trailing channel and rejoin success handling 2025-12-28 15:19:49 -06:00
3nd3r
02c055d7e3 Log IRC join failures and confirm joins 2025-12-28 15:12:30 -06:00
3nd3r
617d9560e6 Restrict PM spawns to normal/fast/golden 2025-12-28 14:34:14 -06:00
3nd3r
3b72a853ae Allow ducklaunch for new duck types 2025-12-28 14:31:45 -06:00
3nd3r
ffe8bdfaf2 Update README for new duck types and items 2025-12-28 13:50:08 -06:00
3nd3r
b256b9a9f6 Add new duck types and items 2025-12-28 13:36:41 -06:00
3nd3r
4d17ae8f04 Prepare for GitHub release 2025-12-28 13:16:55 -06:00
f8c46980de Update auto-rejoin settings for more persistent reconnection
- Reduced retry interval from 30 to 20 seconds for faster rejoins
- Increased max rejoin attempts from 10 to 100 for greater persistence
- Bot will now be more aggressive about staying in channels
2025-10-05 19:39:00 +01:00
b5613f20dd Add automatic channel rejoin functionality
- Added auto_rejoin configuration to connection settings
- Handles KICK events and automatically schedules rejoin attempts
- Configurable retry interval and max attempts
- Tracks rejoin attempts per channel with exponential backoff
- Handles JOIN confirmations to stop rejoin loops
- Proper cleanup of rejoin tasks on shutdown
- Respects shutdown and connection state before rejoining
- Logs all rejoin attempts and results for debugging
2025-10-05 19:34:49 +01:00
0176284012 Add comprehensive .gitignore
- Ignore Python __pycache__ directories and .pyc files
- Ignore logs/ directory and all .log files
- Ignore temporary and backup files
- Ignore IDE and OS generated files
- Remove tracked __pycache__ files from repository
2025-10-05 19:23:53 +01:00
857a15b666 Delete duckhunt.log 2025-10-05 18:22:54 +00:00
489989001c Delete logs/duckhunt.log 2025-10-05 18:22:40 +00:00
b39c82c84b Delete __pycache__/duckhunt.cpython-312.pyc 2025-10-05 18:22:24 +00:00
0a27f7272e hmm 2025-10-05 19:19:18 +01:00
85fa8a9170 Fix database corruption handling and auto-creation
- Added datetime import to fix NameError
- Simplified database handling to create new file if missing or corrupted
- Removed backup functionality per user request
- Fixed duplicate method definitions
- Enhanced error handling throughout database operations
- Auto-creates duckhunt.json with proper structure on startup
2025-10-05 19:18:46 +01:00