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

CS:GO + CE [Проблема с поиском указателей и выхода на структуру игрока]


Рекомендуемые сообщения

Извиняюсь если пишу не в ту ветку форума, УВ. Модератор, если не в той ветке, перенеси пожалуйста куда нужно.

1. CS:GO
2. LAST[1.35.1.9]
3. Cracked.
 

1. Что делать если не получается выйти на указатель любой?

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

1C530020 - Адрес который отдал CE в листе читающих адрессов.(The value of the pointer needed to find this address is probably 1C530020)

0c - Смещение.

Я пытаюсь найти это значение в HEX [1C530020]

Когда то получается а когда то нет, вот произошел такой казус, что поиск не дал результатов,

То есть, этот адресс кто то читает(1C530020), но никто этот адресс в себе не держит, т.е нету на него указателя.

И как же выйти тогда на указатель ХП, если его по сути нету?

 

2. Что делать если в листе читающих [More Information]->[Extra info]

>>15735c85 - mov[esi+30],eax - это валидное смещение с которым я работал, с ним то понятно почти

Но что если указывается так? - Пример.

>>15735c85 - mov[esi],eax

>>15735c85 - mov[eax],esi

>>15735c85 - mov[eax],eax

 
То что мне указывать в смещениях?

 

3. Структура игрока.

Так же не получается выйти на структуру игрока(Сингл - С ботами)

Через Свое хп, пытаюсь выйти на структуру

Свое хп выглядит примерно так.

client.dll+A1E444 + 21941 + c + 214

В структуре описывается что первое значение идет мое хп.

Но я не вижу в струтуре своей, ботов, у КЕНГА было видео, esp csgo, я смотрел его несколько раз, но он выходит на структуру через Pointer Scan, мне этот вариант не подходит, 

1. Не нравится автоматический поиск.

2. Я не понимаю как он работает, от этого мне профита никакого(Я хочу научится руками находить указатель и структуры)

Даже если  я выхожу на client.dll+A1E444 + 21941 + c

Я не вижу там ботов, т.е всей структуры, там какая-то дребедень вместо того что было у Кенга.

 

За ошибки извиняюсь, за нечитабельность текста тоже простите, опять же если не в той ветке, прошу простить.

 

 

 

 

Ссылка на комментарий
Поделиться на другие сайты

№1: Искать указатель нет смысла всё равно он вылетит в трубу...но есть другой путь анализ данных\структур или реги используй.

 

№2: Так и записывай инструкции типа mov [esi],00000064 - это 100 жизней добавляет например или так что бы просто одно значение вечное было mov eax,[esi]

 

№3: Там у тебя должен быть модуль server.dll, а не client.dll - насколько я помню он отображает экранные значения жизней, брони патронов и т.д. а тебе нужно фактическое которое находится server.dll. В общем ты не тот адрес нашёл\используешь для дебага.

Изменено пользователем krocki
  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

1. У тебя не правильный адрес
2. Почитай ассемблер
3. В играх на движке от валв одноуровневый офсет структуры игроков, который можно найти по здоровью. В client.dll + 0xoffset.

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

1. 1C530020 - Адрес который отдал CE в листе читающих адрессов

Как ты проверял адрес? Замораживал? Менял значение? - скорее всего адрес не правильный нашёл.

 

2. То что мне указывать в смещениях?

0 - ноль.

 

3. Структура игрока.

На третий вопрос ответили ребята.

Ссылка на комментарий
Поделиться на другие сайты

1."Как ты проверял адрес? Замораживал? Менял значение? - скорее всего адрес не правильный нашёл."

Адресс то валидный я нашел, проверил я его, оставил 5 хп, прыгнул с высоты, умер, так же и в обратном порядке.

из 20 адрессов, меняются только 2-ое, остальные при изменении принимают обратное значение.

Было 100 хп.

Я пытаюсь поставить 5, но оно не ставится, будто адреса заморожены

А вот у 2-ух адрессов, если изменить хп, то у остальных 18 адресов меняются значения.

 

2. В играх на движке от валв одноуровневый офсет структуры игроков, который можно найти по здоровью. В client.dll + 0xoffset.

Как то не понял ответа, можно ли подробнее расписать?

 

И все же как выйти на структуру игрока, может ли кто то записать видео, без встроенного Pointer Scan, просто руками.

Ссылка на комментарий
Поделиться на другие сайты

1."Как ты проверял адрес? Замораживал? Менял значение? - скорее всего адрес не правильный нашёл."

