Как работает покер-бот

Конвейер бота простыми словами: захват экрана, распознавание стола, поиск и оценка решения, человекоподобные тайминги, локальное логирование.

Бот – это цикл, который выполняется несколько раз в секунду: посмотреть на стол, определить состояние игры, решить, действовать, записать. Каждый шаг описан ниже.

1. Захват

Бот делает скриншот окна стола – окна эмулятора для клубных приложений или собственного клиента рума на десктопе. Он не читает память и не перехватывает сетевой трафик; всё, что он знает, приходит из пикселей.

2. Распознавание

Калибровочный профиль для каждого рума говорит боту, где находятся карты, стеки, банк и кнопки. Карты сопоставляются с шаблонами; числа читаются через OCR и проверяются на правдоподобие относительно предыдущего состояния. Если уверенность распознавания падает – анимация, всплывающее окно, изменившийся макет после обновления приложения, – бот ставит игру на паузу, а не гадает.

3. Решение

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

4. Действие

Выбранное действие выполняется через эмуляцию ввода в эмуляторе или клиенте с задержкой из настраиваемого распределения, чтобы тайминги не были одинаковыми. Размеры ставок округляются до сумм, которые использовал бы человек.

5. Лог

Состояние, решение, уверенность и тайминг дописываются в локальный лог. Именно его вы просматриваете после сессии и присылаете нам, когда что-то выглядит неправильно.

Что означает такая архитектура

Чтение экрана делает бота независимым от внутренностей рума, но чувствительным к изменениям макета: обновление приложения может сломать профиль, пока мы не выпустим новый. Это также значит, что бота можно обнаружить теми же средствами, что и любую автоматизацию на стороне клиента. Этот компромисс обсуждается на странице об обнаружении.

· 2 мин чтения

Функции покер-бота (бета-сборка)

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

· 2 мин чтения

Требования: ОС, эмулятор, железо

Что нужно для запуска беты покер-бота: Windows или macOS, поддерживаемый Android-эмулятор, скромные CPU и RAM и стабильное соединение.