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

Fallout 4 Характеристики Жизни ОЗ


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

Привет всем, столкнулся с такой проблемой,в игре Fallout 4 Нашёл характеристику Жизней Игрока, называется ОЗ, нашёл инструкцию которая отвечает за эту характеристику, в этой инструкции несколько сотен тысяч адресов, но мене нужен только один, но я его немого отделить от всех этих адресов, потому что не могу найти ID что бы отделить, пробовал делать анализ данной структуры, ID я там не нашёл, пробовал через регистры, тоже нет ID, пробовал искать указатель тоже не чего не находить, как мене найти ID на эти Жизни ОЗ, как можно отделить. ПОМОГИТЕ ПОЖАЛУЙСТА.

 

Вот сам скрипт

Скрытый текст

[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat

 
 
aobscanmodule(INJECT,Fallout4.exe,8B 48 04 40 B7 01) // should be unique
alloc(newmem,$1000,"Fallout4.exe"+E07F32)

label(code)
label(return)

newmem:

code:
  mov ecx,[rax+04]
  mov dil,01
  jmp return

INJECT:
  jmp code
  nop
return:
registersymbol(INJECT)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
INJECT:
  db 8B 48 04 40 B7 01

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "Fallout4.exe"+E07F32

"Fallout4.exe"+E07F18: 48 8B C8        -  mov rcx,rax
"Fallout4.exe"+E07F1B: 49 3B C1        -  cmp rax,r9
"Fallout4.exe"+E07F1E: 74 1B           -  je Fallout4.exe+E07F3B
"Fallout4.exe"+E07F20: 8B 4D 14        -  mov ecx,[rbp+14]
"Fallout4.exe"+E07F23: 39 08           -  cmp [rax],ecx
"Fallout4.exe"+E07F25: 74 0B           -  je Fallout4.exe+E07F32
"Fallout4.exe"+E07F27: 48 83 C0 08     -  add rax,08
"Fallout4.exe"+E07F2B: 49 3B C1        -  cmp rax,r9
"Fallout4.exe"+E07F2E: 75 F3           -  jne Fallout4.exe+E07F23
"Fallout4.exe"+E07F30: EB 09           -  jmp Fallout4.exe+E07F3B
// ---------- INJECTING HERE ----------
"Fallout4.exe"+E07F32: 8B 48 04        -  mov ecx,[rax+04]
"Fallout4.exe"+E07F35: 40 B7 01        -  mov dil,01
// ---------- DONE INJECTING  ----------
"Fallout4.exe"+E07F38: 41 89 0E        -  mov [r14],ecx
"Fallout4.exe"+E07F3B: 48 85 DB        -  test rbx,rbx
"Fallout4.exe"+E07F3E: 74 08           -  je Fallout4.exe+E07F48
"Fallout4.exe"+E07F40: 48 8B CB        -  mov rcx,rbx
"Fallout4.exe"+E07F43: E8 28 71 CE 00  -  call Fallout4.exe+1AEF070
"Fallout4.exe"+E07F48: 48 8B 5C 24 30  -  mov rbx,[rsp+30]
"Fallout4.exe"+E07F4D: 48 8B 6C 24 38  -  mov rbp,[rsp+38]
"Fallout4.exe"+E07F52: 48 8B 74 24 40  -  mov rsi,[rsp+40]
"Fallout4.exe"+E07F57: 40 0F B6 C7     -  movzx eax,dil
"Fallout4.exe"+E07F5B: 48 8B 7C 24 48  -  mov rdi,[rsp+48]
}

 

 

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

Привет! Перестань писать ЗАГЛАВНЫМИ БУКВАМИ и торопиться, пожалуйста. Так читать текст будет намного легче. Можешь показать, что ты уже нашел и как пытался искать ID, соответствующий игроку? Помогут адреса значений, инструкций, структур, фрагменты кода, в общем - все.

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

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

в игре Fallout 4

Начинал писать скрипты для этой игры, но на более ранней версии игры ( в самом начале где-то).

Сейчас со временем плохо, так что просто выложу сюда свою табличку.

У меня рассмотрены были несколько опций:

001. Infinite Ammo + No Reload

002. God Mod

003. Zero Weight

004. Hacker

005. Auto Lock Opening

006. + Experience  -> New Level

007. Perk Points

008. Invisibility

 

