Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Разное > Флейм
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.10.2014, 17:00
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию Кибор - Среда Создания Ботов

Кибор - интегрированная среда разработки ботов.

Кибор - среда, специально заточенная для удобного написания скриптов для автоматизации действий на компьютере. В частности написания ботов к различным онлайн играм.
Си образный синтаксис довольно прост для понимания и гибок.

Кибор имеет два антиантикликера для обхода защит GameGuard, Frost и других.
Имеет сервисы для защита авторских прав разработчиков скриптов и удобного управления лицензированием пользователей.


Форум Кибор
Скачать Кибор
vt


Ответить с цитированием
  #2  
Старый 10.10.2014, 17:01
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Список функций Кибор
Указатель на окно или контролл, привязка потока, определение курсора
window - Получает указатель на окно или контрол
getwindow - Позволяет получить указатель на окно или контролл по указанным координатам
attach - Привязывает поток для определения типа курсора
getcursor - Определение типа курсора

Управление окнами
movewindow - Переименование, сдвиг и изменение размеров окон
moveclient - Переименование окна, сдвиг и изменение размеров окон (клиентские координаты, без оконтовки окна)
activate - Активировать окно
start- Открытие файлов и запуск программ
sendlanguage- Меняет раскладку языка в окне

Отправка любых сообщений в систему
sendmessage - Отправляет заданное сообщение окну или окнам с ожиданием
postmessage - Отправляет заданное сообщение окну или окнам без ожидания

Управление клавиатурой
key - Нажать и отпустить клавиатурную клавишу
keydown - Нажать клавиатурную клавишу
keyup - Отпустить клавиатурную клавишу
В не активное окно
sendkey - Отправить нажатие клавиатуры в не активное окно напрямую
sendtext - Отправить текст окну или контролу

Управление мышью
mouse - Клик кнопкой мыши
mousedown - Нажать кнопку мыши
mouseup - Отпустить кнопку мыши
mousedbl - Двойной клик мышью
mousemove - Переместить мышь на новые координаты
mousetransfer - Плавное перетаскивание мыши с зажатыми или нет кнопками
В не активное окно
sendmouse - Делает клик мышки в не активном или свернутом окне или контроле
sendmousedown - Делает нажатие мышки в не активном или свернутом окне или контроле
sendmousetransfer - Перетаскивание мышки в не активном или свернутом окне или контроле
sendmouseup - Отпускает зажатую кнопку мыши в не активном или свернутом окне или контроле
sendmousedbl - Двойной клик мышки в не активном или свернутом окне или контроле
sendmousemove - Переместить мышь на новые координаты в не активном или свернутом окне или контроле

Управление контроллами в приложениях
button- Отправить нажатие на кнопку в другой программе

Загрузка изображений в память Кибор, определение размера
loadimage- Загрузить изображение в память программы с файла
imagewidth- Получить ширину загруженного в память Кибор изображения
imageheight- Получить высоту загруженного в память Кибор изображения

Сканирование изображения экрана
finddynamic- Искать динамично меняющиеся области экрана
findimage- Искать изображение на экране по маске изображения загруженного в память Кибор
findheapcolor- Ищет области на которых есть скученности пикселей определенных цветов
getcolor- Получить цвет пикселя
scanpixel- Сравнивает введенный цвет с цветом пикселя в веденных координатах ориентируясь на разбежности в цветах RGB
findcolor- Найти все координаты всех пикселей указанного цвета

Получение скриншотов, сохранение их в файл и в памяти Кибор
screen- Делает скрин окна и записывает его в память Кибор в двухмерный массив int
savescreen- Делает скрин окна и сохраняет его на диск файлом .bmp .png .jpg
saveimage- Сохраняет на диск файлом .bmp .png .jpg загруженный ранее или созданный программно двухмерный массив int в котором хранится изображение

Получение информации о нажатых кнопках и координатах мыши
getkeystate- Определение статуса (нажата-не нажата) клавиша клавиатуры или кнопки мышки (коды клавиш)
getmouse- Получить текущие координаты мышки