Адресс то валидный я нашел, проверил я его, оставил 5 хп, прыгнул с высоты, умер, так же и в обратном порядке.

из 20 адрессов, меняются только 2-ое, остальные при изменении принимают обратное значение.

Было 100 хп.

Я пытаюсь поставить 5, но оно не ставится, будто адреса заморожены

А вот у 2-ух адрессов, если изменить хп, то у остальных 18 адресов меняются значения.

 

2. В играх на движке от валв одноуровневый офсет структуры игроков, который можно найти по здоровью. В client.dll + 0xoffset.

Как то не понял ответа, можно ли подробнее расписать?

 

И все же как выйти на структуру игрока, может ли кто то записать видео, без встроенного Pointer Scan, просто руками.

 

1.Вот по этому и не правильный адрес раз он меняется, он будет работать только на сервере.

Хочешь найти верный адрес используй Ctrl+B в CE, по близости должен быть номер команды т.е 2 или 3 в зависимости от Т или Кт стороны. Красным ХП, Зеленым номер команды.

pyC21SXf-qI.jpg

 

2.Т.е адрес начала структуры игрока будет выглядеть client.dll + 0xXXXXXX. Без поинт сканера  навряд ли найдешь т.к все равно придется искать статический адрес поинт сканером, либо делать сигнатуру.

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

Спасибо за столь развернутый ответ, можешь дать совет по PointerScan?

Настройки какие-то может, и прочее.

И все же теряюсь в информации один человек говорит что данные будут в server.dll а другой говорит что в client.dll

Ссылка на комментарий
Поделиться на другие сайты

Все просто. В server.dll будут истинные значения, так как ими рулит сервер игры, а он создается у того, кто хостит игру (ну или на серверах валв), а в client.dll - полученные от сервера данные. То есть, по сути, изменив их в клиенте ты бессмертным не станешь, если я правильно помню. Но я могу и ошибаться, так как ЦС-ГО не ковырял.

Ссылка на комментарий
Поделиться на другие сайты

Спасибо за столь развернутый ответ, можешь дать совет по PointerScan?

Настройки какие-то может, и прочее.

И все же теряюсь в информации один человек говорит что данные будут в server.dll а другой говорит что в client.dll

Xipho уже ответил,но повторюсь.

В server.dll ты найдешь значение здоровья и структуру игрока, но я как понимаю ты не намерен делать чит для игры с ботами. Вот по этому и пишу про client.dll

 

Задавай вопросы по поинт сканеру что не понятно, дам совет конечно).

Да тут нечего теряться. Представь, что сервер это человек стоящий перед зеркалом, а отражение клиент. Вроде тоже самое, но изменить ничего не можешь в зеркале. Значения клиента в читах обычно используют только для проверки(хп, номера команды и прочего).

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

Я попытаюсь сразу прояснить всю ситуацию.

(Я уже сканирую pointerScan'om) 

Я пытаюсь сделать триггер бот, клик происходит от винапи

 

Задержка тыры пыры, все дела.

Так вот суть в игре лежат адреса разные hp\team\crosshairId

в прицеле отображаются значения от 0 и там идут entityId, т.е моя команда+вражеская в зависимости от кол-ва игроков будут

bot1 = EntityId(1)

bot2 = EntityId(3)

bot3 = EntityId(2)

bot4 = EntityId(5)

bot5 = EntityId(4)

bot6 = EntityId(6)

 

Я бы решил проблему если бы было допустим игроков 10 и террористы бы были 1-5 а кт были бы 5-10 в значениях

Но они идут в разнобой, т.е bot3 из кт может иметь значение  7 а bot 5 из тер может иметь значение 9

И получается нужно по CrosshairId проверить команду EntityId, то что щас имею чисто

Работает, но пытается стрелять и по своим при навдении, так же и по ентити, ну эот решаемо, ограничить проверку до числа определенного, ентити там предметов от 500\600id идут, и вот не могу сделать проверку на вражескую команду, что бы бот не стрелял по своим

Есть оффсет хп, команды, и прочее, дампером снял.

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

 

Вот в принципе и все

На ботов внимания не обращайте, там будут игроки.

Уже 10 минут сканирую PointerScan, жду когда результат будет

void Press(){mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);Sleep(Delay);}
if(crosshairId != 0){Press()}
Изменено пользователем NullAlex
Ссылка на комментарий
Поделиться на другие сайты

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

