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

Titan Quest Anniversary Edition[Помогите со скриптом]


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

Всем привет

Взялся за игру Titan Quest хочу отдалить камеру не пойму как написать скрипт.

Спойлер

[ENABLE]

aobscanmodule(INJECT,Game_DX11.dll,60 05 00 00 F3 0F 10 86 70 05 00 00 F3 0F 10 8E 74 05 00 00) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  movss xmm1,[esi+00000574]
  jmp return

INJECT+0C:
  jmp code
  nop
  nop
  nop
return:
registersymbol(INJECT)

[DISABLE]

INJECT+0C:
  db F3 0F 10 8E 74 05 00 00

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "Game_DX11.dll"+1A6D4E

"Game_DX11.dll"+1A6D2B: EB 19                    -  jmp Game_DX11.dll+1A6D46
"Game_DX11.dll"+1A6D2D: 0F 2F C1                 -  comiss xmm0,xmm1
"Game_DX11.dll"+1A6D30: EB E8                    -  jmp Game_DX11.dll+1A6D1A
"Game_DX11.dll"+1A6D32: 0F 57 C9                 -  xorps xmm1,xmm1
"Game_DX11.dll"+1A6D35: 0F 2E C1                 -  ucomiss xmm0,xmm1
"Game_DX11.dll"+1A6D38: 9F                       -  lahf 
"Game_DX11.dll"+1A6D39: F6 C4 44                 -  test ah,44
"Game_DX11.dll"+1A6D3C: 7B 3F                    -  jnp Game_DX11.dll+1A6D7D
"Game_DX11.dll"+1A6D3E: F3 0F 11 A6 60 05 00 00  -  movss [esi+00000560],xmm4
"Game_DX11.dll"+1A6D46: F3 0F 10 86 70 05 00 00  -  movss xmm0,[esi+00000570]
// ---------- INJECTING HERE ----------
"Game_DX11.dll"+1A6D4E: F3 0F 10 8E 74 05 00 00  -  movss xmm1,[esi+00000574]
// ---------- DONE INJECTING  ----------
"Game_DX11.dll"+1A6D56: F3 0F 5C C8              -  subss xmm1,xmm0
"Game_DX11.dll"+1A6D5A: 51                       -  push ecx
"Game_DX11.dll"+1A6D5B: 8B CE                    -  mov ecx,esi
"Game_DX11.dll"+1A6D5D: F3 0F 59 8E 60 05 00 00  -  mulss xmm1,[esi+00000560]
"Game_DX11.dll"+1A6D65: F3 0F 58 C8              -  addss xmm1,xmm0
"Game_DX11.dll"+1A6D69: F3 0F 11 0C 24           -  movss [esp],xmm1
"Game_DX11.dll"+1A6D6E: FF 15 C8 28 EE 70        -  call dword ptr [Game_DX11.dll+3028C8]
"Game_DX11.dll"+1A6D74: F3 0F 10 54 24 0C        -  movss xmm2,[esp+0C]
"Game_DX11.dll"+1A6D7A: 0F 57 C9                 -  xorps xmm1,xmm1
"Game_DX11.dll"+1A6D7D: F3 0F 10 AE 94 05 00 00  -  movss xmm5,[esi+00000594]
}

 

 

Спойлер

07317fa47c36.png

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

2 часа назад, Farmim сказал:

не пойму как написать скрипт.

значение у тебя во float, конкретно, что на скрине 50.  

попробуй так

newmem:
  mov[esi+00000574],(float)60 
code:
  movss xmm1,[esi+00000574]

 

PS: да. и читаем правила форума.

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

ЗЫ: читаем правила.

2 минуты назад, Farmim сказал:

 

сделал как ты сказал значение не поменялось

А вот здесь:

INJECT+0C:
  jmp code
  nop

у тебя прыжок на code? ты его изменил на newmem?

ЗЫ: правила, которые ты не прочитал:
 

  1. Любой код, цитата и прочее - должны быть обернуты специальными тэгами. Кроме того, если фрагмент кода достаточно большой (более 10 строк кода), то его необходимо также обернуть тэгом спойлера (скрытый текст).
  2. При ответе на какой-либо пост необходимо цитировать только ту часть, на которую дается ответ, но не все сообщение целиком. Это делается для того, чтобы не приходилось проматывать громадные портянки цитат больших сообщений.
Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, Garik66 сказал:

ЗЫ: читаем правила.

А вот здесь:

у тебя прыжок на code? ты его изменил на newmem?

 

Все заработало спасибо 

Ps можно сслыку на правила форума.

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

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

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

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