Counter Strike Source [ Как найти структуру игроков ]
|
|
Дата: Четверг, 07.11.2013, 19:54 | Сообщение # 1
offline
Служу России!
- Сообщений: 759
-
Награды:
31
загрузка наград ...
СТРУКТУРА ИГРОКА :
Код 0x0 - Никнеймы 0x28 - X 0x2C - Y 0x30 - Z 0x140 - Оффсет до следующего игрока.
Код DWORD Players=(DWORD)GetModuleHandleA("server.dll") + 0x00529680; DWORD Players_1 = *(DWORD*)(Players); DWORD Players_2 = *(DWORD*)(Players_1 + 0x724); DWORD Players_3 = *(DWORD*)(Players_2 + 0x0); DWORD Players_Adress = Players_3 + 0x1e4;
for (int i =0; i<64; i++)// Тут мы делаем перебор на 64 игрока ( от 0 до 64 ) { float *posX = (float*)(Players_Adress+i*0x140+0x28);//Позиция игроков X float *posY = (float*)(Players_Adress+i*0x140+0x2C);//Позиция игроков Y float *posZ = (float*)(Players_Adress+i*0x140+0x30);//Позиция игроков Z char *name = (char*)(Players_Adress+i*0x140+0x0);//Имена игроков }
P.S : В следующем уроке, я покажу, как сделать проверку на Живой/Мёртвый, для этого я использую количество жизней, которое я беру из структуры. P.S : Я знаю, что материал, сырой, много открытых вопрос, поэтому я жду ваши вопросы, попробую ответить на них.
Теги: Как найти структуру игроков, что нужно для ЕСП, ESP, материалы для ESP, оффсеты, поинтеры, видеоурок, создать чит, как сделать чит.
|
Дата: Четверг, 07.11.2013, 22:04 | Сообщение # 2
offline
Любитель печенек
- Сообщений: 907
-
Награды:
23
загрузка наград ...
Ахахахах:"Секундочку...Буль буль буль". У меня чуть швы от смеха не разошлись.
|
Дата: Четверг, 21.11.2013, 21:22 | Сообщение # 3
offline
Служу России!
- Сообщений: 759
-
Награды:
31
загрузка наград ...
В данном уроке, мы продолжаем Реверсить структуру : - Будем искать показатель количества игроков на сервере - Будем искать здоровье - Будем искать идентификатор команды
Код 0x0 - Никнеймы 0x28 - X 0x2C - Y 0x30 - Z 0x20 - Команда 1 - Наблюдающие, 2 - Террористы, 3 - Контры. 0x24 - HP Игрока 0x140 - Оффсет до следующего игрока.
DWORD Players=(DWORD)GetModuleHandleA("server.dll") + 0x00529680; DWORD Players_1 = *(DWORD*)(Players); DWORD Players_2 = *(DWORD*)(Players_1 + 0x724); DWORD Players_3 = *(DWORD*)(Players_2 + 0x0); DWORD Players_Adress = Players_3 + 0x1e4;
int PlayerCount = *(int*)(0x5D3E108C);
for (int i =0; i<PlayerCount; i++)// Тут мы делаем перебор на 64 игрока ( от 0 до 64 ) { int Team = *(int*)(Players_Adress+i*0x140+0x20);
float *posX = (float*)(Players_Adress+i*0x140+0x28);//Позиция игроков X float *posY = (float*)(Players_Adress+i*0x140+0x2C);//Позиция игроков Y float *posZ = (float*)(Players_Adress+i*0x140+0x30);//Позиция игроков Z char *name = (char*)(Players_Adress+i*0x140+0x0);//Имена игроков int HP = *(int*)(Players_Adress+i*0x140+0x24); if(Team = 2){Draw.Text("Teррористы",posX,posY,1,1,1,RED(255),BLACK(255);} if(Team = 3){Draw.Text("Полиция",posX,posY,1,1,1,GREEN(255),BLACK(255);} }
P.S : В следующем уроке, Я, перенесу код из в блокнота в C++ и проверим как оно работает.
|
Дата: Пятница, 22.11.2013, 01:26 | Сообщение # 4
offline
Почетный пользователь
- Сообщений: 645
-
Награды:
6
-
127
загрузка наград ...
Спасибо Федь за уроки, очень полезные. Продолжай)) в том же духе)
з.ы. Изза того что тебе там кто то писал в скайпе, я через каждые 3 раза, ставил видео на паузу и смотрел ли мне кто то там не написал ))
Сообщение отредактировал Fle - Пятница, 22.11.2013, 01:40
|
Дата: Пятница, 22.11.2013, 09:46 | Сообщение # 5
offline
Служу России!
- Сообщений: 759
-
Награды:
31
загрузка наград ...
Cкачать исходник проекта : my_first_dll
|
Дата: Пятница, 22.11.2013, 17:10 | Сообщение # 6
offline
Почетный пользователь
- Сообщений: 645
-
Награды:
6
-
127
загрузка наград ...
Цитата New_FIDANzza (  ) Cкачать исходник проекта : my_first_dll Спасибо за исходник) Но можно было пусть сами все делают. Иначе не научаться.
|
Дата: Четверг, 28.11.2013, 17:19 | Сообщение # 7
offline
Почетный пользователь
- Сообщений: 645
-
Награды:
6
-
127
загрузка наград ...
Федь, когда продолжение урока будет)?
|
Дата: Среда, 20.08.2014, 20:13 | Сообщение # 8
offline
Прибывший
- Сообщений: 1
-
Награды:
0
-
0
загрузка наград ...
Сделай продолжение на примере как сделать NoRecol
|