Открытие процессов. Чтение и запись в память других программ
openprocess- Открыть процесс для чтения или записи в его память
findmemory- Поиск любых данных в памяти процесса
findmemorymask- Поиск данных в памяти процесса по маске (не учитывая некоторые байты в поиске)
readmemory- Читает байты с памяти процесса
writememory- Записывает байты в память процесса
freezememory- Записывает в память процесса по указанному адресу набор байт и замораживает их (то есть не дает программе изменить их)
freememory- Размораживат замороженные данные

Работа с интернетом
opensocket- Откывает сокет
sendhtml- Отправляет байты на сервер
recvhtml- Принимает ответ от сервера
closesocket- Закрыть сокет
Ответить с цитированием
  #3  
Старый 10.10.2014, 17:02
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Чтение и запись в файлы
fopen- Открыть файл для чтения или записи (текстовый и бинарный режим)
fclose- Закрыть открытый ранее файл
fwrit- Запись в открытый файл (текстовый и бинарный режим)
fread- Читает с открытого файла (текстовый и бинарный режим)
freadline- Чтение строки с файла

Работа с временем, паузы
sleep- Приостановить выполнение скрипта на время с заморозкой Кибор
pause- Приостановить выполнение скрипта на время без заморозки Кибор
gettime- Получить время в милисекундах прошедшее с запуска компьютера
getlocaltime- Получить локальное время в формате Год - ... - милисекунды

Работа с буфером обмена
writeclipboard- Запись в буфер обмена
readclipboard- Чтение с буфера обмена

Вывод текста на экран
textbkcolor- Установка цвета текста и фона для вывода его непосредственно на экран
textout- Вывод текста на экран
enabletextout- Отключить показ текста на экране
disabletextout- Включить показ текста на экране
resettextout- Сбросить текст

Преобразование одного типа данных к другому
format- Привод целго число int или дробного double к string
formatsn- Преобразование строк в которых записаны числа в натуральное число int или double
formatci- Возвращает int char'а значения в параметре
formatic- Возвращает char чисового значения в параметре
strcpy- Копирование string в массив char
codhex- Переводит целые или дробные числа (до 4 байт) в HEX (справа на лево)

Математические и геометрические функции
pow- Вычисление возведения в степень
sqrt- Вычисление корня
cos- Возвращает косинус угла в градусах
sin- Возвращает синус угла в градусах
tan- Возвращает тангенс угла в градусах
acos- Возвращает акосинус
asin- Возвращает асинус
atan- Возвращает атангенс

Сортировка
sort- Сортирует данные в массиве. Так же сортирует координаты в двухмерном массиве по расстоянию от указанной точки

Определение размера данных
size- Возвращает количество элементов массива char до первого нуля

Звук
beep- Звучит звуковой сигнал

Рандом
rand- Получение рандомного числа
keymouserand- Рандомизирует паузу между нажатиями клавиш
mousedblrand- Рандомизирует паузу мыши между двойным кликом

Работа с экраном
getdisplay- Получить данные о цветности и разрешение экрана
senddisplay- Изменить цветность или разрешение экрана
update- Обновить окно

Ввод данных в процессе работы скрипта
input- Вывод диалогового окна для ввода данных

Вывод сообщений
messagebox- Вывод текстового сообщения
messageboxyn- Вывод текстового сообщения с кнопками (Да Нет)
messageboxync- Вывод текстового сообщения с кнопками (Да Нет Отмена)

Интерфейс Кибор и графическая оболочка и управление контроллами создаваемого EXE.
sendcontrol- Отправляет данные контролу созданному в Кибор
getcontrol- Считывает данные с контрола созданного в Кибор
close- Программное закрытие Кибор или собранного EXE
rename - Переименовать окно Кибор - rename("Новое имя")

Антиантикликер
antianticlicker- Программное выключение и включение антиантикликера

Получение индивидуального ключа компьютера
individualcode - возвращает string в котором находится индивидуальный ключ машины на котором запущен. Тот который можно узнать в окне О программе.

