Полноценная реализация игры детства «Пятнашки» прямо в вашем Telegram-боте.
Game 15 — это Telegram-бот, реализующий классическую логическую игру «Пятнашки» (игра в 15). Игровое поле 4×4 с 15 пронумерованными фишками и одной пустой клеткой. Цель — упорядочить фишки по возрастанию, перемещая их на пустое место.
Игровой процесс полностью адаптирован под интерфейс Telegram:
- 🎮 Управление стрелками через Reply-клавиатуру
- 🖼 Игровое поле отображается в виде Inline-клавиатуры с редактируемым сообщением
- 🏆 Встроенный рейтинг игроков на базе SQLite
- ⚙️ Возможность смены никнейма в таблице рейтинга
Проект создавался как полноценное, готовое к использованию приложение — не просто учебная практика, а вещь, которой можно пользоваться и делиться с друзьями.
| Функция | Описание |
|---|---|
| 🎯 Игровой процесс | Классические пятнашки с генерацией поля путём многократного перемешивания выигрышной комбинации |
| ⌨️ Управление | Кнопки-стрелки (⬆️ ⬇️ ⬅️ ➡️) на Reply-клавиатуре |
| 🖥 Отображение поля | Inline-клавиатура в редактируемом сообщении — поле обновляется без спама |
| 🏅 Рейтинг | Топ-10 игроков с количеством побед; своя позиция в таблице |
| ✏️ Смена никнейма | Изменение отображаемого имени в рейтинге |
| 🔗 Гиперссылка | Опциональное отображение никнейма со ссылкой на Telegram-профиль |
| 📢 Подписка на канал | Проверка подписки на канал перед началом игры |
| 🛑 Остановка игры | Возможность завершить партию в любой момент |
- Python 3.7+ — язык разработки
- pyTelegramBotAPI — взаимодействие с Telegram Bot API
- SQLite — хранение данных пользователей и рейтинга
- Telegram Inline & Reply Keyboard — интерфейс управления
git clone https://github.com/leonidpoezzhaev/Game15.git
cd Game15pip install pyTelegramBotAPIОткройте файл game15.py и укажите свой токен бота и ID канала:
bot = telebot.TeleBot('YOUR_BOT_TOKEN') # Замените на токен вашего бота
chanel = '-1003480826321' # Замените на ID вашего каналаpython game15.py- Запустите бота командой
/start - Подпишитесь на указанный канал и нажмите «✅Проверить подписку»
- Нажмите «Начать игру» — появится поле 4×4
- Управляйте фишками с помощью стрелок на клавиатуре:
- ⬆️ — сдвинуть фишку вверх
- ⬇️ — сдвинуть фишку вниз
- ⬅️ — сдвинуть фишку влево
- ➡️ — сдвинуть фишку вправо
- Соберите все числа по порядку от 1 до 15 — победа! 🎉
- Каждая победа приносит +1 к рейтингу
- Генерация поля: игра создаётся путём многократного перемешивания выигрышной комбинации, что гарантирует решаемость любой позиции.
- Интерактивность: игровое поле обновляется в одном сообщении через
edit_message_text— никакого спама и удобный интерфейс. - Рейтинг: все победы сохраняются в SQLite-базе данных, доступен топ-10 игроков.
Game15/
├── game15.py # Основной код бота
├── rating.db # База данных с рейтингом (создаётся автоматически)
└── README.md # Этот файл
- Переписать на Aiogram для более современной архитектуры