9

Как я с ChatGPT писал игры для телеграмм

Ох, давненько я ничего не писал. Все читал пикабушечку и тоже рефлекрисовал на теме отсутствия контента нормального. И вот он! Таки завезли!

Картинка для привлечения внимания:

Как я с ChatGPT писал игры для телеграмм Telegram, Компьютерные игры, Gamedev, Манул, Мобильные игры, Инди, Длиннопост

В этом посте будут ссылки на телеграм. Много ссылок!

С чего всё началось-то? А с хомяка. Тапал я эту шнягу, потом друзья подкинули еще проект, третий, четвертый. И вот очнулся я, когда помогал какому-то бомжу в игре подняться до высот недосягаемых. В этот момент меня посетила мысль - "Что я делаю со своей жизнью? Зачем СЕБЯ так мучить?"

И я решил написал свою игру тапалку для телеги. Но меня встретили несколько проблем:
- Я не знаю JavaScript
- Не знаю толком CSS с HTML
- Не знаю Python или даже Node.js
- Я вообще не понимаю, как подступить к созданию телеграмм мини-приложений.

Как видно, проблем было много. Но у меня был запал, был свой VPS сервер на CentOS за который я зачем-то плачу по 400 рублей в месяц, где крутится мой маленький бложик по Таиланду, который я уже несколько лет не обновляю. Но проблемы описанные выше сильно мешают идти к цели.

Но тут внезапно вдруг ни с того ни с сего OpenAi выкатывает новенькую модель ChatGPT O1 (Preview и Mini), с обещаниями, что это теперь доктора технических наук будут у вас в кармане нашептывать ответы на любые вопросы. А у меня как раз подписочка имеется на Plus версию. Почему бы не затестить? Звезды прям так и складываются.

Собственно я и пошел к ЧатГПТ с вопросом: а как к этой вашей телеграме подступиться, да еще и шоб можно было вау-вау и деньги рубить? И этот "дохтор наук карманный" таки выдал мне. Так подробно, что я даже немножко себя дурачком почувствовал.

Первая была игра по типу три-в-ряд:

Шахтер

Как я с ChatGPT писал игры для телеграмм Telegram, Компьютерные игры, Gamedev, Манул, Мобильные игры, Инди, Длиннопост

Ссылочка на игру: https://t.me/match_three_bot_bot

Фон, ассеты, код - все это делал ChatGPT. Конечно не за один запрос. Потратил я на это дело не один день. Здесь я начал свое знакомство с созданием игр для телеграм. Понял, что необходимо разделять серверную часть от клиентской, но самое интересное я понял, что: все телеграмм-игры - это просто сайты, которые хранятся где-то и куда разрешают заходить только через телеграмм. Ограничение такое из-за дальнейшей работы с пользователем по его ID. Так записываются очки, ваш прогресс в игре и так далее. Это было интересным знанием.

Дальше - больше. Три-в-ряд - это классика, а хочется чего-то новое. Так я сделал...

МАМКИН ТРЕЙДЕР

Как я с ChatGPT писал игры для телеграмм Telegram, Компьютерные игры, Gamedev, Манул, Мобильные игры, Инди, Длиннопост

Ссылочка на игру: https://t.me/mother_trader_game_bot

Графики тут меньше, но больше логики. В этой игре я познакомился с таким понятиями как "Сцена". Можно менять одну на другую. Долго не мог заставить ЧатГПТ делать то, что игра должна была. А смысл у нее простой: вы заходите и покупаете Билет (просто представьте, что вы заплатили 1000 рублей за этот билет и поймете, на какие мечты я рассчитываю), после чего вас пускают к торговому терминалу. Задача - набрать как можно больше очков. Выиграть тут нельзя, а вот проиграть можно все до трусов. Удивительно, но когда написал эти строки, понял, что игра получилась поразительно жизненной.

Вы делаете ставку (в данной версии игры мы работаем только с фьючерсами криптовалюты, назовем ее MamCoin), и нажимаете Покупай. Если цена пойдет вверх, то вы будете выходить в плюс, если цена пойдет вниз и упадет ниже 10% от вашей покупной цены, то произойдет ликвидация актива. Ваша ставка сгорит. Я столько бабла в реальной жизни на такие ситуации потратил... если бы жена только знала...

График рисуется в рандомном направлении. Есть иногда глюки, когда он совсем внизу. Сдается мне это из-за отрицательных значений. Но исправлять не хочется. Попробовал, поиграл, и хватит.

С другой стороны - игры это не для всех. А вот полезный бот может пригодиться всегда. Так я пришел к идее сделать бота, который рисует qr-code по присланной ссылке.

EASY QR CODE

Как я с ChatGPT писал игры для телеграмм Telegram, Компьютерные игры, Gamedev, Манул, Мобильные игры, Инди, Длиннопост

Ссылочка на бота: https://t.me/easy_qr_code_bot

Здесь я уже познакомился с парсингом и ответом на запросы пользователя. А также узнал, что QR-Code - это стандартная функция в Питоне. Был приятно удивлен.

К слову сказать, если вдруг по какой-то причине вы откроете моих ботов и они не будут работать - это все эффект пикабу. Интересно хостер меня прижучит за перерасход трафика и напряг сервера? Ну да ладно! У меня сервер на 2 гигагерца с 512 мегами оперативы. Должен справиться.

ДДоСьте меня, Ддосьте меня полностю!

Буду рад вашему фидбеку по программам, а возможно по советам для бота. Так-то я знаю, что этих ботов, которые полезные, как собак нерезанных. Каждый хорош в чем-то своем. Но я решил написать миллионный бот, который будет Куары шлепать. Разве это плохо?

Но это еще не конец, это был разогрев к моему главному проекту.

КЛИКЕР

Собственно все, для чего это затевалось. Я начинал с того, что кликал на чужих виртуальных хомяков, но мне захотелось своего. Без идеи, без всего. Просто кликер

Как я с ChatGPT писал игры для телеграмм Telegram, Компьютерные игры, Gamedev, Манул, Мобильные игры, Инди, Длиннопост

Ссылку не дам, потому что он сломался (объясню ниже).

Но смысл у игры простейший - кликаешь, набираешь очки. Ничего заумного, ничего оригинального. Просто посмотреть, как это все работает. Тут-то я глубже познакомился с сохранением данных пользователя. На самом деле, пока я его тестил, мне показалось, что я накликал даже больше чем в хомяка.

А сломался он по причине переезда. Я решил переехать сервером в Амазон. Так как я живу в Таиланде, то выбрал сервер поближе ко мне - Сингапур. Поставил туда Убунту на двухядерный двухгигагерцовый комп с 512 мегабайтами оперативы. Удовольствие это всего на 5 баксов в месяц да еще и первые 3 месяца бесплатно. Поэтому почему бы и нет?

Переехал, поставил игру. Все нормально. Игрался. Когда пошел делать новый проект, оказалось, что я настроил как-то не так домашнюю папку и все последующие проекты у меня должны быть внутри с игрой кликером. Странно это все. Переделывать не хочется ибо командная строка буквально надоела мне за это время. Столько я мучился с загрузкой на сервер, с SSH шифрованием, ключами, правами доступа. Это все новое для меня, все это добавляет ступеньки к достижению целей.

Но все же мы пришли к моему финалу на текущий момент:

Погладь кота!

Как я с ChatGPT писал игры для телеграмм Telegram, Компьютерные игры, Gamedev, Манул, Мобильные игры, Инди, Длиннопост

Ссылка: https://t.me/Manul_pet_bot

Да, это тоже кликер. Но вы посмотрите на этого Манула, ведь так и хочется его Погладить! Поэтому ПОГЛАДЬ КОТА!

Да, простая идея, мне даже кажется немного забавной. Мы не кликаем, не тапаем, а гладим кота (хотя технически нам надо тапать).

Хм... сейчас подумал, что на телефонах можно таки реализовать идею поглаживания... Но это будет для следующих версий.

Что здесь я открыл для себя нового? Здесь я смог реализовать окно загрузки (кстати, если будете запускать, скажите как долго грузится игра?). Учитывая, что большинство читателей будут из России, а сервер в Сингапуре, соединение может быть плохим. Поэтому я сделал окно загрузки. Это не просто экран с текстом, это реально подзагрузка изображений. Какие еще есть изображения, спросите вы? Никто у тебя ничего не спрашивает!

А я сделал ачивки! Для этого познакомился с таким понятием как модальные окна в JS. Интересно оказалось.

Также в этой игре сохраняется счет после выхода. Каждый пользователь имеет свой уникальный номер привязаный к ID телеграмма. Поэтому если зайти через приложение на компе или в телефоне - у вас будут один счет. Это здорово.

В этой же игре (и в какой-то еще, не помню) я реализовал запрет на запуск через браузер. Т.е. если вы каким-то образом сможете получить ссылку на клиентскую часть бота у вас не получится запустить. Это тоже круто.

Единственное, как мне подсказывает chatGPT, у меня может возникнуть проблема при достижении онлайна свыше 500 человек. Потому что все клики у меня посылаются на сервер через обычный JSON. А это значит могут быть глюки, лаги, и даже сбои. Конечно же я такое сам протестить не могу. Попрошу вас это сделать. Просто потыкайте игрушку, а я специально для вас сделал ачивки.

Сколько их? Не скажу. Но честно сказать, их можно легко открыть за 2-3 минуты кликов. Если будут идеи на дополнительные ачивки - то велком в комменты, буду рад добавить ваши варианты, ваши идеи.

И опять же, если сработает эффект пикабу, то оба моих сервера (Московский с ботом для QR и Амазон с играми) рухнут. Или из-за недостачи процессорного времени или из-за памяти или из-за чего-то еще.

Такие дела.

Послесловие

Я не скажу, что я стал крутым специалистом в разработке ботов на телеграмме, но мне это было интересно, даже весело. Это же здорово, когда ты можешь написать какую-то игру... Ну опять же с помощью ChatGPT, но все же. Ему многие моменты мне приходилось разжевывать, чтобы он понял идею. Здесь мой скилл промт-инженеринга сильно подрос.

Но я и дальше буду пытаться делать проекты для телеграмма. В следующих версиях хочу научиться подключить Web3 кошелек от телеги, чтобы можно было принимать крипту для оплаты, а там уже и донаты можно собирать. Но это будет в будущих версиях.

Лига Геймеров

53.9K пост91.5K подписчика

Правила сообщества

Ничто не истинно, все дозволено, кроме политоты, за нее пермач, идите на ютуб
Помни!
- Новостные/информационные публикации постим в pikabu GAMES
- Развлекательный контент в
Лигу Геймеров



Нельзя:

Попрошайничать;

Рекламировать;

Оскорблять участников сообщества;

Нельзя оценивать Toki Tori ниже чем на 10 баллов из 10;

Выкладывать ваши кулвидосы с только что зареганных акков - пермач

За неэтичное использование сообщества - тоже бан. Если ты выкладываешь пост в наше сообщество и получаешь стартовые плюсы от наших подписчиков, не думай, что вытаскивать потом пост в своё личное сообщество будет умным поступком.