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

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

 Страниц (24): « 1 2 [3] 4 5 6 7 8 9 » В конец    

> Описание: Работа с памятью процесса. Поиск, чтение, запись в память процесса игры
rentner
Отправлено: 02 Февраля, 2017 - 13:54:33
Post Id



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


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




Уважаемые знатоки помогите разобраться у меня возникло два проблемных вопроса
1. если число не целое а дробное
char poisk[4];
codhex(102.5, #poisk[0]);
// как получить из HEX в дробное

double t=codhexd(#poisk[0]);
messagebox(t);
//и
double t=codhexi(#poisk[0], 4);
messagebox(t);
//не дают нужного результата

2. при поиске в в памяти игры например здоровья нахожу 44 результата

int q=formatsn(input ("Введите значение здоровья"Подмигивание);
char poisk[4];
codhex(q, #poisk[0]);
int adr[1000000];
int y=findmemory (-1, #poisk[0], 4, #adr[0], 0, prc);

как отсеять из 44 результатов при изменении нового значения здоровья как в cheat engine (отсеивание может проходить в N-ое количество проходов)
 
 Top
Kibor
Отправлено: 02 Февраля, 2017 - 14:32:44
Post Id



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


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




 rentner пишет:
если число не целое а дробное

 Цитата:
char poisk[4];
codhex(102.5, #poisk[0]);
char poisk1[4];
for (int n=0; n<4; n++)poisk1[n]=poisk[3-n];
double t=codhexd(#poisk1[0]);
messagebox(t);

его надо развернуть (байты)

 rentner пишет:
как отсеять из 44 результатов при изменении нового значения здоровья как в cheat engine (отсеивание может проходить в N-ое количество проходов)

Это не CE. То есть если надо отсеять, то пишите алгоритм.
Если надо найти структуру, то используйте поиск по маске findmemorymask
 
 Top
Dantes3000
Отправлено: 22 Апреля, 2017 - 00:49:21
Post Id



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


Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016  
Репутация: 58




Сложновато как-то.
Нашел я адрес 02FE5D28 это 4 байта, значение ему 3296 = это мое хп. Что дальше?

Хочу сделать функцию, которая бы позвращала int моего хп.
Можете мне на словах обьяснить точный алгоритм и, если можно, с примером кода. Его потом можно будет вставить в шапку темы, чтобы всем понятнее было.
 
 Top
Kibor
Отправлено: 22 Апреля, 2017 - 02:01:54
Post Id



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


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




codhexi позволяет перевести шестнадцатеричный hex код с целое число int

char char_hex[4];//тут будут 4 байта. записать их в этот массив.
int xp=codhexi(#char_hex[0], 4);
 
 Top
Dantes3000
Отправлено: 22 Апреля, 2017 - 03:15:51
Post Id



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


Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016  
Репутация: 58




Хорошо, это для разового использования. Адрес меняется после перезахода.Я так понял нужно создавать маску...
(Добавление)
 Dantes3000 пишет:
Нашел я адрес 02FE5D28 это 4 байта, значение ему 3296 = это мое хп. Что дальше?

это я в СЕ нашел, надо же сначала прочитать через кибор...
 
 Top
Dantes3000
Отправлено: 27 Июня, 2017 - 16:59:14
Post Id



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


Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016  
Репутация: 58




А можно видеоурок по этому всему? Уже сколько пытаюсь - ничего не выходит. Хотелось бы на примере варспы
 
 Top
Kibor
Отправлено: 28 Июня, 2017 - 00:06:17
Post Id



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


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




Это надо найти. Вопросы то что может меняться.
7 12 ? 8 ? ? 11 ? 55

Заполняем массив char так
a[0]=7;
a[1]=12;
a[2]=0;//это не известно. можно поставить все что угодно
a[3]=8;
a[4]=0;//это не известно. можно поставить все что угодно
a[5]=0;//это не известно. можно поставить все что угодно
a[6]=11;

Так маску заполняем
m[0]=1;
m[1]=1;//если 1 то сравниваем на совпадение..
m[2]=0;//если 0 то пропускаем в поиске и не учитывает
m[3]=1;
m[4]=0;
m[5]=0;
m[6]=1;
 
 Top
Dantes3000
Отправлено: 13 Июля, 2017 - 14:41:19
Post Id



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


Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016  
Репутация: 58




А что нужно знать, чтобы составить эту маску? Допустим, известно хп - это 02FE5D28, уже можно маску создавать или надо знать еще что-то?
 
 Top
Kibor
Отправлено: 14 Июля, 2017 - 09:57:41
Post Id



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


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




ну одного значения мало. их много в памяти одинаковых. чем больше тем лучше. что бы уникальные были
 
 Top
Dantes3000
Отправлено: 14 Июля, 2017 - 14:43:36
Post Id



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


Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016  
Репутация: 58




Можете хоть на словах чуть-чуть обьяснить порядок действий, как вы делали проверку хп в варспире?
по СЕ очень мало правильных гайдов именно на эту тему.
 
 Top
Страниц (24): « 1 2 [3] 4 5 6 7 8 9 » В конец
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« О программе Кибор »


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




Powered by