Программная установка настроек
options - позволяет программно настроить программу как в меню - настройки. Использовать для изменения настроек в собранном EXE
Ответить с цитированием
  #4  
Старый 12.10.2014, 11:17
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

1. Если это серьезный игровой проект, то так просто доступ к процессам, окнам вы не получите.
2. Действия такого бота достаточно несложно вычисляются, т.к. как правило имеют одинаковые интервалы между действиями и ненормально высокую реакцию на них. Если же умышленно вносить в код разные замедлители, то такой бот становится хуже игрока и смысл в нем напрочь теряется.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 13.10.2014, 08:02
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Цитата:
Сообщение от Страдалецъ
1. Если это серьезный игровой проект, то так просто доступ к процессам, окнам вы не получите.
Кибор имеет функции оперирования с памятью процесса, но в основном он используется как кликер. Для этого есть у него антиантикликер, который не блокируется и не палится GameGuard...
Вот видео бота написанного в Кибор для линейки где стоит защита http://youtu.be/yaKTWaArQgk

Цитата:
Сообщение от Страдалецъ
2. Действия такого бота достаточно несложно вычисляются, т.к. как правило имеют одинаковые интервалы между действиями и ненормально высокую реакцию на них. Если же умышленно вносить в код разные замедлители, то такой бот становится хуже игрока и смысл в нем напрочь теряется.
Нет нет... Это не тупой кликер. Все зависит от того как разработчик описал логику поведения бота..
Вот видео бота сделанного в Кибор для DarkOrbit
http://youtu.be/9PpTVUeGuKs
Посмотрите где там одинаковые действия?
Этот бот работает уже более 8 месяцев и ни разу никого не спалили и он не потерял работоспособность при обновлениях.. Кроме одного раза когда перестал видеть коробки из за того что изменили их вид. Поправил и все.
Ответить с цитированием
  #6  
Старый 26.07.2015, 13:21
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Несколько примеров скриптов и видео работы ботов..

Реализация бота игры Три В Ряд (Анализ экрана. Кликер)
Скачать там рисунки надо..

Видео работы https://youtu.be/9PkE5rO6ZUM

Скрипт
Код:
int r=55, p=70, r1=10, p1=90;
int start_game[14][8], fishki[8][25][25], screen_game[182][182];
int X, Y, col, xe, ye, stx, sty, fx, fy, rx, ry;;
int Xk[7][7], Yk[7][7], Nk[7][7], KL[7][7], Xf[49], Yf[49];
if (load_image()==-1){messagebox ("Ошибка загрузки рисунка."); goto er;}

