eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 8 мая!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: UnknownNone, BOB666BOB (+2 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Вопросы новичков —› По игре.
Посл.ответ Сообщение

Ранг: 0.8 (гость)
Статус: Участник

Создано: 11 мая 2019 04:16 New!
Цитата · Личное сообщение · #1

В приложении есть ID персонажа и у каждого чара на аккаунте он разный.
Как сделать патч, который будет менять ID на указанный мною при нажатии на себя?
При нажатии на себя выполняются такие инструкции:
1.
Code:
  1. 006C4533 - 8B F1  - mov esi,ecx
  2. 006C4535 - 74 58 - je 8thDay.NGELocalHero::BeginDynamicClickAction+6F
  3. 006C4537 - 8B 86 68010000  - mov eax,[esi+00000168] <<
  4. 006C453D - 8B 8F 68010000  - mov ecx,[edi+00000168]
  5. 006C4543 - 3B C1  - cmp eax,ecx

2.
Code:
  1. 006C4535 - 74 58 - je 8thDay.NGELocalHero::BeginDynamicClickAction+6F
  2. 006C4537 - 8B 86 68010000  - mov eax,[esi+00000168]
  3. 006C453D - 8B 8F 68010000  - mov ecx,[edi+00000168] <<
  4. 006C4543 - 3B C1  - cmp eax,ecx
  5. 006C4545 - 8B 96 6C010000  - mov edx,[esi+0000016C]

3.
Code:
  1. 006C46DD - 3B F3  - cmp esi,ebx
  2. 006C46DF - 8B 87 6C010000  - mov eax,[edi+0000016C]
  3. 006C46E5 - 8B 8F 68010000  - mov ecx,[edi+00000168] <<
  4. 006C46EB - 89 44 24 14  - mov [esp+14],eax
  5. 006C46EF - 74 0F - je 8thDay.NGELocalHero::BeginDynamicClickAction+1E0

4.
Code:
  1. 006C470B - 68 A5F87400 - push 8thDay.bin+34F8A5
  2. 006C4710 - FF 15 50E27400  - call dword ptr [8thDay._imp_??0?$basic_stringDU?$char_traitsDstdV?$allocatorD]
  3. 006C4716 - 8B 87 68010000  - mov eax,[edi+00000168] <<
  4. 006C471C - 8B 8F 6C010000  - mov ecx,[edi+0000016C]
  5. 006C4722 - 53 - push ebx

5.
Code:
  1. 006C479D - 3B F3  - cmp esi,ebx
  2. 006C479F - 8B 87 6C010000  - mov eax,[edi+0000016C]
  3. 006C47A5 - 8B 8F 68010000  - mov ecx,[edi+00000168] <<
  4. 006C47AB - 89 44 24 14  - mov [esp+14],eax
  5. 006C47AF - 74 0F - je 8thDay.NGELocalHero::BeginDynamicClickAction+2A0

6.
Code:
  1. 006C47CB - 68 A5F87400 - push 8thDay.bin+34F8A5
  2. 006C47D0 - FF 15 50E27400  - call dword ptr [8thDay._imp_??0?$basic_stringDU?$char_traitsDstdV?$allocatorD]
  3. 006C47D6 - 8B 87 68010000  - mov eax,[edi+00000168] <<
  4. 006C47DC - 8B 8F 6C010000  - mov ecx,[edi+0000016C]
  5. 006C47E2 - 53 - push ebx

BIN файл
https://dropmefiles.com/yyCV5

Ранг: 263.2 (наставник)
Статус: Участник

Создано: 11 мая 2019 18:52 New!
Цитата · Личное сообщение · #2

Simcher

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

У вас несколько ссылок на переменную, учитывая что смещение CONST, то это глобальная структура к которой множество выборок.

Очевидно что нужно взять любую выборку и пройти по её цепочке, что бы найти сам источник данных. Для этого есть разные способы, в вашем случае - отладчик. А отладчик это не артмани или как этот читерский сканер памяти называется, с отладчиком РАБОТАЮТ, а не используют лишь его интерфейс.

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

Ранг: 31.3 (посетитель)
Статус: Участник

Создано: 11 мая 2019 19:02 New!
Цитата · Личное сообщение · #3

Если есть аккаунт с чарами то скорее всего это онлайн игрушка - а если так то все ID хранятся на сервере и поэтому изменить ID чара просто не получится.

| Сообщение посчитали полезным: BlackCode, Boodmi



Ранг: 184.0 (ветеран)
Статус: Участник

Создано: 11 мая 2019 23:59 New!
Цитата · Личное сообщение · #4

bartolomeo пишет:
хранятся на сервере

Если тс не совсем идиот, скорей всего это понимает. Вероятно это нужно чтобы обойти проверку является ли таргет валидной целью для какой-нибудь абилки или способ брать в таргет что-то далекое.

Ранг: 31.3 (посетитель)
Статус: Участник

Создано: 12 мая 2019 00:11 · Поправил: bartolomeo New!
Цитата · Личное сообщение · #5

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

Ранг: 0.8 (гость)
Статус: Участник

Создано: 12 мая 2019 01:13 New!
Цитата · Личное сообщение · #6

Я понимаю, что данные хранятся на сервере, но это создаёт баг, с помощью которого я могу смотреть, что надето на чужих чарах.
У меня есть base address и смещения до CharID, но мне надо, чтобы при заходе сразу был нужный мне идентификатор, а вот как поменять вообще ума не приложу.

Ранг: 31.3 (посетитель)
Статус: Участник

Создано: 12 мая 2019 01:25 New!
Цитата · Личное сообщение · #7

отладчик здесь не очень полезен - тебе нужно перехватывать пакеты
например когда ктото появляется в твоём поле видимости сервер шлёт пакет с ИД того перса - тебе нужно его сохранить и потом при нажатии кнопки инвентаря подменить свой ИД на ИД того перса.
както так

Ранг: 0.8 (гость)
Статус: Участник

Создано: 12 мая 2019 01:56 New!
Цитата · Личное сообщение · #8

Нееет, мне надо одного перса, ид которого я знаю, чтобы сразу при заходе на любого чара был его ID, но я не могу предположить как это сделать, уже два дня копаюсь в иде и отладчике Cheat Engine.

Ранг: 31.3 (посетитель)
Статус: Участник

Создано: 12 мая 2019 02:21 New!
Цитата · Личное сообщение · #9

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

Ранг: 0.8 (гость)
Статус: Участник

Создано: 12 мая 2019 02:25 New!
Цитата · Личное сообщение · #10

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

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


Ранг: 184.0 (ветеран)
Статус: Участник

Создано: 12 мая 2019 06:28 New!
Цитата · Личное сообщение · #11

Simcher пишет:
когда меняешь персонажа не выходя из игры адрес значения меняется

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

| Сообщение посчитали полезным: Simcher


Ранг: 11.3 (новичок)
Статус: Участник

Создано: 12 мая 2019 18:42 New!
Цитата · Личное сообщение · #12

Simcher
Покури тему по указателям на классы в объектно ориентированном программировании...что-то похожее,на геймхаклабе рассматривалось при использовании чит энжина...

Добавлено спустя 15 минут
Точнее указатели на структуры и указатели на указатели...

Ранг: 0.8 (гость)
Статус: Участник

Создано: 13 мая 2019 16:54 New!
Цитата · Личное сообщение · #13

Спасибо

Добавлено спустя 1 час 6 минут
Можно ссылку на подобное из gamehacklab?Куча видосов, не знаю что именно искать
 eXeL@B —› Вопросы новичков —› По игре.

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS