Documentation Index
Fetch the complete documentation index at: https://mintlify.com/developer51709/Niko/llms.txt
Use this file to discover all available pages before exploring further.
Niko’s casino cog offers three classic games — Blackjack, Slots, and Roulette — all rendered with rich Discord component cards and wired directly into the economy system. Each game has interactive buttons or dropdowns so everything stays inside a single message.
All casino games share the economy’s coin (🥐) system. Winnings and losses are applied directly to your wallet balance. Make sure the EconomyCog is loaded before starting any casino game.
Blackjack
Standard casino Blackjack against a dealer, played from a persistent 6-deck shoe.
| Command | Description |
|---|
/blackjack | Show available Blackjack subcommands. |
/blackjack play <amount> | Start a game of Blackjack with the specified bet. |
/blackjack tutorial | Read a paginated 6-page tutorial covering rules, card values, and strategies. |
How It Works
- Place your bet with
/blackjack play <amount>.
- The bot deals two cards to you and two to the dealer (one dealer card is hidden).
- Use the interactive buttons to play your hand.
- The dealer reveals their hole card and plays by fixed rules (hits until hard 17+, hits on soft 17).
- The round settles automatically and your balance is updated.
| Button | Action |
|---|
| Hit | Draw another card. |
| Stand | End your turn and let the dealer play. |
| Double | Double your bet and receive exactly one more card (available on first two cards only). |
| Split | Split two same-rank cards into two separate hands (up to two splits per round). |
| Take Insurance / Decline | Offered when the dealer’s up-card is an Ace. Insurance pays 2:1 if dealer has Blackjack. |
Payouts
| Outcome | Payout |
|---|
| Win (standard) | 1:1 (bet returned + equal winnings) |
| Natural Blackjack (Ace + 10-value) | 3:2 (e.g. 100 🥐 bet → +150 🥐) |
| Push (tie) | Bet returned, no gain or loss |
| Bust / Dealer wins | Bet lost |
| Insurance win | 2:1 on the insurance side-bet |
The game uses a 6-deck persistent shoe stored in blackjack_shoe.json. The shoe reshuffles automatically when fewer than 20 cards remain.
Cooldown: Controlled by the BLACKJACK_COOLDOWN environment variable (default: 60 seconds).
Slots
A 3×3 slot machine with weighted symbols, multiple paylines, and a spin animation.
| Command | Description |
|---|
/slots | Show available Slots subcommands. |
/slots play <amount> | Spin the slot machine with the specified bet. |
/slots payouts | View the full payout table and active paylines. |
How It Works
- Place your bet with
/slots play <amount>.
- The machine plays a short 3-frame spin animation before revealing the final 3×3 grid.
- All matching paylines are evaluated and payouts are summed. If no line matches you lose the bet.
Symbol Tiers & Payouts
Symbols are drawn from a weighted pool. Rarer symbols appear less frequently.
| Tier | Symbols | Matching Line Multiplier |
|---|
| Common | 🍒 🍋 🍊 | 2× bet |
| Uncommon | 🍇 🍉 🍓 | 3× bet |
| Rare | 🍀 💎 | 5× bet |
| Jackpot | ⭐ | 25× bet |
| Full Board Jackpot | All 9 cells identical | 100× bet |
Active Paylines
Payouts are evaluated across five paylines simultaneously:
- Middle row (row 2)
- Top row (row 1)
- Bottom row (row 3)
- Diagonal ↘ (top-left → bottom-right)
- Diagonal ↙ (top-right → bottom-left)
Multiple paylines can hit on the same spin — all are summed together.
Cooldown: Controlled by the SLOTS_COOLDOWN environment variable (default: 60 seconds).
Roulette
Interactive European Roulette (single zero, 37 pockets) with a fully button-driven betting flow.
| Command | Description |
|---|
/roulette | Start an interactive roulette session. |
How It Works
The /roulette command walks you through a multi-step interactive flow entirely within one message:
- Choose bet category — Red/Black, Odd/Even, High/Low, Dozens, Columns, or Inside Bets.
- Choose your specific bet — e.g. pick Red, or select an inside bet type (Straight, Split, Street, Corner, Line).
- Pick a chip amount — 10, 50, 100, or 500 🥐.
- Spin — the wheel lands on a number from the European wheel (0–36).
- Result — win/loss is calculated, your balance updated, and a Spin Again button is offered.
Payout Table
| Bet Type | Coverage | Payout |
|---|
| Red / Black | 18 numbers | 1:1 |
| Odd / Even | 18 numbers | 1:1 |
| Low (1–18) / High (19–36) | 18 numbers | 1:1 |
| 1st Dozen (1–12) | 12 numbers | 2:1 |
| 2nd Dozen (13–24) | 12 numbers | 2:1 |
| 3rd Dozen (25–36) | 12 numbers | 2:1 |
| Column 1 / 2 / 3 | 12 numbers | 2:1 |
| Line (6 numbers) | 6 numbers | 4:1 |
| Corner (4 numbers) | 4 numbers | 7:1 |
| Street (3 numbers) | 3 numbers | 10:1 |
| Split (2 numbers) | 2 numbers | 16:1 |
| Straight (single number) | 1 number | 34:1 |
Niko uses a European wheel (single zero). Landing on 0 means all outside bets (Red/Black, Odd/Even, High/Low, Dozens, Columns) lose. Inside bets covering 0 still pay out normally.
Cooldown: 60 seconds, hardcoded as ROULETTE_COOLDOWN = 60 in roulette.py. This value is not read from an environment variable and must be changed directly in the source file.
Cooldown Configuration
Blackjack and Slots cooldowns are configured via environment variables in your .env file and default to 60 seconds if the variable is absent. Roulette’s cooldown is hardcoded in roulette.py and must be changed there.
SLOTS_COOLDOWN="60"
BLACKJACK_COOLDOWN="60"
To set a 2-minute cooldown for slots, for example:
Longer cooldowns slow down coin flow from casino wins, helping keep the server economy balanced. If your server has high activity, consider setting cooldowns to 120–300 seconds to prevent runaway wealth accumulation.
Connect Four & Tictactoe
Two multiplayer mini-games for head-to-head competition. Neither game has a coin wager — they are purely for fun and bragging rights. Both commands live in the Fun cog and are prefix-only (not slash commands).
| Command | Aliases | Description |
|---|
connectfour <opponent> | connect4, c4 | Challenge another server member to a Connect Four match. Use the interactive column buttons to drop your piece. First player to connect 4 in a row (horizontally, vertically, or diagonally) wins. |
tictactoe [member] | ttt | Challenge another server member to Tic-Tac-Toe. An interactive 3×3 button grid is displayed; players alternate turns until someone wins or the board fills. |
Both games are limited to the two participants — only the challenged players can interact with the buttons.