Любопытный Код
83 subscribers
39 photos
6 videos
1 file
3 links
Технический канал квест-бота про котиков: @Cat_game_bot

Канал квест-бота: @Curios_Cat
Download Telegram
Угадаете что это?
EVENT_YEAR|EVENTS_COUNT|
2019|1735|
2020|11579|
2021|17699|
2022|37951|
2023|54794|
2024|191853|
2025|1119778|
2026|397856|
👀3🤔2🤓1
Ну что, бот теперь живёт на PostgreSQL, обзавёлся индексами и архивированием данных. Так что теперь он работает быстрее и предсказуемей 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
3❤‍🔥2🔥2👏1🎉1
😁5🔥2👍1💩1
По мотивам переписки в чате. Никаких исключений.
7
И так — проверка работы бота-модератора. По плану сообщение не должно быть удалено из чата, и можно будет оставить пару комментариев.
🎉71👍1🔥1
‼️ Перед тем как поделиться новым обновлением, нужно сделать некоторую вводную.
Переменные бота сейчас поддерживают несколько скоупов:

USER - относится только к игроку, не привязана к чату (например скорость чтения квестов или настройка упоминания)
CHAT - относится только к чату (уровень приманок, действия феромона)
CHAT_USER - работает для юзера в чате (деньги, количество колокольчиков)
LOCAL - существуют только пока жива сессия квеста, нужны для того чтобы, например, запоминать выбор игрока в квесте
QUEST - нужны для сохранения прогресса в квесте
QUEST_CHAT - нужны для сохранения прогресса в квесте для чата


И вот теперь, когда вы ознакомились с типами скоупов переменных я могу торжественно объявить о добавлении новом типе - WORLD. Такие переменные нужны для того чтобы хранить информацию о мире, которая сразу относится ко всем чатам и игрокам.

〰️ Делитесь в комментариях идеями, как это можно будет использовать
Please open Telegram to view this post
VIEW IN TELEGRAM
Все 7 лет, что я разрабатываю Котобота я страдал. Страдал от необходимости закрывать опросы перед деплоем. Сейчас объясню!

Когда пользователь присылает картинку и бот создаёт опрос "Это кот?", информация об этом опросе помещается в оперативную память. И при перезагрузке приложения эта информация терялась. И, конечно же, опросы, созданные игроками, терялись, становясь неактивными. Позорише короче.

А установка каждого обновления требовала перезагрузки. Вы понимаете, да? Чем больше обновлений и фиксов, тем больше позора.

В какой-то момент я написал команду для форсированного закрытия опросов, для закрытия было достаточно хотя бы одного голоса, а если голосов нет - то результат нулевой.

Это было чуть удобнее, но не слишком. Каждый деплой надо было не забыть вызвать команду, плюс дождаться её выполнения. И чтобы телега не наказала бота за слишком частую отправку сообщений, приходилось добавлять паузу в секунду между закрытиями опросов. И приходилось ждать, иногда очень долго ждать. Не знаю, кто это люди, что открывают по 300 опросов в день, и сильно сомневаюсь, что там везде уличные котики, но это их право.

К чем я всё это? Вчера я реализовал персистентное хранение данных опроса 🎉 Чуть меньше страданий, чуть меньше позора 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Любопытный Код
‼️ Перед тем как поделиться новым обновлением, нужно сделать некоторую вводную. Переменные бота сейчас поддерживают несколько скоупов: USER - относится только к игроку, не привязана к чату (например скорость чтения квестов или настройка упоминания) CHAT…
Вы уже могли видеть пару примеров использования переменных скоупа WORLD (общие для всех, не привязаны ни к чату, ни к игроку).

1. Общие усилия - перед тем как получить бонус, суммарно 300 игроков должны были совершить действия

2. Бонус доступен в определенное время суток, в другое предлагает вернуться позже

На счёт второго немного сомневался, т.к. это ограничивает контент. Но мне очень нравится идея, и то, что картинка меняет в зависимости от времени суток. Так что я оставил и горжусь.

Так вот. Я что, зря создавал технический канал для самых умных игроков? Давайте, набрасывайте идеи в комментариях 🤪
Please open Telegram to view this post
VIEW IN TELEGRAM
"Ставим ставки" - когда релиз?
165
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Forwarded from Котобот
DAU 962 (Δd −707 / Δw +148) · DAC 628 · stickiness 14% · w/m 47%
New users: 100 · Returning: 862

Quests: 725 plays / 453 users · timeout 0% · 👍283 🤔41 👎37 171
Story: HouseOnTreeCatPhase 24, long_train_journey 23, TheeCatInWindowPhase 22
Routine: FishingPhase 30, VladimirWorkshopVisitPhase 4, caffe_visit_stub 3

Real: 13 polls · 0.5 votes/poll
Promo: waiting 0 → used 0

Chats: +19 new active · 332 went quiet (7d)
#daily_stats
2👀2
Котобот
DAU 962 (Δd −707 / Δw +148) · DAC 628 · stickiness 14% · w/m 47% New users: 100 · Returning: 862 Quests: 725 plays / 453 users · timeout 0% · 👍283 🤔41 👎37 171 Story: HouseOnTreeCatPhase 24, long_train_journey 23, TheeCatInWindowPhase 22 Routine: FishingPhase…
Вот такую ежедневную выжимку получаю от бота для анализа игровой активности.

Жду ваш глубокий анализ и вопросы в комментариях 🤓
Please open Telegram to view this post
VIEW IN TELEGRAM
1