Comments 58
Да, он сохраняет каждого пользователя в отдельный файл (чтобы не нагружать БД и не потерять в случае падения БД)
sqlite: файл-бд
ну или бд-файл
не потеряется и можно на флешку project.db скопировать ))))
по боту. немного скучновато. Есть книги-игры, возьмите готовую, помню в детстве играл в "Подземелья Черного Замка". Там порядка 1000 игровых ситуаций в дереве.
Можно поподробнее?
Рано или поздно все урется в возможности HDD, и тогша ваш лот будет отвечать по 10 секунд каждому пользователю. А если файлов будет миллион, то бот будет только 30 минут открывать один файл
Внезапно закончилось место, каждый файлик занимал 4 килобайта, даже если в нём был один символ, а файликов было мнооого.
Поэтому очень-очень рекомендую вам использовать для хранения данных базу данных, они для этого и придуманы.
Там сейчас 11к файлов и они занимают 50 мегабайтов. Искрине верю, что место не закончится в ближайшее время (:
Чтобы найти лучшего игрока, или игроков с именем на T* вам придется пройти все 11000 файлов. Это огромная нагрузка на HDD. Да, все начинают с файлов, но надо обязательно переходить на БД. Ничего страшного признаться, что вы не знаете их преимуществ (а иначе бы точно перешли бы на них изначально). БД позволяют выдерживать самую первую нагрузку — нагрузку на диск, и это как раз ваш случай.
Но мне не нужен поиск по юзерам
Да даже загрузить последние команды пользователя у вас будет уходить по несколько секунд перегрузки HDD, а значит остальные пользователи будут ждать бота, и повторять команды. Все это будет еще больше перегружать бота как снежная лавина, и в итоге вам нужно будет что-то делать.
И дело вовсе не в размере файлов, а в их количестве
Получится как с «Проблемы с доступом к Джойказино? Добавьте цифру 1 названию сайта»
Каждый лишний клик юзера заставляет юзера уходить, что не круто
Отступы табами в питоне?! Но как же PEP8...
MUD добрался до Telegram?
Как говорится, все идет по кругу. Раньше игры были текстовые. Потом 2d, 3d, потом на планшетах и телефонах, потом игры в браузерах на любую платформу. Сейчас мы видим игры текстовые в Телеграмме, а потом Телеграмм будет со своей песочницей для запуска игр на любом телефоне. Ну а потом снова все будет в браузерах, который есть у всех, в отличии от мессендеров
Спасибо за хороший рассказ. Сам писал бота-калькулятор. Телеграмм прекрасен.
Собственно я так и делаю.
Полагаю, что помочь может использование editMessageText и т.д. по нажатию на инлайн кнопку, поскольку в данном случае отправки нового сообщения не произойдет, а так же по возможности использовать answerInlineQuery для уведомлений разного характера, которые не обязательно отправлять сообщением. У нас в боте проблем с лимитом на отправленные сообщения не возникало, однако в районе половины всех ответов пользователю у нас уходят именно как editMessage по инлайн-кнопке.
Но, к сожалению, бот решил мне не отвечать. Вообще. Совершенно.
История одного бота