Graficzny bot Telegram: sloty, kostka, zakłady, profile i statystyki
Podstawowa funkcjonalność:
- System rejestracji użytkownika z weryfikacją wieku (18+).
- Mechaniki gier oparte na Telegram Dice API (sloty, kostka, piłka nożna, koszykówka, dart, bowling, orzeł/rezka).
- System zakładów i wewnętrznego salda użytkownika.
- Profil użytkownika z wyświetlaniem statystyk (rozgrywki, zwycięstwa, największa wygrana, łączna wygrana, ranking).
- Tabela liderów według wskaźników wygranych.
- Panel administracyjny z możliwością przyznawania salda użytkownikom według ID.
- Pełna praca z bazą danych (tworzenie, aktualizacja rekordów, przechowywanie statystyk).
Technologie i narzędzia:
- Python 3.10+
- Aiogram 3.x (asynchroniczny framework dla botów Telegram)
- FSM (Finite State Machine) do obsługi scenariuszy gier
- SQLite (lokalna baza danych)
- SQLAlchemy (ORM do pracy z bazą danych)
- dotenv do zarządzania konfiguracją i tokenami
Architektura:
- Modułowa struktura: oddzielne handlery dla sekcji bota (start, gry, profil, admin).
- Podział logiki na moduły (config, db, models, handlers).
- Wykorzystanie asynchronicznego podejścia i menedżerów kontekstowych do pracy z sesjami bazy danych.
- System rejestracji użytkownika z weryfikacją wieku (18+).
- Mechaniki gier oparte na Telegram Dice API (sloty, kostka, piłka nożna, koszykówka, dart, bowling, orzeł/rezka).
- System zakładów i wewnętrznego salda użytkownika.
- Profil użytkownika z wyświetlaniem statystyk (rozgrywki, zwycięstwa, największa wygrana, łączna wygrana, ranking).
- Tabela liderów według wskaźników wygranych.
- Panel administracyjny z możliwością przyznawania salda użytkownikom według ID.
- Pełna praca z bazą danych (tworzenie, aktualizacja rekordów, przechowywanie statystyk).
Technologie i narzędzia:
- Python 3.10+
- Aiogram 3.x (asynchroniczny framework dla botów Telegram)
- FSM (Finite State Machine) do obsługi scenariuszy gier
- SQLite (lokalna baza danych)
- SQLAlchemy (ORM do pracy z bazą danych)
- dotenv do zarządzania konfiguracją i tokenami
Architektura:
- Modułowa struktura: oddzielne handlery dla sekcji bota (start, gry, profil, admin).
- Podział logiki na moduły (config, db, models, handlers).
- Wykorzystanie asynchronicznego podejścia i menedżerów kontekstowych do pracy z sesjami bazy danych.