RPM(Handle,(LPVOID)Client.dll + dwEntityOffset + i * 0x10) //получишь базовый адрес структуры каждого игрока в цикле
for(int i = 0; i < 64; ++i){if(entity.team[i] != localbase.team) //стрелять будет только по врагам{}}
Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

 

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

RPM(Handle,(LPVOID)Client.dll + dwEntityOffset + i * 0x10) //получишь базовый адрес структуры каждого игрока в цикле
for(int i = 0; i < 64; ++i){if(entity.team[i] != localbase.team) //стрелять будет только по врагам{}}

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

Если есть желание помочь, напиши свой скайп или добавь меня kingleonide1983.

Кстати прилагаю скриншот поинтерсканнера, спустя час я его терминатнул, ибо процесс закончился и происходило непонятно что.

QXi1pmJT5BAkv9fz3WMVlDQcnQHrtn.png

 

 

И еще, не так понял как по FOV то его делать, триггер бот.

Вот найденные мною адреса все они в модуле client.dll

cviKGblsxUAxAzivwStKreY9hurMuU.png

Изменено пользователем CHBS
Ссылка на комментарий
Поделиться на другие сайты

Искал для соурс т.к кс го нету, у тебя вместо 94 будет F4, и другой адрес, 1 адрес из выделенных это локальный базовый адрес т.е тебя, 2-й адрес структура остальных игроков. 

iH2MchGd6Mk.jpg

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

Насколько я понял ты хочешь сделать чит для онлайна, то не получится это сделать...тем более взламывая и играя у себя с ботами. Поскольку клиент всегда будет артачится к серверу где будут истинные значения жизней, и с виду не будет к примеру уменьшатся жизни это и будет как экранное значение, а на самом деле они уменьшаются и ты умираешь... Надо взламывать игру в режиме онлайн и ddos'ить сервак куда подрубился, :-D кто муже ещё не забывай что там у них есть защита для киков и банов наверняка. :-D Хотя может я где то что упустил...хз. :closeyes:

Изменено пользователем krocki
Ссылка на комментарий
Поделиться на другие сайты

Насколько я понял ты хочешь сделать чит для онлайна, то не получится это сделать...тем более взламывая и играя у себя с ботами. Поскольку клиент всегда будет артачится к серверу где будут истинные значения жизней, и с виду не будет к примеру уменьшатся жизни это и будет как экранное значение, а на самом деле они уменьшаются и ты умираешь... Надо взламывать игру в режиме онлайн и ddos'ить сервак куда подрубился, :-D кто муже ещё не забывай что там у них есть защита для киков и банов наверняка. :-D Хотя может я где то что упустил...хз. :closeyes:

Вот тут ты не прав. Большинство читов делают с ботами т.к. это проще, чем с игроками которые будут отвлекать. Разницы нет никакой, базовые адреса не меняются от того что ты играешь с ботами или в онлайне структура одна и та же. Почти все что находится в client.dll используется только для проверок и менять ничего не надо.Если подключишься к серверу и начнешь ддосить(ддос вроде как отказ сетевого оборудования из-за многочисленных запросов, если ничего не путаю) его, тебя выкинет и ничего не даст и это что-то новенькое :-D .

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

Я таки не получил ответа на свой главный вопрос)))

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

Моя цель заключается что бы выйти на структуру игрока как у @KENG, а там уже у него через кажыде 0x18 была структура с игроком, у меня же такого нету..

Не получается просто выйти на структуру Players - > Player[index] - > TeamOffset = Team

Ссылка на комментарий
Поделиться на другие сайты

Записал бы как искать, но нету программы для записи, так что вот.Нашел адрес хп правильность писал выше как проверить, включаешь поинтер сканер Max Lvl ставишь 1, получится у тебя 4 адреса с одинаковым офсетом  и один левый(он всегда первый). Первые 2 адреса это LocalBase и EntityBase. Структура других игроков находится по адресу EntityBase со смещением 0x10

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

Когда ищу в PointerScan щас вот 5-ое сканирование, полный подвес цп(100%) , мемори ( 94%) (1940мб) занял CE.exe...

Он ищет во всех модулях, engine.dll, server.dll, steamclient.dll и прочее.


Наконец-то, додумался пройтись по From-To (Client.dll to Client.dll+1000)

 

<?xml version="1.0" encoding="utf-8"?>