Попробуй по аналогии моим скриптам написать для своей версии игры:

 

Сама табличка:

 

 

 

 

Fallout4.CT

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

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

а пробовал ещё от дельно искать адрес через поиск в Cheat Engine, но такие адреса он почему то не ищет 13CABC80E74.

 

Привет Garik66, я посмотрел твой скрипт, но он для меня без полезен, всё равно спасибо тебе.

а по аналогии не получится, там всё другое.

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

вот есть там ещё вот такая инструкция, 

вот адрес моих Жизней ОЗ 13CABC80E74 а вот адрес который, в этой инструкции

lea r9,[rax+rdx*8]
mov rcx,rax 
самый первый по списку 13CABC81110

Скрытый текст

[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat

 
 
aobscanmodule(INJECT,Fallout4.exe,4C 8D 0C D0 48 8B C8 49 3B C1 74 1B) // should be unique
alloc(newmem,$1000,"Fallout4.exe"+E07F14)

label(code)
label(return)

newmem:

code:
  lea r9,[rax+rdx*8]
  mov rcx,rax
  jmp return

INJECT:
  jmp code
  nop
  nop
return:
registersymbol(INJECT)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
INJECT:
  db 4C 8D 0C D0 48 8B C8

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "Fallout4.exe"+E07F14

"Fallout4.exe"+E07EF7: 48 8B EA        -  mov rbp,rdx
"Fallout4.exe"+E07EFA: E8 B1 6E CE 00  -  call Fallout4.exe+1AEEDB0
"Fallout4.exe"+E07EFF: 8B 4E 10        -  mov ecx,[rsi+10]
"Fallout4.exe"+E07F02: 45 33 C9        -  xor r9d,r9d
"Fallout4.exe"+E07F05: 40 32 FF        -  xor dil,dil
"Fallout4.exe"+E07F08: 41 8B C1        -  mov eax,r9d
"Fallout4.exe"+E07F0B: 85 C9           -  test ecx,ecx
"Fallout4.exe"+E07F0D: 74 0C           -  je Fallout4.exe+E07F1B
"Fallout4.exe"+E07F0F: 48 8B 06        -  mov rax,[rsi]
"Fallout4.exe"+E07F12: 8B D1           -  mov edx,ecx
// ---------- INJECTING HERE ----------
"Fallout4.exe"+E07F14: 4C 8D 0C D0     -  lea r9,[rax+rdx*8]
"Fallout4.exe"+E07F18: 48 8B C8        -  mov rcx,rax
// ---------- DONE INJECTING  ----------
"Fallout4.exe"+E07F1B: 49 3B C1        -  cmp rax,r9
"Fallout4.exe"+E07F1E: 74 1B           -  je Fallout4.exe+E07F3B
"Fallout4.exe"+E07F20: 8B 4D 14        -  mov ecx,[rbp+14]
"Fallout4.exe"+E07F23: 39 08           -  cmp [rax],ecx
"Fallout4.exe"+E07F25: 74 0B           -  je Fallout4.exe+E07F32
"Fallout4.exe"+E07F27: 48 83 C0 08     -  add rax,08
"Fallout4.exe"+E07F2B: 49 3B C1        -  cmp rax,r9
"Fallout4.exe"+E07F2E: 75 F3           -  jne Fallout4.exe+E07F23
"Fallout4.exe"+E07F30: EB 09           -  jmp Fallout4.exe+E07F3B
"Fallout4.exe"+E07F32: 8B 48 04        -  mov ecx,[rax+04]
}

 

 

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

21 минуты назад, Baracuda сказал:

Привет Garik66, я посмотрел твой скрипт, но он для меня без полезен, всё равно спасибо тебе.

а по аналогии не получится, там всё другое.

:) Сомневаюсь, что другое - настолько сильно навряд ли разрабы изменили код игры, тебе просто лень изучить скрипт.

Если бы ты внимательно посмотрел скрипт GodMod, то увидел бы что я в нём обнуляю именно урон наносимый нашему герою, а указатель (pointer) на нужный адрес (иначе говоря фильтр) беру из другой инструкции, которая работает только с нашим героем.

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

Garik66 я могу быть невнимательный, но ленивы нет, ты смотри по лучше, 

вот инструкция коротая отвечает за Жизни ОЗ, там характеристики жизней, ОЗ

Скрытый текст

