- Modified cogs/dice.py, cogs/fun.py, db_calls.py - Added COMMAND_LIST.md, api_calls/custom_command.py, sba_is_fun.db Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
238 lines
7.5 KiB
Markdown
238 lines
7.5 KiB
Markdown
# Discord Bot v1.0 - Complete Command List
|
|
|
|
**Generated:** January 2025
|
|
**Bot Version:** 1.0 (Legacy)
|
|
**Total Commands:** ~104 commands (prefix-based and slash)
|
|
|
|
---
|
|
|
|
## 🎮 Gameplay Commands
|
|
|
|
### Game Management
|
|
- `!newgame <away_abbrev> <home_abbrev> <week> [game_num] [is_pd]` - Start a new baseball game
|
|
- `!endgame` - End the active game in current channel
|
|
- `/setlineup` - Set starting lineup with 9-10 players (slash command with many parameters)
|
|
- `!substitution` / `!sub` - Make a lineup substitution
|
|
- `!gamestate` / `!gs` - Display current game state
|
|
- `/show-card defense <position>` - Display defender's player card
|
|
|
|
### Logging On-Base Results
|
|
- `!log-onbase single-wellhit` / `!siwh` / `!si**` / `!1b**` / `!1bwh` - Single, runners advance 2 bases
|
|
- `!log-onbase single-onestar` / `!si*` / `!1b*` - Single, runners advance 1 base
|
|
- `!log-onbase ballpark-single` / `!bpsi` / `!bp1b` - Ballpark single
|
|
- `!log-onbase single-uncapped` / `!si` / `!1b` - Single with optional runner advancement
|
|
- `!log-onbase double-twostar` / `!do**` / `!2b**` - Double, runners advance 2 bases
|
|
- `!log-onbase double-uncapped` / `!do` / `!2b` - Double with optional runner advancement
|
|
- `!log-onbase double-threestar` / `!dowh` / `!do***` - Double, runners advance 3 bases
|
|
- `!log-onbase triple` / `!tr` / `!3b` - Triple, all runners score
|
|
- `!log-onbase homerun` / `!hr` / `!dong` - Home run
|
|
- `!log-onbase ballpark-homerun` / `!bp-hr` / `!bp-dong` - Ballpark home run
|
|
- `!log-onbase walk` / `!bb` - Walk, forced runners advance
|
|
- `!log-onbase intentional-walk` / `!ibb` - Intentional walk
|
|
- `!log-onbase hit-by-pitch` / `!hbp` - Hit by pitch
|
|
|
|
### Logging Out Results
|
|
- `!log-out popout` / `!po` - Popout
|
|
- `!log-out strikeout` / `!so` / `!k` - Strikeout
|
|
- `!log-out lineout` / `!lo` - Lineout
|
|
- `!log-out sac-bunt` / `!sacb` / `!bunt` - Sacrifice bunt
|
|
- `!log-out caught-stealing` / `!cs` - Caught stealing
|
|
- `!log-out flyball-a` / `!flya` - Flyball, all runners advance
|
|
- `!log-out flyball-b` / `!flyb` - Flyball, runner on third scores
|
|
- `!log-out flyball-bq` / `!flyb?` - Flyball, runner on third may score
|
|
- `!log-out flyball-c` / `!flyc` - Flyball, no runners advance
|
|
- `!log-out groundball-a` / `!gba` - Potential double play ground ball
|
|
|
|
### Special Play Results
|
|
- `!log-play undo-play` / `!undo` / `!rollback` - Undo most recent play
|
|
- `!log-play stolen-base` / `!sb` - Stolen base
|
|
- `!log-play wild-pitch` / `!wp` - Wild pitch
|
|
- `!log-play passed-ball` / `!pb` - Passed ball
|
|
- `!log-play balk` / `!bk` - Balk
|
|
- `!log-play pickoff` / `!pick` - Pickoff
|
|
- `!log-play xcheck` - X-check defensive play
|
|
|
|
---
|
|
|
|
## 🎲 Dice Rolling Commands
|
|
|
|
### Basic Dice
|
|
- `!roll <dice>` - Roll polyhedral dice (XdY notation)
|
|
- `!ab` - Roll at-bat dice (1d6;2d6;1d20)
|
|
|
|
### Advanced Dice
|
|
- `!scout <card_type>` - Roll weighted scouting dice
|
|
- `!fielding <position>` - Roll Super Advanced fielding dice
|
|
- `!weather [team_abbrev]` - Roll ballpark weather
|
|
|
|
---
|
|
|
|
## 👥 Player Commands
|
|
|
|
- `!player <name>` - Display player card and statistics
|
|
- `!player-stats <name>` - Display detailed player statistics
|
|
- `!compare <player1> <player2>` - Compare two players
|
|
|
|
---
|
|
|
|
## 🏟️ Team Commands
|
|
|
|
- `!team <abbrev>` - Display team information
|
|
- `!roster <abbrev>` - Display team roster
|
|
- `!schedule [team_abbrev]` - Display team schedule
|
|
- `!standings` - Display league standings
|
|
|
|
---
|
|
|
|
## 🔄 Transaction Commands
|
|
|
|
- `!mymoves` - View your pending transactions
|
|
- `!legal` - Check roster legality
|
|
- `!dropadd` - Build a transaction
|
|
- `!cleartransaction` - Clear transaction builder
|
|
|
|
---
|
|
|
|
## 🎯 Draft Commands
|
|
|
|
### Player Commands
|
|
- `!select <name>` / `!pick` / `!draft` / `!gib` / `!gimme` - Draft a player
|
|
- `!list [player1, player2, ...]` / `!draftlist` / `!mylist` - Set/view draft list
|
|
- `!whomst` / `!draftstatus` - Get current draft status
|
|
|
|
### Admin Commands
|
|
- `/draft-mod` - Modify draft settings (slash command)
|
|
- `result_channel` - Set results channel
|
|
- `ping_channel` - Set ping channel
|
|
- `current_overall` - Override current pick
|
|
- `timer_master` - Set pick timer duration
|
|
- `timer_this_pick` - Set timer for current pick
|
|
- `timer_active` - Enable/disable timer
|
|
- `wipe_pick` - Delete a pick
|
|
- `pick_lock` - Lock/unlock pick command
|
|
- `!restart-loop` - Restart draft loop (mod only)
|
|
|
|
---
|
|
|
|
## 📝 Custom Commands
|
|
|
|
- `!cc <name>` - Execute a custom command
|
|
- `!about <command>` - Show who created a custom command
|
|
- `!newcc <name> <message>` - Create new custom command
|
|
- `!delcc <name>` - Delete your custom command
|
|
- `!allcc [page]` - Show all custom commands
|
|
- `!mycc` / `!showcc` - Show your custom commands
|
|
|
|
---
|
|
|
|
## 🎭 Fun/Meme Commands
|
|
|
|
- `!lastsoak` / `!ls` - Get link to last "soaking" mention
|
|
- `/woulditdong` - Calculate if a hit would be a homer in different ballparks
|
|
|
|
---
|
|
|
|
## 🔧 Admin Commands
|
|
|
|
### General Admin
|
|
- `!current` - Display current season/week info
|
|
- `!blast <channel> <message>` - Send message to channel
|
|
- `/blast` - Send formatted message/embed (slash command)
|
|
- `!test <sheet_url>` - Import game from Google Sheet
|
|
|
|
### Player Management
|
|
- `!setdemweek <week> <player>` - Set player's demotion week
|
|
- `!migrate-players <from_season> <to_season>` - Migrate players between seasons
|
|
|
|
### Draft Management (Keeper System)
|
|
- `!keepers <team_abbrev> <player1, player2, ...>` - Set team keepers (admin only)
|
|
- `/set-keepers` - Interactive keeper selection (deprecated)
|
|
|
|
---
|
|
|
|
## 🛠️ Owner Commands
|
|
|
|
### Cog Management
|
|
- `!load <cog>` - Load a cog
|
|
- `!unload <cog>` - Unload a cog
|
|
- `!reload <cog>` - Reload a cog
|
|
- `!fullreset` - Reload all cogs
|
|
- `!sync [~|*|!|^]` - Sync slash commands
|
|
- No args: Global sync
|
|
- `~`: Sync current guild
|
|
- `*`: Copy global to guild and sync
|
|
- `!`: Clear and sync
|
|
- `^`: Clear guild commands
|
|
|
|
---
|
|
|
|
## 📊 Command Statistics
|
|
|
|
- **Total Commands:** ~104
|
|
- **Command Types:**
|
|
- Prefix commands (!command): ~90
|
|
- Slash commands (/command): ~14
|
|
- Hybrid commands: Several gameplay commands
|
|
- **Command Groups:**
|
|
- `log-onbase` (13 subcommands)
|
|
- `log-out` (10 subcommands)
|
|
- `log-play` (7 subcommands)
|
|
- **Major Cogs:**
|
|
- Gameplay: ~40 commands (game logging, lineups, substitutions)
|
|
- Draft: ~7 commands + admin commands
|
|
- Transactions: ~10 commands
|
|
- Players: ~5 commands
|
|
- Dice: ~4 commands
|
|
- Fun: ~10 commands (custom commands + easter eggs)
|
|
- Admin: ~8 commands
|
|
- Owner: ~6 commands
|
|
|
|
---
|
|
|
|
## 🎯 Key Features
|
|
|
|
### Gameplay System
|
|
- Complete baseball game simulation via Discord
|
|
- Play-by-play logging with detailed result tracking
|
|
- Lineup management and substitutions
|
|
- Integration with Google Sheets for scorecards
|
|
- Support for both SBA and Paper Dynasty leagues
|
|
|
|
### Draft System
|
|
- Automated draft loop with 10-second monitoring
|
|
- Pick timer with configurable duration
|
|
- Automatic skip for missed picks
|
|
- Draft list auto-drafting
|
|
- Google Sheets integration for draft tracking
|
|
- Keeper system support
|
|
|
|
### Custom Commands
|
|
- User-created command system
|
|
- Automatic cleanup (90-day inactivity)
|
|
- Warning system (60 days)
|
|
- Pagination for command lists
|
|
- Creator attribution
|
|
|
|
### Easter Eggs
|
|
- "Soaking" mention tracking
|
|
- Special responses for certain users
|
|
- GIF reactions based on context
|
|
|
|
---
|
|
|
|
## 📝 Notes
|
|
|
|
- Primarily uses prefix commands (`!command`)
|
|
- Limited slash command implementation
|
|
- Heavy reliance on Google Sheets integration
|
|
- Designed for in-channel baseball game play
|
|
- No structured logging system (basic Python logging)
|
|
- No caching infrastructure
|
|
- Direct database calls throughout cogs
|
|
- Manual error handling in each command
|
|
- No decorator patterns for common operations
|
|
|
|
---
|
|
|
|
**Last Updated:** January 2025
|