Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

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

> Описание: Бот на аукцион
31ost
Отправлено: 26 Апреля, 2018 - 15:09:35
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 2
Дата рег-ции: Апр. 2018  
Репутация: 0




Здравствуйте. Не силен в написании скриптов. Умею делать в другой программе простые скрипты на действия, поиск по цвету и картинке и вот потребовалось делать поиск по цифрам. Нашёл Вашу программу со встроенным распознанием но код вообще мне не знаком.
Подскажите пожалуйста как примерно выглядит код, чтобы быстро стартануть в обучении в распознании цифр.
Есть игра в которой есть аукцион в котором есть товары и цена товара. Не понимаю как выглядит код, который будет сканировать цену и + выполнять действия, если к примеру цена от 1 до 50.000 то купить.
Примерно выглядит так:
Два одновременно работающих скрипта:
Первый:
1. клик в x y (обновить цены)
2. если цена от 1 до 50.000 (цену показывает второй скрипт)
клик в x y (купить)
Второй:
1. в x y сканирует цену

Мне очень сложно понять как вообще сделать это сканирование от а до б и как в первом скрипте проверять то что сканирует во втором.
Возможно написал не очень внятно Улыбка надеюсь на помощь.
(Добавление)
Посидел подумал и пришел к выводу, что возможно вариант с двумя скриптами может привести к неприятной ситуации из-за мигающей страницы после обновления цен. Скорее всего лучше будет в один скрипт
1. клик в x y (обновить цены)
2. в x y сканирует цену
3. если цена от 1 до 50.000
клик в x y (купить)
 
 Top
Zireael
Отправлено: 27 Апреля, 2018 - 02:00:07
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4397
Дата рег-ции: Нояб. 2017  
Репутация: 580




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

Версия 5.27 Функция распознавания текста.. Посмотреть: Видео работы функции и процесс обучения.
Ну и само собой придётся синтаксис изучить.
 Цитата:
1. клик в x y (обновить цены)
2. в x y сканирует цену
3. если цена от 1 до 50.000
клик в x y (купить)

Примерно так, для readtext указать нужные координаты и параметры для распознавания:
CODE:
mouse(LEFT, 721, 646); // клик левой кнопкой в координаты
sleep(2000); // ждём 2 секунды

string Text; // в строку запишется результат распознания
loadsymbolbase ("C:\Program Files\Kibor\basetext.sib"); // путь к базе символов
if(readtext (NUM | MARK, #Text, 8, 1, -1, -1, -1, -1, -1, 0, -1, 733, 831, 780, 848, -1) > 0) // если распознан хотя бы один символ
{
messagebox (Text); // что распозналось

if(formatsn(Text)>0 && formatsn(Text)<=50.000) // если распознаный текст является числом больше 0 и меньше 50.000
{
messagebox("111"); // если условие истина
}
else
{
messagebox("000"); // если ложь
}
}
 
 Top
31ost
Отправлено: 27 Апреля, 2018 - 06:26:12
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 2
Дата рег-ции: Апр. 2018  
Репутация: 0




Спасибо больше, вот If не понимал как писать, но столкнулся с проблемой, что в этой мморпг игре не получается распознать нормально текст и цифры.. в другой программе вырезал эти циферки и всё равно не находит, а если их приблизить через Paint.net то там видно, что цвет пикселей постоянно меняется, не понимаю, что ещё можно сделать Улыбка
Пока писал текст, вспомнил, что в игре есть возможность увеличить интерфейс, пойду смотреть Улыбка
(Добавление)
Масштабирование интерфейса - помогло распознать получше, но теперь столкнулся с другой проблемой - всегда говорит что ложь и после цифры идут две буквы и символ, которые двигаются в зависимости от длины цифр



Оригинал:
3,900 ea.
Распознает так:
3.900 ea
так даже лучше, но как игнорировать буквы? Улыбка
Пытался писать так
if(formatsn(text)>0 && formatsn(text)<=50.000 ea)
if(formatsn(text)>0 ea && formatsn(text)<=50.000 ea)
и пишет что 000
(Добавление)
Если сделать так NUM | MARK, #text то там будут цифры распознаваться и даже если их дополняю то всегда выходит 000 может что-то неправильно понимаю?
 
 Top
Zireael
Отправлено: 27 Апреля, 2018 - 11:39:40
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4397
Дата рег-ции: Нояб. 2017  
Репутация: 580




 Цитата:
видно, что цвет пикселей постоянно меняется, не понимаю, что ещё можно сделать

Сделать свою базу символов и подобрать правильные параметры для readtext в 'Настройке распознавания текста'.
Лишние символы из строки можно удалить, пример:
CODE:
string TEXT="1 15.000 ea"; // допустим это распознаный текст
char CTEXT[1000];
strcpy(#CTEXT[0], TEXT);

messagebox(format(#CTEXT[0]));
deletetext(#CTEXT[0], " " | "." | "," | "a" | "e"); // удаляем из строки все пробелы, точки, запятые, буквы 'e' и 'a'
messagebox(format(#CTEXT[0]));
 
 Top
Kibor
Отправлено: 27 Апреля, 2018 - 16:47:48
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8095
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




Создать свою базу.
Обучить только цифрам и точкам.
Буквы тоже обозначить как точки.
Тогда будет всегда нечто

3.900...
115.000...
Потом это преобразовать в число игнорируя последние точки.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by