[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat

 
 
aobscanmodule(INJECT,Fallout4.exe,8B 48 04 40 B7 01) // should be unique
alloc(newmem,$1000,"Fallout4.exe"+E07F32)

label(code)
label(return)

newmem:

code:
  mov ecx,[rax+04]
  mov dil,01
  jmp return

INJECT:
  jmp code
  nop
return:
registersymbol(INJECT)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
INJECT:
  db 8B 48 04 40 B7 01

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "Fallout4.exe"+E07F32

"Fallout4.exe"+E07F18: 48 8B C8        -  mov rcx,rax
"Fallout4.exe"+E07F1B: 49 3B C1        -  cmp rax,r9
"Fallout4.exe"+E07F1E: 74 1B           -  je Fallout4.exe+E07F3B
"Fallout4.exe"+E07F20: 8B 4D 14        -  mov ecx,[rbp+14]
"Fallout4.exe"+E07F23: 39 08           -  cmp [rax],ecx
"Fallout4.exe"+E07F25: 74 0B           -  je Fallout4.exe+E07F32
"Fallout4.exe"+E07F27: 48 83 C0 08     -  add rax,08
"Fallout4.exe"+E07F2B: 49 3B C1        -  cmp rax,r9
"Fallout4.exe"+E07F2E: 75 F3           -  jne Fallout4.exe+E07F23
"Fallout4.exe"+E07F30: EB 09           -  jmp Fallout4.exe+E07F3B
// ---------- INJECTING HERE ----------
"Fallout4.exe"+E07F32: 8B 48 04        -  mov ecx,[rax+04]
"Fallout4.exe"+E07F35: 40 B7 01        -  mov dil,01
// ---------- DONE INJECTING  ----------
"Fallout4.exe"+E07F38: 41 89 0E        -  mov [r14],ecx
"Fallout4.exe"+E07F3B: 48 85 DB        -  test rbx,rbx
"Fallout4.exe"+E07F3E: 74 08           -  je Fallout4.exe+E07F48
"Fallout4.exe"+E07F40: 48 8B CB        -  mov rcx,rbx
"Fallout4.exe"+E07F43: E8 28 71 CE 00  -  call Fallout4.exe+1AEF070
"Fallout4.exe"+E07F48: 48 8B 5C 24 30  -  mov rbx,[rsp+30]
"Fallout4.exe"+E07F4D: 48 8B 6C 24 38  -  mov rbp,[rsp+38]
"Fallout4.exe"+E07F52: 48 8B 74 24 40  -  mov rsi,[rsp+40]
"Fallout4.exe"+E07F57: 40 0F B6 C7     -  movzx eax,dil
"Fallout4.exe"+E07F5B: 48 8B 7C 24 48  -  mov rdi,[rsp+48]
}

 

Вот посмотри 

Скрытый текст

{
// ORIGINAL CODE - INJECTION POINT: "Fallout4.exe"+A0B27C

"Fallout4.exe"+A0B256: 0F 28 F0                 -  movaps xmm6,xmm0
"Fallout4.exe"+A0B259: 41 0F 2F F0              -  comiss xmm6,xmm8
"Fallout4.exe"+A0B25D: 77 04                    -  ja Fallout4.exe+A0B263
"Fallout4.exe"+A0B25F: 41 0F 28 F0              -  movaps xmm6,xmm8
"Fallout4.exe"+A0B263: 48 8B 1D 5E ED F3 04     -  mov rbx,[Fallout4.exe+5949FC8]
"Fallout4.exe"+A0B26A: 48 8B D7                 -  mov rdx,rdi
"Fallout4.exe"+A0B26D: 48 8B 43 58              -  mov rax,[rbx+58]
"Fallout4.exe"+A0B271: 48 8D 4B 58              -  lea rcx,[rbx+58]
"Fallout4.exe"+A0B275: FF 50 08                 -  call qword ptr [rax+08]
"Fallout4.exe"+A0B278: 48 8B 43 58              -  mov rax,[rbx+58]
// ---------- INJECTING HERE ----------
"Fallout4.exe"+A0B27C: 48 8D 4B 58              -  lea rcx,[rbx+58]
"Fallout4.exe"+A0B280: 4C 8B C7                 -  mov r8,rdi
// ---------- DONE INJECTING  ----------
"Fallout4.exe"+A0B283: BA 02 00 00 00           -  mov edx,00000002
"Fallout4.exe"+A0B288: 0F 28 F8                 -  movaps xmm7,xmm0
"Fallout4.exe"+A0B28B: FF 50 38                 -  call qword ptr [rax+38]
"Fallout4.exe"+A0B28E: F3 0F 5C F8              -  subss xmm7,xmm0
"Fallout4.exe"+A0B292: 41 0F 2F F8              -  comiss xmm7,xmm8
"Fallout4.exe"+A0B296: 76 24                    -  jna Fallout4.exe+A0B2BC
"Fallout4.exe"+A0B298: 0F 28 CF                 -  movaps xmm1,xmm7
"Fallout4.exe"+A0B29B: 0F 54 0D BE 86 14 02     -  andps xmm1,[Fallout4.exe+2B53960]
"Fallout4.exe"+A0B2A2: 0F 2F 0D F7 C1 14 02     -  comiss xmm1,[Fallout4.exe+2B574A0]
"Fallout4.exe"+A0B2A9: 76 11                    -  jna Fallout4.exe+A0B2BC
}

 

 

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

