Skip to content

temig74/en_engine_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

temig_en_engine_bot

engine monitoring bot for encounter

author: Temig (https://world.en.cx/UserDetails.aspx?uid=154783)

Версия 1.1:

  • Добавлена экспериментальная опция построителя маршрутов (команда /route_builder). Для её использования вам необходимо будет получить Api-ключ Яндекса "JavaScript API и HTTP Геокодер": https://developer.tech.yandex.ru и вписать Yandex_api_key в settings.ini. Показывает начало доезда и весь доезд целиком при обнаружении новых координат в задании\подсказке и .т.п. от прошлых распознанных координат. Также можно вручную задать текущую стартовую позицию командой /set_coords.
  • Некоторые небольшие изменения:
    • добавлен тг-ник пробившего через бот в выдаче /sectors и /bonuses (удобно видеть, какой полевой какие сектора закрывал через бот)
    • реплай сообщения бота не вызывает пробития реплая
    • добавлена команда /game_info со ссылкой на игру (также можно добавить док командой /set_doc)
    • добавлена команда /sectors_left, показывающая только оставшиеся сектора
    • автоматическое отключение ввода кодов при нахождении в тексте уровня вхождений "ложн" или "штраф"
    • папка level_snapshots для хранения истории уровней будет создана автоматически, если она отсутствует

Функции бота 1.0:

  • Отправка информации об уровне (номер, текст уровня, автопереход, инфа о блокировке ответов)
  • Отправка информации о секторах, бонусах, подсказках на уровне.
  • Ввод кодов (в т.ч. принудительный ввод при блокировке ответов)
  • Мониторинг движка (автопереход и выдача нового задания, приход подсказки, время до апа, закрытие сектора, закрытие бонуса)
  • Мониторинг изменений (поменялось задание уровня, добавлено сообщение, количество секторов поменялось, количество бонусов поменялось, количество секторов для прохождения поменялось, добавлена подсказка)
  • Запись на диск информации о прошедших уровнях (можно посмотреть закрывшие бонусы и сектора ответы)
  • Показать скриншот текущего уровня (нужен Firefox)
  • Открыть браузер, привязанный к сессии бота (нужен Firefox), на компьютере, где запущен бот
  • Отправить геометку по координатам
  • Парсинг текста на координаты и kml
  • Добавить тг полевых игроков (их будет тегать через @ при апе)

Чтобы запустить бота, необходимо:

  • Скачать последнюю скомпилированную в exe версию из релизов (нужна win >=10): https://github.com/temig74/en_engine_bot/releases или запускать из исходников через питон, установив все необходимые библиотеки (requests, pyTelegramBotAPI, selenium), использовалась последняя версия питона 3.12
  • Зарегистрировать своего бота у https://t.me/BotFather, получить Токен, вписать этот токен в конфиг бота (Token в settings.ini). Для своего удобства у BotFather можете добавить нужные вам команды для бота, которые будут предлагаться после ввода / (через edit commands)
  • Добавить логин(ы) в тг в список админов бота в settings.ini
  • Добавить зарегистрированного бота в игровой чат
  • Авторизовать бота на игру:
    • либо в самом игровом чате: /auth домен id_игры логин пароль)
    • либо через личку, если не хотите светить пароль в чате: /auth домен id_игры логин пароль id_чата
  • Id чата можно получить в игровом чате командой /get_chat_id (для групповых чатов он отрицательный, это нормально, вписывать тоже с минусом)
  • запустить мониторинг: /game_monitor

Подробно с командами бота можно ознакомиться /help:

  • /help - этот help
  • /auth домен id_игры логин пароль [id_чата] - авторизовать бота на игру в игровом чате
  • /stop_auth - отключить чат
  • /get_chat_id - получить id чата
  • /game_monitor [0] - включить[отключить] слежение за игрой
  • /sectors [level№] - показать сектора [прошедшего_уровня]
  • /sectors_left - оставшиеся сектора на уровне
  • /bonuses [level№] - показать бонусы [прошедшего_уровня]
  • /hints - показать подсказки
  • /task - показать текущее задание
  • /screen - скриншот текущего уровня (необходим firefox)
  • /любой_код123 - вбитие в движок любой_код123
  • /accept_codes [0] - включить[выключить] прием кодов из чата
  • /sector_monitor [0] - включить[выключить] мониторинг секторов
  • /bonus_monitor [0] - включить[выключить] мониторинг бонусов
  • /route_builder [0] - включить[выключить] построитель маршрутов (требуется Yandex_api_key в settings.ini)
  • /time - оставшееся время до апа
  • /load_old_json - загрузить информацию о прошедших уровнях игры из файла (при перезапуске бота)
  • /geo или /* координаты через пробел - отправить геометку по координатам
  • /set_players @игрок1 @игрок2 - установить список полевых игроков
  • /open_browser открыть бразуер на компьютере, где запущен бот, привязанный к сессии бота (необходим firefox)
  • /leave_chat id_чата - покинуть чат с указанным id
  • /game_info - информация об игре
  • /set_doc - установить ссылку на гуглдок
  • /set_coords - установить текущие координаты (для построителя маршрутов)