Beichtvater |
Отправлено: 20 Сентября, 2014 - 16:34:54
|
Прохожий
Покинул форум
Сообщений всего: 12
Дата рег-ции: Сент. 2014
Репутация: 0
|
Доброго.
Собрал скрипт на монотонку в одной браузерке. Все пашет, все мило.
Но.
Играется в несколько акков в разных браузерах, отображение там чуть плавает в зависимости от движка (хромы (новая опера, сам хром, драгон) кажут одно, старая опера или там огнепанд - другое. И один скрипт на все окна не ляжет.
Почитал про контролы - для привязки к полю надо идентифицировать окно, просто команды "кликни там-то относительно контрола, который перед тобой" нет. Или не нашел. Или надо хитрить.
Короче. Могу, конечно, тупо проциклить окна по локальным координатам самой флешки (и сделаю так, если тут другого ответа не будет) но:
можно ли сделать так, допустим, открыт только один браузер, в нем флешка. Она, в принципе, для всех одинаковая, координаты плавают из-за панелек в самих браузерах. Можно как-то прицепиться именно к самой флешке и работать в ее координатах (вкладку там, блин, еще что-нибудь), не идентифицируя окно и браузер?
Все остальное сам смогу%)(Отредактировано автором: 20 Сентября, 2014 - 16:37:02) |
|
|
Beichtvater |
Отправлено: 20 Сентября, 2014 - 17:55:13
|
Прохожий
Покинул форум
Сообщений всего: 12
Дата рег-ции: Сент. 2014
Репутация: 0
|
Все, я понял. Спасибо большое. Привязаться локально.
Стыдно самому не допереть=\
Последнее, пожалуйста, гляньте, если не слишком трудно (или смешно%)
if (
(getcolor(1150, 384)==getcolor(1240, 384))
&&
(getcolor(1128, 394)==getcolor(1213, 394))
)
{
mouse(LEFT, 933, 588)
}
else
{
mouse(RIGHT, 1280, 302)
}
;
с моей точки зрения тут написано: Если в паре_1 равенство верно И в паре_2 равенство верно, кликаем левой. Иначе - правой.
У меня всегда срабатывает иначе, хотя цвета 100% равны (на блокноте тестил пустом).
А надо именно это - "если хотя бы в одной паре равенство ложно, кликаем правой".
Не пойму, где грабли.(Отредактировано автором: 20 Сентября, 2014 - 17:56:15) |
|
|
Kibor |
Отправлено: 20 Сентября, 2014 - 18:12:01
|
Эксперт
Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
В баге кибор..
редко, но бывает. посмотрю исправлю.
Цитата: if ((1==1)&&(5==5))
{
mouse(LEFT, 933, 588)
}
else
{
mouse(RIGHT, 1280, 302)
}
демонстрирует неверную работу.
на данный момент просто удалите лишние скобки. они не нужны в этом слу чае
Цитата: if (1==1&&5==5)
{
mouse(LEFT, 933, 588)
}
else
{
mouse(RIGHT, 1280, 302)
}
то есть
Цитата: if (
getcolor(1150, 384)==getcolor(1240, 384)
&&
getcolor(1128, 394)==getcolor(1213, 394)
)
{
mouse(LEFT, 933, 588)
}
else
{
mouse(RIGHT, 1280, 302)
} |
|
|
Beichtvater |
Отправлено: 22 Сентября, 2014 - 17:26:21
|
Прохожий
Покинул форум
Сообщений всего: 12
Дата рег-ции: Сент. 2014
Репутация: 0
|
Да, я спалил вечером апдейт. Очень круто, спасибо.
Короче, вести с полей (скорее больше для смеха):
Бот для RailNation, паровозная стратежка, 5 аккаунтов в двух мирах, итого 10 тел, плюс у всех куча замов-реальных людей, итого около 15-20 тел в сумме.
Уже сейчас: (Отобразить)
1. Открывает браузер, вкладку с игрой в браузере.
2. Логинится.
3. Определяет, онлайн ли мир и выбирает его. Если нет - другой мир. Если все оффлайн - закрывает браузер и ждет рандом 1-2 часа.
4. Заходит, ждет все загрузки.
5. Умеет определять краш флеша, перезапускает флеш.
6. Умеет определять краш всего браузера, убивает его и запускает с нуля.
7. Читает велкамскрин, понимает, есть ли бонусы, нужен ли ремонт, есть ли билет, не является ли количество бабла критичным.
8. Закрывает велкамскрин, привязывает абсолютные координаты.
9. Выполняет ремонт только того, что изношено ниже определенного порога.
10. Заходит на станцию, центрирует ее, собирает бонусы.
11. Собирает билет.
12. Пробегает по станциям сокланов, собирает им бонусы.
13. Здесь тоже умеет втыкать падение флеша или самого браузера, все перезапускает сам.
14. Анлогится, заходит в другой мир. Там повторяет все то же самое.
15. Анлогится, закрывает браузер.
16. Ждет рандом 2-3 часа и повторяет по новой.
— Умеет палить всякие ошибки типа "кончилось бабло", "нельзя сделать - купи прем", тд, тп, etc, закрывать их и передавать управление дальше.
— Работает бесконечно пока не повиснут сами винды или пока ты не придешь с работы.
— Тайминг везде рандом с разлетом 200-300% между кликами, а не "500мс-700мс", что есть только 20%.
Блин. Ограничение на длину поста всего в 2кб это ниочем, честно.
Приходится извращаться в результате.
|
|
|
Kibor |
Отправлено: 22 Сентября, 2014 - 19:06:04
|
Эксперт
Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Рад что есть результаты)
Давно не замечено падения Кибор. Причину ошибку ищите.
case...
в Кибор самое необходимое из чего можно лепить логику. на самом деле без него прекрасно обойтись можно не хуже.
перебор 6 или 106 рис можно делать так:
Цитата: int Image_ris[5][100][100];
int d, xx, yy;
for (d=0; d<5; d++)loadimage (#Image_ris[d][0][0], "C:\Image_"+format(d)+".bmp");
for (d=0; d<5; d++)
{
if (findimage(1, #Image_ris[d][0][0], 0, #xx, #yy, 0, 0, 1366, 716, -1)==1)
{
messagebox("нашли рис номер "+format(d));
goto h;
}
}
h:; (для просмотра ссылки Вам необходимо авторизоваться)
контроль вылета бота иль программы так:
Цитата: win w;
f: w=window ("Калькулятор", "CalcFrame", -1);
if (w==0)
{
start ("%windir%\system32\calc.exe");
}
pause(1000);
goto f;
будет запуск калькулятора который не закрыть.
Скан рисованных чисел Кибор делается легко. Я не раз делал в разных играх и даже если одна и та же цифра имела несколько вариантов. |
|
|
Beichtvater |
Отправлено: 24 Сентября, 2014 - 18:46:42
|
Прохожий
Покинул форум
Сообщений всего: 12
Дата рег-ции: Сент. 2014
Репутация: 0
|
Вы восхитительны!
Я последний раз кодил 10+ лет назад (выпуск 2004-го года), деградация налицо.
Решение с вылетами такое простое, а мне не пришло в голову.
У меня падали отдельные ехе, сволочи, вообще без возвратных данных, то есть тупо виндовые "закрыть программу". Как только появятся какие-то данные, я сообщу, но пока пусто.
Еще были падения самого кибора, если наделать вложенных ИФ-ов, используя фигурные скобки для else, и в эти скобки вложить еще один такой же ИФ с else. Видимо, его мозг закипает в попытке понять, где конкретно какая скобка и для чего.
Но это проблемы говнокода, надо просто включать мозг и писать изящнее, так что к проблемам программы я это не отношу.
К сожалению, я заразился ботостроением только сейчас (бот для RN был написан за день буквально) и очень в разрез с основной деятельностью, боюсь, дальше все будет сильно медленнее. Не буду писать ничего про скан, пока не сяду за него всерьез и не будут какие-то результаты.
Скажите пожалуйста, а есть ли список ВСЕХ используемых Кибором слов?
Это убило бы огромную кучу вопросов.
Например, не видел for в справке. Хотя, казалось бы, перерыл все. Неужели пропустил?
ЗЫ. смайлы подпортили код немножко %)(Отредактировано автором: 24 Сентября, 2014 - 18:48:00) |
|
|
|