Только что, Baracuda сказал:

Garik66 я могу быть невнимательный, но ленивы нет, ты смотри по лучше, 

вот инструкция коротая отвечает за Жизни ОЗ, там характеристики жизней, ОЗ

 

:D Ладно мы разговариваем на разных языках с тобой, ты меня не понимаешь.

Посмотри видео у Xipho в разделе "как я взламывал", точно не помню, но кажется он писал GodMod для Fallout 4. 

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

я тебя понял о чём ты говоришь, и твой скрипт работает, я проверил да при взрыве ты не погибаешь, это я тебе подробно описал, что ты меня не понял, 

я ищу не урон а ОЗ так и называется, если это увеличить ОЗ то жизни будут отниматься по чуть чуть.

потому и твоя таблице не подходить, всё не то.

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

Посмотри ещё раз мой скрипт внимательно и посмотри на Логи второй инструкции:

"Fallout4.exe"+113F9F0: F3 0F 10 01           -  movss xmm0,[rcx]  
"Fallout4.exe"+113F9F4: F3 0F 58 41 04        -  addss xmm0,[rcx+04]
// ---------- INJECTING HERE ----------
"Fallout4.exe"+113F9F9: F3 0F 58 41 08        -  addss xmm0,[rcx+08]

Скорее всего, (просто уже не помню как там в игре устроено - давно ломал, а игры у меня уже нет я давно все игры снёс и репаки тоже - почистил диск.) вот именно в [rcx] и лежит текущее значение здоровья героя.

Попробую переписать свой скрипт для здоровья, т.е. как ты хочешь:

Вот проверь скрипт 

002A Infinite HP (999) for Baracuda:

Скрытый текст

{ Game   : Fallout4.exe
  Version: 
  Date   : 2016-01-05
  Author : Garik66

  This script does blah blah blah
}

[ENABLE]
aobscanmodule(Player_ID,Fallout4.exe,48 8D 4B 58 4C 8B C7 BA 02 00 00 00 0F 28 F8 FF 50 38 F3 0F) // should be unique
alloc(newmem,$1000,"Fallout4.exe"+CA752C)
label(code)
label(return)
label(Pointer)
registersymbol(Pointer)
registersymbol(Player_ID)
aobscanmodule(GodMod,Fallout4.exe,F3 0F 58 41 08 C3) // should be unique
//"Fallout4.exe"+113F9F9
label(code1)
label(return1)
registersymbol(GodMod)

newmem:

code:
  mov qword ptr [Pointer],rbx
  lea rcx,[rbx+58]
  mov r8,rdi
  jmp return

code1:
  push rbp
  sub rbp,58
  cmp rbp,qword ptr [Pointer]
  pop rbp
  jne @f
  mov [rcx],(float)999                // По идее HP героя будет теперь 999

@@:
  addss xmm0,[rcx+08]
  jmp return1

Pointer:
dq 0

Player_ID:
  jmp code
  nop
  nop
return:

GodMod:
  jmp code1
return1:


[DISABLE]
Player_ID:
  db 48 8D 4B 58 4C 8B C7

unregistersymbol(Pointer)
unregistersymbol(Player_ID)
GodMod:
  db F3 0F 58 41 08

