Наверное, это самый надежный способ.Есть способы проверить, что происходит внутри процесса - смотреть непосредственно на его внутреннее состояние и память - но они зависят от платформы и очень склонны к неправильному поведению, потому что вы имеете дело с немного другой версией чего-либо, которая включает другую версию флэш-памяти, кака также другую версию приложения.Эти методы чаще используются для «тренеров» в exe-играх, где обычно есть только одна или две версии исполняемого файла, о которых нужно беспокоиться.
Множество снимков экрана, сравнение, вычисление надежных пикселей индикатора кажется способомидти - плюс отслеживать, что вы ожидаете, конечно.Когда приложение запущено, оно должно работать со скриншота за раз (надеюсь, обеспечивая согласованное изображение, без полуобновленных представлений), а затем протестировать минимальное количество пикселей, необходимое (возможно) с помощью дерева решений.
Существуют способы автоматизировать построение эффективных деревьев решений, но, вероятно, это проще сделать вручную на основе сравнения снимков экрана.В этом случае, поскольку Tetris обычно создает все новые фигуры в одной и той же позиции с соотношением 1: 1 между цветом и формой, вы, вероятно, можете определить форму и позицию новой фигуры из одного пиксельного цвета - так что «дерево решений»Возможно, в данном случае это неправильный термин, хотя в этом случае бот должен прочитать другие вещи с экрана.
Что более интересно, так это логика принятия решений в игровом процессе, поскольку этот бот явно не 't просто помещая каждую фигуру в наиболее очевидную позицию, но намеренно стремясь создать возможности для очистки 3 или 4 рядов одновременно.