Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » поиск и сравнение картинок

Страниц (1): [1]
 

1. marco_s - 08 Июня, 2016 - 10:22:15 - перейти к сообщению
Помогите с написанием скрипта,собственно захотелось сделать бота для игрушки в которую давно играл.Там есть сбор ресурсов,вот его и хочу автоматизировать,фишка в чем:на экране разбросаны ресурсы,если они не заняты то их можно добыть,если они заняты(слева от изображения ресурса появляется цифра сколько людей их добывает) то их тоже можно добыть но шанс мал т.к начали добывать не первыми и нам по сути это не нужно и как раз нужно реализовать в боте.Подскажите как можно реализовать проверку ресурса на занятость?Поиск самого ресурса реализовал через findheapcolor но он так видит и занятые и свободные...Ниже приведу рисунки ресурсов в игре чтоб было понятней.
- ресурс не занят
- ресурс занят(цифра занятости не постоянна тоесть сколько добывает,такая и цифра)

Я так понимаю нужно реализовать сравнение картинок самого ресурса и некого шаблона на занятость но как...если цифра занятости может быть любой(обычно от 1 до 7) вообще ничего в голову не лезет как это реализовать(

код поиска самого ресурса (Отобразить)
2. Kibor - 08 Июня, 2016 - 13:40:57 - перейти к сообщению
так не цифру искать, а часть круга на котором она..
3. marco_s - 08 Июня, 2016 - 13:48:00 - перейти к сообщению
круга там нет вообще,ресурсы валяются в таком виде как показано где рес. не занят,а круг появляется если нажать на ресурс,в общем занятый ресурс выглядит так
4. Kibor - 08 Июня, 2016 - 13:59:27 - перейти к сообщению
и?
какая проблема найти часть кружка без цифр разных
5. marco_s - 08 Июня, 2016 - 14:20:40 - перейти к сообщению
найти часть круга без цифр вообще не проблема,проблема в том как научить бота делать следующее(выделено жирным):
-поиск всех нужных ресурсов(сделано через findheapcolor) здесь же в хипколоре ресурсам присваиваются координаты
-распознать среди найденых занятые,а теперь я совсем в тупик зашел т.к искать ресурс смог только через хипколор т.к он частично меняет внешний вид,а хипколор в итоге записывает только координаты и что потом сравнивать картинку занятости с координатами-бред....но это так размышления вслух.
Помогите лучше примером кода как реализовать распознание среди всех ресурсов занятые?
6. Kibor - 08 Июня, 2016 - 16:36:47 - перейти к сообщению
я могу помочь только в отлове ошибок в написанном коде
7. marco_s - 08 Июня, 2016 - 17:55:28 - перейти к сообщению
код (Отобразить)


вот как то так должно быть...смысл в том чтобы сначала наловить искомых картинок с их координатами,затем искать фильтрующую картинку в заданной области отталкиваясь от координат полученных вначале.
Но в итоге выскакивает ошибка out of memory, подскажите что не так?
8. Kibor - 08 Июня, 2016 - 21:33:50 - перейти к сообщению
int k=findimage(5, #zanyt[0][0], -1, #x1[0], #y1[0], x[0]-10, y[0]+10, x[0]+10, y[0]-10, -1);
так над...
int k=findimage(5, #zanyt[0][0], -1, #x1[0], #y1[0], x[0]-10, y[0]-10, x[0]+10, y[0]+10, -1);

Powered by ExBB FM 1.0 Final