unregistersymbol(GodMod)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "Fallout4.exe"+CA752C

"Fallout4.exe"+CA7506: 0F 28 F0                 -  movaps xmm6,xmm0
"Fallout4.exe"+CA7509: 41 0F 2F F0              -  comiss xmm6,xmm8
"Fallout4.exe"+CA750D: 77 04                    -  ja Fallout4.exe+CA7513
"Fallout4.exe"+CA750F: 41 0F 28 F0              -  movaps xmm6,xmm8
"Fallout4.exe"+CA7513: 48 8B 1D DE 46 36 06     -  mov rbx,[Fallout4.exe+700BBF8]
"Fallout4.exe"+CA751A: 48 8B D7                 -  mov rdx,rdi
"Fallout4.exe"+CA751D: 48 8B 43 58              -  mov rax,[rbx+58]
"Fallout4.exe"+CA7521: 48 8D 4B 58              -  lea rcx,[rbx+58]
"Fallout4.exe"+CA7525: FF 50 08                 -  call qword ptr [rax+08]
"Fallout4.exe"+CA7528: 48 8B 43 58              -  mov rax,[rbx+58]
// ---------- INJECTING HERE ----------
"Fallout4.exe"+CA752C: 48 8D 4B 58              -  lea rcx,[rbx+58]
"Fallout4.exe"+CA7530: 4C 8B C7                 -  mov r8,rdi
// ---------- DONE INJECTING  ----------
"Fallout4.exe"+CA7533: BA 02 00 00 00           -  mov edx,00000002
"Fallout4.exe"+CA7538: 0F 28 F8                 -  movaps xmm7,xmm0
"Fallout4.exe"+CA753B: FF 50 38                 -  call qword ptr [rax+38]
"Fallout4.exe"+CA753E: F3 0F 5C F8              -  subss xmm7,xmm0
"Fallout4.exe"+CA7542: 41 0F 2F F8              -  comiss xmm7,xmm8
"Fallout4.exe"+CA7546: 76 24                    -  jna Fallout4.exe+CA756C
"Fallout4.exe"+CA7548: 0F 28 CF                 -  movaps xmm1,xmm7
"Fallout4.exe"+CA754B: 0F 54 0D EE 04 AE 02     -  andps xmm1,[Fallout4.exe+3787A40]
"Fallout4.exe"+CA7552: 0F 2F 0D 2F 48 AE 02     -  comiss xmm1,[Fallout4.exe+378BD88]
"Fallout4.exe"+CA7559: 76 11                    -  jna Fallout4.exe+CA756C
}
{
// ORIGINAL CODE - INJECTION POINT: "Fallout4.exe"+113F9F9

"Fallout4.exe"+113F9E8: CC                    -  int 3
"Fallout4.exe"+113F9E9: CC                    -  int 3
"Fallout4.exe"+113F9EA: CC                    -  int 3
"Fallout4.exe"+113F9EB: CC                    -  int 3
"Fallout4.exe"+113F9EC: CC                    -  int 3
"Fallout4.exe"+113F9ED: CC                    -  int 3
"Fallout4.exe"+113F9EE: CC                    -  int 3
"Fallout4.exe"+113F9EF: CC                    -  int 3
"Fallout4.exe"+113F9F0: F3 0F 10 01           -  movss xmm0,[rcx]
"Fallout4.exe"+113F9F4: F3 0F 58 41 04        -  addss xmm0,[rcx+04]
// ---------- INJECTING HERE ----------
"Fallout4.exe"+113F9F9: F3 0F 58 41 08        -  addss xmm0,[rcx+08]
// ---------- DONE INJECTING  ----------
"Fallout4.exe"+113F9FE: C3                    -  ret
"Fallout4.exe"+113F9FF: CC                    -  int 3
"Fallout4.exe"+113FA00: CC                    -  int 3
"Fallout4.exe"+113FA01: CC                    -  int 3
"Fallout4.exe"+113FA02: CC                    -  int 3
"Fallout4.exe"+113FA03: CC                    -  int 3
"Fallout4.exe"+113FA04: CC                    -  int 3
"Fallout4.exe"+113FA05: CC                    -  int 3
"Fallout4.exe"+113FA06: CC                    -  int 3
"Fallout4.exe"+113FA07: CC                    -  int 3

 

отпишись о результатах.

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

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

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

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