Перейти к содержанию

Miidi

Стажёры
  • Постов

    14
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Miidi

  1. Доброго времени суток)

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

    Если есть возможность подскажите как найти данное значение. А лучше тыкните носом)spacer.png

    ==========

    Не много оффтопа есть ли возможность как то отследить координаты примение оружия? пока думаю мне нужно выйти на фукцию примение выстрела и там уже копаться как откуда и куда все верно?

    Кстати в игре вообще не ищутся значения предметов в инвенторе даже в строковом значении

    Игра на Unity

  2. В том проекте старый код, вот процедура на считывание 

     

    procedure TForm1.Button2Click(Sender: TObject);
    var
        nob: size_t;
      whp: single;
    
    begin
       WindowName := FindWindow(nil, WindowTitle);
     { ShowMessage(WindowName.ToString);  }
      ThreadId := GetWindowThreadProcessId(WindowName, @ProcessId);
     { ShowMessage(ThreadId.ToString);  }
      HandleWindow := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
      ReadProcessMemory(HandleWindow, ptr(Address), @whp,sizeof(whp),nob);
      Edit1.Text := FloatToStr(whp);

    https://1drv.ms/u/s!AkW4Lkqk9P4igehF759fsrI121rdBw а вот ссылка на новый исправленный проект)

    • Плюс 1
  3. 6 часов назад, Taiwan сказал:

    Да и вообще лучше скинь суда весь исходник. Конечно если есть такая возможность.

    13523349.jpg

    Не хочет коомпилировать))

    14 часа назад, Garik66 сказал:

    Тогда можно ещё так попробовать:

    Не а не хочет))

     

    6 часов назад, Vlad2 сказал:

    Вот как я считываю float. Первая строка - имя процесса, Вторая - адрес откуда будет считывать.
    Разберешь исходник и все поймешь, там ничего сложного.

    readFloat.rar

    Это работает я посмотрю как у тебя сделано)Может у себя косяк найду

  4. Господи все в пустую.... Я уверен это все из за этого типа Size_t . Пока попробую записать что то в этот адрес

    8 часов назад, Garik66 сказал:

     

    PS: Но проще будет сделать так (мне кажется):

     

    тут он на дает с коомпилировать файл то бишь функций  ReadProcessMemory не хватает пятого аргумента я его добавил он стал говорить , что хочу другой тип данных не Real .

    9 часов назад, Garik66 сказал:

    whp := IntTofloat(whp) Edit1.Text := whp.ToString; Label1.Caption := nob.ToString;

    Тут он ругается что whp не какой не integer.

     

    9 часов назад, partoftheworlD сказал:

    VarToHeh() и HehToVar()

    А эти функции я не нашел и делфи моих их не знает  VarToHeX() и HeXToVar()*:(

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

    Фиг с ним попробую просто по этому адресу записать нужное мне значение.

  5. 9 минут назад, Garik66 сказал:

    Кажется понял. У тебя в whp выводится строка, т.е. нужно не int. а str

    Приложение запускается но при считывание пишет " is not a valid floating point value"

     

    1 час назад, keng сказал:

    Не надо вставлять никуда тот код, который ты не понимаешь. Лучше выпиши незнакомые слова и найди, что они обозначают.

    Выдает вообще какие то левые числа .

    Я вот думаю когда я нажимаю на кнопку , он считывает из памяти данные преобразует их в строку и выдает значение в dec "1120403456".

    Получается надо взять это значение перевести в hex а его уже в число и потом это число преобразовать в строку и вывести на экран ,  попробую так

  6. 12 минуты назад, Garik66 сказал:

    Я ЯП не знаю не одного (к сожалению :wacko:). но думаю что должно быть что-то типа того:

    
    Edit1.Text := whp.FloatToStr;

     

    Тысячи видосов по взлому на Ютуб и не одного языка ,поражен)

    На FloatToStr он ругается ,я использовал тип Size_t у переменной  whp.Что это за тип сам понять не могу , но без него он не хотел функцию компилировать  ReadProcessMemory .

    8 минут назад, keng сказал:

    Привет! Можно загуглить "hex to float", hex - шестнадцатеричная система счисления, float - с точечкой. Там будет куча всяких онлайн-конвертеров, но в том числе и объяснение алгоритма их работы. Мне гугл предложил вот [такое] решение.

    Слишком много цифорок, не ужели в Delphi не придумали как сделать проще((Боюсь сейчас начну вставлять этот код и еще больше ошибок на делаю))

  7. Cо значением разобрался не много, просто хотел HEX перевести в вещественное число ,а теперь понял что это не так просто )))

    Так теперь что выводит у меня поле Edit "1120403456" если перевести это в hex "42C80000" то получиться значение моего здоровья.Вопрос как перевести его в нужное мне число с точкой)

    Скрытый текст
    
    procedure TForm1.Button2Click(Sender: TObject);
    var
      HP: integer;
      whp,nob: size_t;
    
    begin
      WindowName := FindWindow(nil, WindowTitle);
     { ShowMessage(WindowName.ToString);  }
      ThreadId := GetWindowThreadProcessId(WindowName, @ProcessId);
     { ShowMessage(ThreadId.ToString);  }
      HandleWindow := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);
      ReadProcessMemory(HandleWindow, ptr(Address), @whp{это куда пишеться значение},4{количество байт для копирования?}, nob{что это за число не могу понять});
      Edit1.Text := whp.ToString;
      Label1.Caption := nob.ToString;
    end;

     

     // Принято пользоваться тегами и кода и спойлера, если код больше 3-5 строк. Garik66/

  8. Разъясните пожалуйста при поиске в CE нашел адрес значение - здоровья, открыл его в memory viewer. получается байты "64 70 51 42 00 00 C8 42" - это и есть 52.35975647? Если так то как их перевести в это значение( Просто не понимаю этого ).

    И второй вопрос будет по поводу Delphi попросил вывести значение по адресу в поле Edit в он вывел мне полную не разбериху ,я добавлю информацию чуть позже вместе с кодом  13477583.jpg

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.