<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>15</ID>
      <Description>"pointerscan result"</Description>
      <LastState Value="539904558" RealAddress="15EF0524"/>
      <VariableType>4 Bytes</VariableType>
      <Address>"client.dll"+000020F4</Address>
      <Offsets>
        <Offset>524</Offset>
      </Offsets>
    </CheatEntry>
    <CheatEntry>
      <ID>16</ID>
      <Description>"pointerscan result"</Description>
      <LastState Value="539904558" RealAddress="15EF0524"/>
      <VariableType>4 Bytes</VariableType>
      <Address>"client.dll"+0000220C</Address>
      <Offsets>
        <Offset>524</Offset>
      </Offsets>
    </CheatEntry>
    <CheatEntry>
      <ID>17</ID>
      <Description>"pointerscan result"</Description>
      <LastState Value="539904558" RealAddress="15EF0524"/>
      <VariableType>4 Bytes</VariableType>
      <Address>"client.dll"+0000231C</Address>
      <Offsets>
        <Offset>524</Offset>
      </Offsets>
    </CheatEntry>
    <CheatEntry>
      <ID>18</ID>
      <Description>"pointerscan result"</Description>
      <LastState Value="539904558" RealAddress="15EF0524"/>
      <VariableType>4 Bytes</VariableType>
      <Address>"client.dll"+00002A6C</Address>
      <Offsets>
        <Offset>524</Offset>
      </Offsets>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
 


Может быть я попробую тебе в скайпе показать?
Потому что какая то жесть уже, нахожу все адрес просто нахожу все адреса с своими хп

От 100 снимаю себе до 5-10 хп, все найденные адреса устанавливаю значение 100

Пытаюсь отнять у себя хп в игре, и все равно умираю, будто все адреса визуальные.

Есстественно с ботами.


Взял оффсет дампер, он отдал мне адреса 

(EntityList - client.dll+4A5C9C4)

(LocalPlayer - client.dll+A6E444)

 

и я понимаю, что они ни капли не схожи с моими адресами, к тому же PointerScan эти адреса мне не отображает...


UP.

Увеличил диапазон поиска, и о алиллую, первый адресс левый

и остальные 2 указатели.

Теперь нужно разобраться как выйти на структуру ботов.

Изменено пользователем CHBS
Ссылка на комментарий
Поделиться на другие сайты

CHBS, как я понял partoftheworlD эти оба адреса и есть начало структуры: первый - твоего героя, второй - остальных.

Изменено пользователем Garik66
Ссылка на комментарий
Поделиться на другие сайты

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

В общем удачного вам взлома этой игрушки. :-D

Изменено пользователем krocki
Ссылка на комментарий
Поделиться на другие сайты

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

Что может дать это? krocki Ну например, триггербот, esp, бхоп и т.д перечислять можно долго, одним словом преимущество перед другими игроками и все это только экранные значения. :-D 

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

Ну так ребят, может ли кто то объяснить мне как в структуре остальных игроков разобраться?

 

BaseEntity = "client.dll"+04A5C9C4 - структура остальный игроков.

Bot = "client.dll"+04A5CA44 - Найденная структура бота 

Я попытался вычесть из структуры остальных остальных ботов - опрделенного мною бота

я получаю"04A5C9C4"-"04A5CA44" =  FFFFFFFFFFFFFF80"

И начинаю шариться в структуре BaseEntity, смотрю от начала, добавляю +80 и там ничего нету особого, всякая дичь.

Мне бы узнать размер разрыва между каждым ботом

 

Bot1 - 0x18 ->

Bot2 - 0x48 ->

Bot3 - 0x60 ->

Bot4 - 0x78 -> ...

Но судя по моему поиску, я не могу найти эту дистанцию, она нужна что бы получить бота BaseEntity + 0x18 = Bot1

Ссылка на комментарий
Поделиться на другие сайты

Ну так ребят, может ли кто то объяснить мне как в структуре остальных игроков разобраться?

 

CHBS, По-моему partoftheworlD тебе уже отвечал здесь.

Ссылка на комментарий
Поделиться на другие сайты

Зачем все так усложнять? Не знаю на чем ты пишешь, но если хочешь получить структуру каждого игрока используй цикл до 64(т.к максимальное кол-во игроков 64)

ReadProcessMemory c адресом (Сlient.dll + найденый офсет + переменная цикла * 0x10);

Искать смещение это слишком геморно, ты же не гуманитарий(не в обиду гуманитарию конечно).

Бери и автоматизируй!

Т.е. ты в цикле уже получишь все базовые адреса всех игроков на сервере.

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

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

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

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