Страница 1 из 1

Автоматизация 3D игры в виртуальной машине

СообщениеДобавлено: 14 окт 2018, 20:26
Alex
Добрый день!

Во первых, AutoClickExtreme - очень нужная и хорошая программа. Спасибо!

Пытаюсь автоматизировать бота в 3D игре Royal Revolt 2 (из магазина Windows) в виртуальной машине (ВМ) Hyper-V. Т.к. только в ней, в отличие от VMware и VirtualBox, удалось пробросить в ВМ видео карту в режиме vGPU. В VMware и VirtualBox 3D обеспечивается только за счет процессора, в результате "тормоза", "работать" не возможно.
И хост и ВМ - Windows 10.
Особенности RR2: работа только на полный экран, никаких хот-кеев (только несколько клавиш в бою).
Причем, RR2 явно сопротивляется боту. Картинка на экране отличается от скриншота сделанного по [Win]+[Alt]+[PrnScrn] (или программой AutoClickExtreme):
- К текущей картинке игра прибавляет фрагменты кнопок (на которые скрипт уже нажимал на предыдущих экранах) и куски экрана, в которых проводился поиск.
- Отдельные участки картинки, содержащие кнопки, изменяют масштаб!
Пример скриншота во вложении.

Пробовал MODI. Ставил отдельно, без Office. SharePointDesigner 2007 работает, SharePointDesigner 2010 не работает с AutoClickExtreme.

Вопросы:
1. Если при использовании ПК мы ищем в прямоугольнике, то AutoClickExtreme запрашивает только часть экрана или весь экран?
2. Что можно предпринять, чтобы программа считала бота за человека и не вставляла палки в колеса? Клики мышью делаю не в ПК, а в отдельных ветвях с отклонениями. Что тут ещё можно предпринять?
2. Столкнулся с тем, что не всегда проходит/срабатывает клик мышью. Временные интервалы задаю отличные от 0.001 sec. Пробовал добавлять второй клик через паузу. Тоже не дает 100% успеха. Что тут ещё можно предпринять?
3. В видео про MODI (2 часть) вы используете BlueStacks внутри VirtualBox. Возможно вы пробовали несколько эмуляторов Android-а и можете подсказать тот, который позволит управлять игрой требовательной к производительности 3D внутри вируалки? Чтобы сократить кол-во моих итераций) Пробовал вариант, когда AutoClickExtreme работает на хосте Windows, а игра в ВМ (VMware или VirtualBox) Windows. Но так не работает.

Пожелания:
1. В ПК не хватает кликов мыши с отклонения и временными интервалами. Сейчас, приходиться делать ПК + ветвление с добавлением действия мыши + GOTO.
2. Варианта в ПК "Остановить и выполнить" не достаточно. Очень нужно "Выполнить и продолжить", т.е. какой-то аналог подпраграмм.
Сейчас, получается скрипт в 200 строк и 40 ветвей. Получается путанно. И он ещё не закончен...
3. В таблице действий нужна колонка с UN. Сложно найти нужное действие после многократных правок скрипта.
Например, ПК при неуспешном действии ссылается на GOTO ACT=4 (UN=46), но в 4 действии (записи) находится UN=115.
4. Хорошо бы лог более "человеческий", т.е. более ориентированный на не программистов. Т.к. сложно в нем разобраться. Игра на весь экран, поэтому приходиться потом ползать по логу и разбираться, почему ОПЯТЬ не заработало)
5. Распознавание крутая фишка, но MODI очень не стабилен (пока пробовал на цифрах). Может какой-нибудь другой инструмент задействовать вместо MODI? Или картинку как-то подготавливать перед распознаванием. Например, делать контрастней или фон удалять.

Re: Автоматизация 3D игры в виртуальной машине

СообщениеДобавлено: 16 окт 2018, 21:26
Safonov_Denis
у меня есть отличное решение на этот случай, как раз недавно автоматизировал несколько игр, удалось получить поразительную скорость в 1000 картинок в секунду. т.е. 2д решения можно автоматизировать почти в режиме реального времени.

Скоро поделюсь решением.