Telegram-бот казино с играми, дуэлями, розыгрышами, депозитами и выводами. Проект построен на aiogram 3 и использует SQLite (WAL) в качестве хранилища.
- Мультиязычность (RU/EN) с выбором языка при первом запуске.
- Проверка подписки на заданные каналы (subscription gate).
- Профиль игрока: баланс, рефералы, статистика побед/поражений.
- Депозиты: Rocket (чек), CryptoBot/USDT (инвойс), Telegram Stars.
- Вывод средств: заявка на вывод с проверкой кошелька (USDT TRC‑20 или TON), минималка 5$.
- Реферальная система: 10% от проигрышей приглашённых пользователей.
- Реф-ссылка формата
/start ref<id>.
- Dice: ставки 1–100$, режимы «чёт/нечёт» (x2) и «число» (x6).
- Russian Roulette: 5 этапов с растущим множителем (1.2x → 4.0x) и анимацией.
- Mines: поле 5x5, 1–24 мины, динамический множитель, кешаут в любой момент.
- Blackjack: 6 колод, hit/stand/double, выплаты: win x2, blackjack x2.5, push x1.
- Roulette (slot 🎰): победа при значении 50+ (x2).
- Quick Sports: футбол/дартс/баскет/боулинг — победа при броске 4+ (x2).
- Tower (experimental): демонстрация seed/hash (провайбли‑фейр), скрыто от меню.
- Дуэли: dice/darts/football/basketball/bowling, победитель забирает банк.
- Розыгрыши: автор задаёт взнос, приглашение рассылается всем игрокам, случайный победитель забирает банк.
- Админ-панель
/admin. - Очередь заявок на вывод: одобрение/отклонение.
- Начисление баланса пользователю.
- Настройки: каналы подписки, реквизиты, лог-чат дуэлей, ссылка поддержки.
- Статистика: пользователи, количество игр, оборот ставок, депозиты/выводы, прибыль.
- Леджер транзакций с
before/afterи метаданными. - Логи игр и дуэлей в отдельные каналы (опционально).
- Идемпотентные платежи через
pending_payments.
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python main.pyСоздайте .env в корне проекта (пример ниже).
Обязательные:
BOT_TOKEN— токен Telegram-бота.ADMIN_IDилиADMIN_IDS— ID администратора(ов).
Опциональные:
CHANNELS— каналы для проверки подписки (через запятую или пробел).CRYPTO_TOKEN— токен CryptoBot (aiocryptopay).ROCKET_API_KEY— ключ Rocket для проверки чеков.STARS_USD_RATE— курс Stars → USD (по умолчанию 0.01).START_BALANCE,START_BONUS— стартовые значения (используются при инициализации).DUEL_LOG_CHANNEL,GAME_LOG_CHANNEL— чаты логирования.SUPPORT_URL— ссылка на поддержку.ROCKET_BOT,CRYPTO_BOT— реквизиты в настройках.
Пример .env:
BOT_TOKEN=123456:ABCDEF...
ADMIN_ID=123456789
CHANNELS=@channel1, @channel2
CRYPTO_TOKEN=...
ROCKET_API_KEY=...
STARS_USD_RATE=0.01
DUEL_LOG_CHANNEL=-1001234567890
GAME_LOG_CHANNEL=-1001234567891
SUPPORT_URL=https://t.me/your_support/start— запуск и выбор языка./menu— главное меню./admin— админ-панель (только для админов).
main.py— точка входа, регистрация роутеров и middleware.handlers/— обработчики команд/кнопок.services/— бизнес-логика (баланс, платежи, рефералы, логи).database/db.py— SQLite слой с транзакциями и журналом.keyboards/— инлайн-клавиатуры.locales/— переводы.
Хранилище — SQLite (database/casino.db), таблицы создаются на старте. Включены транзакции, WAL, логи транзакций и таблицы для дуэлей, розыгрышей и платежей.
© 2026. Все права защищены. Авторские права принадлежат владельцу этого репозитория.
При использовании кода в сторонних проектах получите письменное согласие правообладателя.