getdisplay(col, xe, ye);
sleep(500);
if (findimage(1, #start_game[0][0], 0, #X, #Y, 0, 0, xe, ye, r1, r1, r1, r1, r1, r1, p1, 1, -1)!=1){messagebox ("Не нашли игру."); goto er;}
stx=X+68; sty=Y+3; fx=X+237; fy=Y+173;
rx=fx-stx; ry=fy-sty;

Xk[0][0]=14; Yk[0][0]=14;//24
mouse (LEFT, X-50, Y+50);

for (int nx=0; nx<7; nx++)
{
for (int ny=0; ny<7; ny++)
{
Xk[nx][ny]=Xk[0][0]+nx*24;
Yk[nx][ny]=Yk[0][0]+ny*24;
}
}

loop:
if (find()==-1) goto er;
hod();
sleep (100);
mouse (LEFT, X-50, Y+50);
jh: finddynamic(0, #Xf[0], #Yf[0], 0, 0, 0, 0, stx, sty, fx, fy, -1);
sleep(150);
if (finddynamic(1, #Xf[0], #Yf[0], 1, 1, 5, 5, stx, sty, fx, fy, -1)==1){sleep(50); goto jh;}
goto loop;


er:;

function find()
{
int kol=0, k, k1;
ss: screen (#screen_game[0][0], stx, sty, fx, fy, -1);
k=0; k1=0;
for (int n=0; n<8; n++)
{
k=findimage(-1, #fishki[n][0][0], -1, #Xf[0], #Yf[0], 0, 0, rx, ry, r, r, r, r, r, r, p, 1, #screen_game[0][0]);
k1=k1+k;
for (int a=0; a<k; a++)
{
for (int nx=0; nx<7; nx++)
{
for (int ny=0; ny<7; ny++)
{
if (Xk[nx][ny]-(Xf[a]+10)<10 && (Xf[a]+10)-Xk[nx][ny]<10 && Yk[nx][ny]-(Yf[a]+10)<10 && (Yf[a]+10)-Yk[nx][ny]<10)
{
Nk[nx][ny]=n;
goto df;
}
}
}
df:;
}
}
if (k1!=49)
{
sleep(100);
kol++;
if (kol<5)goto ss;
else return -1;
}
/*
finddynamic(0, #Xf[0], #Yf[0], 0, 0, 0, 0, stx, sty, fx, fy, -1);
sleep(300);
if (finddynamic(1, #Xf[0], #Yf[0], 1, 1, 5, 5, stx, sty, fx, fy, -1)==0)return 1;
else goto ss;
*/
return 1;
}


function hod()
{
for (nx=0; nx<5; nx++)
{
//for (ny=0; ny<6; ny++)
for (ny=5; ny>-1; ny--)
{
if (Nk[nx][ny+1]==Nk[nx+1][ny] && Nk[nx][ny+1]==Nk[nx+2][ny])
{
mouse_hod (stx+Xk[nx][ny], sty+Yk[nx][ny], stx+Xk[nx][ny+1], sty+Yk[nx][ny+1]);
return;
}
/////
if (Nk[nx][ny]==Nk[nx+1][ny+1] && Nk[nx][ny]==Nk[nx+2][ny])
{
mouse_hod (stx+Xk[nx+1][ny], sty+Yk[nx+1][ny], stx+Xk[nx+1][ny+1], sty+Yk[nx+1][ny+1]);
return;
}
/////
if (Nk[nx][ny]==Nk[nx+1][ny] && Nk[nx][ny]==Nk[nx+2][ny+1])
{
mouse_hod (stx+Xk[nx+2][ny+1], sty+Yk[nx+2][ny+1], stx+Xk[nx+2][ny], sty+Yk[nx+2][ny]);
return;
}
}
}
/////////////////////

for (nx=0; nx<5; nx++)
{
//for (ny=1; ny<7; ny++)
for (ny=6; ny>0; ny--)
{
if (Nk[nx][ny-1]==Nk[nx+1][ny] && Nk[nx][ny-1]==Nk[nx+2][ny])
{
mouse_hod (stx+Xk[nx][ny], sty+Yk[nx][ny], stx+Xk[nx][ny-1], sty+Yk[nx][ny-1]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx+1][ny-1] && Nk[nx][ny]==Nk[nx+2][ny])
{
mouse_hod (stx+Xk[nx+1][ny], sty+Yk[nx+1][ny], stx+Xk[nx+1][ny-1], sty+Yk[nx+1][ny-1]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx+1][ny] && Nk[nx][ny]==Nk[nx+2][ny-1])
{
mouse_hod (stx+Xk[nx+2][ny-1], sty+Yk[nx+2][ny-1], stx+Xk[nx+2][ny], sty+Yk[nx+2][ny]);
return;
}
///////
}
}
/////////////////////

for (nx=0; nx<4; nx++)
{
//for (ny=0; ny<7; ny++)
for (ny=6; ny>-1; ny--)
{
if (Nk[nx][ny]==Nk[nx+2][ny] && Nk[nx][ny]==Nk[nx+3][ny])
{
mouse_hod (stx+Xk[nx+1][ny], sty+Yk[nx+1][ny], stx+Xk[nx][ny], sty+Yk[nx][ny]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx+1][ny] && Nk[nx][ny]==Nk[nx+3][ny])
{
mouse_hod (stx+Xk[nx+2][ny], sty+Yk[nx+2][ny], stx+Xk[nx+3][ny], sty+Yk[nx+3][ny]);
return;
}
}
}
/////////////////////

////////////////??????????????????????????????
for (nx=0; nx<6; nx++)
{
//for (ny=0; ny<5; ny++)
for (ny=4; ny>-1; ny--)
{
if (Nk[nx+1][ny]==Nk[nx][ny+1] && Nk[nx+1][ny]==Nk[nx][ny+2])
{
mouse_hod (stx+Xk[nx][ny], sty+Yk[nx][ny], stx+Xk[nx+1][ny], sty+Yk[nx+1][ny]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx+1][ny+1] && Nk[nx][ny]==Nk[nx][ny+2])
{
mouse_hod (stx+Xk[nx][ny+1], sty+Yk[nx][ny+1], stx+Xk[nx+1][ny+1], sty+Yk[nx+1][ny+1]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx][ny+1] && Nk[nx][ny]==Nk[nx+1][ny+2])
{
mouse_hod (stx+Xk[nx][ny+2], sty+Yk[nx][ny+2], stx+Xk[nx+1][ny+2], sty+Yk[nx+1][ny+2]);
return;
}
///////
}
}
/////////////////////

////////////////??????????????????????????????

for (nx=1; nx<7; nx++)
{
//for (ny=0; ny<5; ny++)
for (ny=4; ny>-1; ny--)
{
if (Nk[nx-1][ny]==Nk[nx][ny+1] && Nk[nx-1][ny]==Nk[nx][ny+2])
{
mouse_hod (stx+Xk[nx][ny], sty+Yk[nx][ny], stx+Xk[nx-1][ny], sty+Yk[nx-1][ny]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx-1][ny+1] && Nk[nx][ny]==Nk[nx][ny+2])
{
mouse_hod (stx+Xk[nx][ny+1], sty+Yk[nx][ny+1], stx+Xk[nx-1][ny+1], sty+Yk[nx-1][ny+1]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx][ny+1] && Nk[nx][ny]==Nk[nx-1][ny+2])
{
mouse_hod (stx+Xk[nx][ny+2], sty+Yk[nx][ny+2], stx+Xk[nx-1][ny+2], sty+Yk[nx-1][ny+2]);
return;
}
///////
}
}
/////////////////////

//////////////>
for (nx=0; nx<7; nx++)
{
//for (ny=0; ny<4; ny++)
for (ny=3; ny>-1; ny--)
{
if (Nk[nx][ny]==Nk[nx][ny+2] && Nk[nx][ny]==Nk[nx][ny+3])
{
mouse_hod (stx+Xk[nx][ny+1], sty+Yk[nx][ny+1], stx+Xk[nx][ny], sty+Yk[nx][ny]);
return;
}
///////
if (Nk[nx][ny]==Nk[nx][ny+1] && Nk[nx][ny]==Nk[nx][ny+3])
{
mouse_hod(stx+Xk[nx][ny+2], sty+Yk[nx][ny+2], stx+Xk[nx][ny+3], sty+Yk[nx][ny+3]);
return;
}
}
}
//////////////

}

function mouse_hod(int x1, int y1, int x2, int y2)
{
mouse (LEFT, x1, y1);
sleep(500);
mouse (LEFT, x2, y2);
}



function load_image()
{
if (loadimage (#start_game[0][0], "C:\3_v_ryad\start_game.bmp")<1) return -1;
for (int n=0; n<8; n++)
{
if (loadimage (#fishki[n][0][0], "C:\3_v_ryad\"+format(n)+".bmp")<1) return -1;
}
return 1;
}

============================================

Бот для На рыбалку в вк (Анализ экрана. Кликер)
Скачать там рисунки надо..

Видео работы https://youtu.be/u4WYst6_rvA

Скрипт
Код:
win w;

int zabros[95][19];
int tyanut[60][18];
int zakrit[17][17];
int zakrit2[15][17];
int zakrit3[13][14];
int polosa[50][5];
int ok[31][20];

int x, y;
int xt, yt;
int r=10, p=90;
int zona_x1, zona_y1, zona_x2, zona_y2;

w=window ("На рыбалку - Mozilla Firefox");//изменить на свой указатель
if (w==0){messagebox ("не найденуказатель на браузер"); goto error;}

zona_x1=0; zona_y1=0; zona_x2=w.widthclient; zona_y2=w.heightclient;//установка зоны поиска весь браузер

if (load()==-1){messagebox ("не найдены рис в C:\fishing"); goto error;}//загрузка рис
pause(2000);


enabletimer(0);//включить таймер

//тут строим петлю работыц бота. с готовых функций.
//чем меньше тут кода тем понятнее логика
loop: if (zabrosit()==1)//заброс если есть кнопка такая
{
lov();//тянуть рыб
}
sleep(25);
goto loop;// идем на начало петли работы бота


error:;


//тут реализация функций с которых состоит сам бот
function zabrosit()//заброс если есть кнопка такая
{
if (findimage(1, #zabros[0][0], 0, #x, #y, 0, 0, w.widthclient, w.heightclient, w)==1)// если есть Забростиь жмем на нее и идем в цикл ловли
{
zona_x1=x-315; zona_y1=y-420; zona_x2=x+380; zona_y2=y+50;//установка зоны поиска только игра
mouse (LEFT, x, y, 0, w);
sleep(500);
return 1;//вернем 1 заброс был
}
return 0;//вернем 0 заброса не было
}


function lov()//тянуть рыб
{
lp: if (findimage(1, #tyanut[0][0], 0, #xt, #yt, zona_x1, zona_y1, zona_x2, zona_y2, w)==1)// если есть кнопка Тянуть продолжаем цикл ловли
{
disabletimer(0);//отключить таймер
if (findimage(1, #polosa[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, w)==0)mousedown (LEFT, zona_x1+xt, zona_y1+yt, 0, w);//если середина полосы не окрашена жмем кнопку Тянуть
else mouseup (LEFT, zona_x1+xt, zona_y1+yt, 0, w);//если середина полосы окрашена отпускаем кнопку Тянуть
enabletimer(0);//включить таймер
}
goto lp;//идем на начало цикла ловли
}


function load()//загрузка рис
{
if (loadimage (#zabros[0][0], "C:\fishing\zabros.bmp")<1) return -1;//если не удача загрузки
if (loadimage (#tyanut[0][0], "C:\fishing\tyanut.bmp")<1) return -1;
if (loadimage (#zakrit[0][0], "C:\fishing\zakrit.bmp")<1) return -1;
if (loadimage (#zakrit2[0][0], "C:\fishing\zakrit2.bmp")<1) return -1;
if (loadimage (#zakrit3[0][0], "C:\fishing\zakrit3.bmp")<1) return -1;
if (loadimage (#polosa[0][0], "C:\fishing\polosa.bmp")<1) return -1;
if (loadimage (#ok[0][0], "C:\fishing\ok.bmp")<1) return -1;
return 1;//норм загрузка
}

CREATE_TIMER(0, 1000)//таймер каждую сек. проверка и закрытие табличек
{
//Добавление кода выполняемого по таймеру ......
if (findimage(1, #zakrit[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto loop;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #zakrit2[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto loop;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #zakrit3[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, r, r, r, r, r, r, p, 1, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto loop;//если закрыли какое то окно лов закончен. идем на начало
}
if (findimage(1, #ok[0][0], 0, #x, #y, zona_x1, zona_y1, zona_x2, zona_y2, w)==1)
{
mouse (LEFT, zona_x1+x+10, zona_y1+y+10, 0, w);
sleep(500);
goto loop;//если закрыли какое то окно лов закончен. идем на начало
}
}
Ответить с цитированием
  #7  
Старый 26.07.2015, 13:22
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Хак радара в RF (Работа с памятью процесса)

Скрипт
Код:
//Хак радара в RF Online
// Установить радар на самый обзор
//Запустить скрипт. Радар должен увеличить свой обзор
string name=getcontrol(EDIT_0);
win w=window (name);
if (w==0)
{
messagebox ("Невозможно найти окно "+name);
goto er;
}
int prc=openprocess(w);//Открываем процесс RF

char all_poisk[8];
char poisk[4];
codhex(1032983058, #poisk[0]);//Конвертируем искомое число 1032983058 в HEX, для поиска в памяти процесса при максимальном обзоре радара

zapis(#poisk[0], #all_poisk[0]);//Записываем 4 байтовое число 1032983058 два раза в 8 байт (идут один за другим X и Y) Его ищем

char all_zamen[8];
char zamen[4];
codhex(1022983058, #zamen[0]);//Конвертируем искомое число 1032983058 в HEX, для поиска в памяти процесса

zapis(#zamen[0], #all_zamen[0]);//Записываем 4 байтовое число 1022983058 два раза в 8 байт (идут один за другим X и Y) Им заменить надо

int adr=0;
findmemory (1, #all_poisk[0], 8, #adr, 0, prc);//Ищем 8 байт ( числа 1032983058 одно за другим)
writememory(#all_zamen[0], 8, adr, prc);//Заменяем 1032983058 числа на 1022983058.(сразу два числа. 8 байт)

if (adr!=0)messagebox ("Хак должен быть по адресу "+format(adr));
else messagebox ("Проверьте стоит ли радар на макс обзоре и повторите еще раз.");

er:;
///////////////////////////


function zapis(char #ch, char #all_ch)//Эта функция для заполнения 8 байт повторением по 4 байта (одинаковые числа)
{
int n=0, n1=0;
q: if (n<4)
{
all_ch[n1]=ch[n];
n++; n1++;
goto q;
}
n=0;
q1: if (n<4)
{
all_ch[n1]=ch[n];
n++; n1++;
goto q1;
}
}

///////////////////////////////////
CREATE_INTERFACE
{
DIALOG "Хак радара в RF Online" 237 140 //РазмерX РазмерY
BUTTONSCRIPT "Хакнуть радар" 6 80 220 25 //ПозицияX ПозицияY РазмерX РазмерY
//Добавление контролов управления ......
STATIC_0 "Название окна" 10 10 75 17 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_1 "Увеличьте обзор на радаре на максимум" 10 40 215 17 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_2 "и нажмите Хак" 75 60 90 17 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_0 "RF Online" 90 8 136 18 //ПозицияX ПозицияY РазмерX РазмерY
}

============================================

Простой генератор текста. Собирает и составляет текст с сайтов по введенной фразе. (Работа в интернете)

=============================================

Бот для Дарк Орбит (Анализ экрана. Кликер)

Видео работы бота https://youtu.be/E4MxGGE75oo

===============================================

И многие другие примеры на форуме..
Ответить с цитированием
  #8  
Старый 27.07.2015, 15:01
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Видео работы приватного АнтиАнтикликера Кибор под GameGuard в игре Karos
Ответить с цитированием
  #9  
Старый 16.09.2015, 12:25
dreindeimos dreindeimos вне форума
Заблокирован
 
Регистрация: 04.06.2015
Сообщения: 12
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Помню такой бот был для линейке в 2008, эх ностальжи
Ответить с цитированием
  #10  
Старый 20.06.2016, 07:05
Stratego Stratego вне форума
Прохожий
 
Регистрация: 10.10.2014
Сообщения: 17
Версия Delphi: C++ 5
Репутация: 10
По умолчанию

Создание ботов без программирования в Кибор с помощью Визуального редактора кода.
Этот инструмент позволяет абсолютно не обладая знаниями программирования строить ботов просто рисуя их схему на холсте как в паинте.
Редактор обработав эту схему обнаружит логическую связь и сгенерирует все нужные функции, переменные и Построит из них целостный скрипт готовый к запуску.
Подробнее о редакторе http://kibor-bot.com/forum/topic.php?forum=1&topic=75



Видео работы в Визуальном редакторе при создание бота
https://youtu.be/-jTzXvBTalE
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:41.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter