Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
RequestAutoSoulShot
#1
Хроники ц4.

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

Сдублировал обычную соску. Добавил везде где нужно со стороны сервера.
При одиночном клике соски срабатывают.
Но при вытягивании на панель и клике правой кнопкой мыши клиент не шлет пакет RequestAutoSoulShot (смотрю логером пакетов).
ID сосок куда то "вшиты" в код клиента?
Ответ
#2
Там есть свитч в котором зашиты id итемов-сосок. Ищи в nwindow.dll
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
#3
Нашел.
Как бы его еще пропатчить грамотно.


Файлы вложений
.png   shots_switch.PNG (Размер: 14.89 KB / Загрузок: 71)
Ответ
#4
Сделал со стороны сервера чтобы активировались автоматически при перетягивании на панель.
Костыль, но так проще.
Ответ
#5
flopix Написал:Нашел.
Как бы его еще пропатчить грамотно.
Там не патчить надо, а хукать своей дллкой Smile
[Изображение: 4e38c909fcd08c5fcdf363b54a62.png]
Ответ
#6
можно сдвинуть шоты рыбалки. рыбалкины шоты сделать с другиуми ид, а свои шоты сделать с иды от рыболовных
я так сделал у себя
Ответ
#7
Zubastic Написал:Там не патчить надо, а хукать своей дллкой Smile

Я это и имел ввиду.

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

Добавлено через 6 минут
smeli Написал:можно сдвинуть шоты рыбалки. рыбалкины шоты сделать с другиуми ид, а свои шоты сделать с иды от рыболовных
я так сделал у себя

Так рыбалкины тоже не подходят их даже нет в том коде проверки диапазона.

PHP код:
<?php 
0A4AE500 8B4424 04 MOV EAX
,DWORD PTR SS:[ESP+4]
0A4AE504 3D 700F0000 CMP EAX,0F70 3952=Благословенный Заряд Духа: Ранг S
0A4AE509 7F 31 JG SHORT NWindow.0A4AE53C
0A4AE50B 3D 6B0F0000 CMP EAX
,0F6B 3947=Благословенный Заряд Духа: Без Ранга
0A4AE510 7D 46 JGE SHORT NWindow.0A4AE558
0A4AE512 3D 2B070000 CMP EAX
,72B 1835=Заряд Души: Без Ранга
0A4AE517 7F 15 JG SHORT NWindow.0A4AE52E
0A4AE519 74 3D JE SHORT NWindow.0A4AE558
0A4AE51B 3D B7050000 CMP EAX
,5B7 1463=Заряд Души: Ранг D
0A4AE520 7C 07 JL SHORT NWindow.0A4AE529
0A4AE522 3D BB050000 CMP EAX
,5BB 1467=Заряд Души: Ранг S
0A4AE527 7E 2F JLE SHORT NWindow.0A4AE558
0A4AE529 33C0
XOR EAX,EAX
0A4AE52B C2 0400 RETN 4
0A4AE52E 3D CD090000 CMP EAX
,9CD 2509=Заряд Духа: Без Ранга
0A4AE533
^7C F4 JL SHORT NWindow.0A4AE529
0A4AE535 3D D2090000 CMP EAX
,9D2 2514=Заряд Духа: Ранг S
0A4AE53A
^EB EB JMP SHORT NWindow.0A4AE527
0A4AE53C 3D F7190000 CMP EAX
,19F7 6647=Благословенный Заряд Духа Зверя
0A4AE541
^7F E6 JG SHORT NWindow.0A4AE529
0A4AE543 3D F5190000 CMP EAX
,19F5 6645=Заряд Души Зверя
0A4AE548 7D 0E JGE SHORT NWindow.0A4AE558
0A4AE54A 3D 9D160000 CMP EAX
,169D 5789=Заряд Души: Без Ранга для Новичков
0A4AE54F
^7C D8 JL SHORT NWindow.0A4AE529
0A4AE551 3D 9E160000 CMP EAX
,169E 5790=Заряд Духа: Без Ранга для Новичков
0A4AE556
^7F D1 JG SHORT NWindow.0A4AE529
0A4AE558 B8 01000000 MOV EAX
,1
0A4AE55D C2 0400 RETN 4
Ответ
#8
flopix Написал:Функции неэкспортируемые, нужно каждый раз находить смещение в памяти.
Потом перенаправлять на свой обработчик диапазона сосок.
Если одна длл, то можно и просто пропатчить - обработчик записать в выравнивание любой исполняемой секции или вовсе её расширить.
Либо в динамике искать по сигнатуре и аналогично хукать.
Ответ


Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)