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

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

 Страниц (4): [1] 2 3 4 »   

> Описание: Функция перевода шестнадцатеричного hex кода в дробное число double
Kibor
Отправлено: 20 Июля, 2015 - 19:24:23
Post Id



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


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




codhexd позволяет перевести шестнадцатеричный hex код в дробное число double (float).

Применяется для чтения числовых значений с памяти процесса.

Универсальная функция для перевода любого Hex в Dec


синтаксис
codhexd(#char_hex[0]);
параметр - указатель на массив char в котором находится считанный код с памяти с помощью readmemory - Работа с памятью процесса. Поиск, чтение, запись в память процесса игры

В массиве char_hex должно быть обязательно указано 4 байта hex числа, так как эта функция переводит только 4 байта (float).

Внимание - в памяти процесса байты считываются справа налево. codhexd, также как и codhexi и codhex специально заточена для удобного использования именно для работы с процессами, поэтому в массиве char после чтения с процесса не надо переворачивать байты. Обработка идет уже сразу справа налево.
Однако если есть необходимость использовать codhexd для обычного перевода шестнадцатеричного кода в десятеричный, то необходимо перевернуть байты шестнадцатеричного кода наоборот. не так как пишем в калькуляторе.

Пример если посчитать такой шестнадцатеричный код 75 E9 B3 3F , то получим дробное число 1.405562.



 Цитата:
char p[4];

p[0]=formatic(117);
p[1]=formatic(233);
p[2]=formatic(179);
p[3]=formatic(63);

double a=codhexd(#p[0]);//Конвертируем HEX (75 E9 B3 3F) в десятичное дробное 1.405562

messagebox (a);
 
 Top
Adomb
Отправлено: 20 Июля, 2015 - 20:03:39
Post Id



Пользователь
Мастер


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




А что случилось? Программа обновилась и скрипты перестали запускаться - сворачивается и сразу обратно разворачивается, экзешники не делает.

(Отредактировано автором: 20 Июля, 2015 - 20:04:04)

 
 Top
936666639
Отправлено: 20 Июля, 2015 - 20:34:47
Post Id




Забанен


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




Радость
кому-то ооооооочень нужны деньги.
 
 Top
Kibor
Отправлено: 20 Июля, 2015 - 20:58:43
Post Id



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


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




 Adomb пишет:
А что случилось? Программа обновилась и скрипты перестали запускаться - сворачивается и сразу обратно разворачивается, экзешники не делает.
Странно.. проверю.

 936666639 пишет:
кому-то ооооооочень нужны деньги.

Знакомый запах халявщика. Радость
Второй нах пнх.
(Добавление)
 Adomb пишет:
А что случилось? Программа обновилась и скрипты перестали запускаться - сворачивается и сразу обратно разворачивается, экзешники не делает.
Adomb , Исправил. Обновил
 
 Top
Adomb
Отправлено: 20 Июля, 2015 - 21:33:31
Post Id



Пользователь
Мастер


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




Спасибо.

(Отредактировано автором: 20 Июля, 2015 - 21:33:57)

 
 Top
Skycrew
Отправлено: 22 Июля, 2015 - 17:13:33
Post Id



Пользователь
Мастер


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




Вот это супер! Спасибо!
Пошел пилить полноценного бота в Тере Онлайн..)

Было-бы еще очень круто добавить перевод их hex в значения String, закодированные в Юникоде.. чтобы можно было в играх стоковые данные получать типа ников и прочее...
 
 Top
Kibor
Отправлено: 25 Июля, 2015 - 05:05:19
Post Id



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


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




 Skycrew пишет:
добавить перевод их hex в значения String, закодированные в Юникоде



В массиве p находится что считали с процесса

CODE:
char p[12];
// юникод в памяти (абщ)
//а
p[0]=formatic(48);//0x30
p[1]=formatic(4);//0x4
p[2]=formatic(0);//0x0
p[3]=formatic(0);//0x0

//б
p[4]=formatic(49);//0x31
p[5]=formatic(4);//0x4
p[6]=formatic(0);//0x0
p[7]=formatic(0);//0x0

//щ
p[8]=formatic(73);//0x49
p[9]=formatic(4);//0x4
p[10]=formatic(0);//0x0
p[11]=formatic(0);//0x0

messagebox (unicod(#p[0], 12));



function unicod(char #c, int b)
{
string s="";
for (int n=0; n<b; n=n+4)s=s+formatic(codhexi(#c[n], 4)-848);
return s;
}
 
 Top
AdryV
Отправлено: 12 Декабря, 2017 - 18:56:59
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




чета double у меня криво работает


на скрине показано что выводит cheatengine
также в игре через textout выведены координаты ваще бред какой то....
вот огрызок кода
код (Отобразить)

при выводе через textout часто вылетает ошибка...
 
 Top
Kibor
Отправлено: 12 Декабря, 2017 - 19:16:14
Post Id



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


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




Я не понимаю в кракозябрах.
Данный скрин не является продуктом работы этого кода, так как я тут не вижу изменения координат Y textout
Так же "eii?aeiaou - "+format(kordX_my)+" "+format(adr+20) это вывод 3 слов (чисел) на скрине по другому.
Байты которые в чаре я тоже не вижу.
 
 Top
AdryV
Отправлено: 12 Декабря, 2017 - 19:29:24
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 449
Дата рег-ции: Май 2016  
Репутация: 11




скрин (Отобразить)

код (Отобразить)

надеюсь так все понятно?????
 
 Top
Страниц (4): [1] 2 3 4 »
Сейчас эту тему просматривают: 2 (гостей: 2, зарегистрированных: 0)
« О программе Кибор »


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




Powered by