Re: Mass Effect Andromeda
Posted: Fri Apr 14, 2017 1:24 pm
Can anyone make ignore level requirements crafting code for v 1.04? Thanks
Community Cheat Tables of Cheat Engine
https://fearlessrevolution.com/
adapted Celios code, it's working on 1.04 CPY, but i'm not sure that it's haven't minor sides. cuz 2 pages ago i asked him about correctness of it, and he isn't answer.
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
//aobscanmodule(playerLvlConstantReadRetAOB,MassEffectAndromeda.exe,EB 1B 48 ** ** ** ** ** ** 48 ** ** ** ** 48 8B 03)
//registersymbol(playerLvlConstantReadRetAOB)
aobscanmodule(playerLvlChkRetAOB,MassEffectAndromeda.exe,48 8B 4F 20 48 89 DA 48 8B 01 0F 28 F0)
registersymbol(playerLvlChkRetAOB)
aobscanmodule(playerLvlReadAOB,MassEffectAndromeda.exe,8B 80 C8 00 00 00 FF C0 EB xx) //8B 80 C8 00 00 00 FF C0 EB 02)
registersymbol(playerLvlReadAOB)
label(bIsLvlChk)
registersymbol(bIsLvlChk)
alloc(newmem,2048,playerLvlReadAOB) //"MassEffectAndromeda.exe"+75A048)
label(returnhere)
label(originalcode)
label(exit)
newmem:
//mov rbx,playerLvlConstantReadRetAOB //"MassEffectAndromeda.exe"+C2775E //constant read
//cmp [rsp+68],rbx
//je originalcode
//mov rbx,[rax+c8]
//mov rbx,"MassEffectAndromeda.exe"+63DCCC8 //level read in development
//cmp [rsp+68],rbx
//jne @f
//mov eax,#80
//jmp exit
//@@:
mov rbx,playerLvlChkRetAOB //"MassEffectAndromeda.exe"+63ADBDF //level chk
cmp [rsp+68],rbx
jne @f
//mov rbx,[rax+c8]
mov byte ptr [bIsLvlChk],1
originalcode:
mov eax,[rax+000000C8]
exit:
jmp returnhere
///
bIsLvlChk:
dd 0
///
playerLvlReadAOB: //"MassEffectAndromeda.exe"+75A048:
jmp newmem
nop
returnhere:
///**********************************************///
aobscanmodule(setFlagIfEnoughLvlAOB,MassEffectAndromeda.exe,0F 2F F0 0F 93 D0 48 ** ** ** ** 0F 28 ** ** ** 48 83 ** ** 5F C3)
registersymbol(setFlagIfEnoughLvlAOB)
alloc(newmem2,2048,setFlagIfEnoughLvlAOB) //"MassEffectAndromeda.exe"+63ADC06)
label(returnhere2)
label(originalcode2)
label(exit2)
newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
cmp byte ptr [bIsLvlChk],1
jne @f
mov byte ptr [bIsLvlChk],0
mov al,1
jmp exit2
originalcode2:
comiss xmm6,xmm0
setae al
exit2:
jmp returnhere2
///
setFlagIfEnoughLvlAOB: //"MassEffectAndromeda.exe"+63ADC06:
jmp newmem2
nop
returnhere2:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
playerLvlReadAOB: //"MassEffectAndromeda.exe"+75A048:
db 8B 80 C8 00 00 00
//Alt: mov eax,[rax+000000C8]
unregistersymbol(bIsLvlChk)
///**********************************************///
dealloc(newmem2)
setFlagIfEnoughLvlAOB: //"MassEffectAndromeda.exe"+63ADC06:
db 0F 2F F0 0F 93 D0
//Alt: comiss xmm6,xmm0
//Alt: setae al
Code: Select all
MassEffectAndromeda.exe+51F53E3 - 48 85 C9 - test rcx,rcx
MassEffectAndromeda.exe+51F53E6 - 74 10 - je MassEffectAndromeda.exe+51F53F8
MassEffectAndromeda.exe+51F53E8 - F0 FF 49 08 - lock dec [rcx+08]
MassEffectAndromeda.exe+51F53EC - 75 0A - jne MassEffectAndromeda.exe+51F53F8
MassEffectAndromeda.exe+51F53EE - 48 85 C9 - test rcx,rcx
MassEffectAndromeda.exe+51F53F1 - 74 05 - je MassEffectAndromeda.exe+51F53F8
MassEffectAndromeda.exe+51F53F3 - E8 18C0B0FF - call MassEffectAndromeda.exe+4D01410
MassEffectAndromeda.exe+51F53F8 - 48 85 DB - test rbx,rbx
MassEffectAndromeda.exe+51F53FB - 74 1A - je MassEffectAndromeda.exe+51F5417
MassEffectAndromeda.exe+51F53FD - 48 8B 83 F8080000 - mov rax,[rbx+000008F8]
MassEffectAndromeda.exe+51F5404 - 48 85 C0 - test rax,rax
MassEffectAndromeda.exe+51F5407 - 74 0E - je MassEffectAndromeda.exe+51F5417
playerLvlReadAOB - 8B 80 C8000000 - mov eax,[rax+000000C8]
MassEffectAndromeda.exe+51F540F - FF C0 - inc eax
MassEffectAndromeda.exe+51F5411 - EB 06 - jmp MassEffectAndromeda.exe+51F5419
MassEffectAndromeda.exe+51F5413 - 21 FC - and esp,edi
MassEffectAndromeda.exe+51F5415 - 32 10 - xor dl,[rax]
MassEffectAndromeda.exe+51F5417 - 31 C0 - xor eax,eax
MassEffectAndromeda.exe+51F5419 - 48 83 C4 30 - add rsp,30
MassEffectAndromeda.exe+51F541D - 5B - pop rbx
MassEffectAndromeda.exe+51F541E - C3 - ret
MassEffectAndromeda.exe+51F541F - 37 - aaa
MassEffectAndromeda.exe+51F5420 - CC - int 3
MassEffectAndromeda.exe+51F5421 - CC - int 3
MassEffectAndromeda.exe+51F5422 - CC - int 3
MassEffectAndromeda.exe+51F5423 - CC - int 3
MassEffectAndromeda.exe+51F5424 - CC - int 3
MassEffectAndromeda.exe+51F5425 - CC - int 3
MassEffectAndromeda.exe+51F5426 - 66 2E 0F1F 84 00 00000000 - nop cs:[rax+rax+00000000]
MassEffectAndromeda.exe+51F5430 - 48 89 5C 24 08 - mov [rsp+08],rbx
MassEffectAndromeda.exe+51F5435 - 57 - push rdi
MassEffectAndromeda.exe+51F5436 - 48 83 EC 30 - sub rsp,30
MassEffectAndromeda.exe+51F543A - 0F29 74 24 20 - movaps [rsp+20],xmm6
use xp pointer + lvl pointer in Celios tablesacreddruid wrote: ↑Fri Apr 14, 2017 9:23 pmHas anyone figured out a way to STOP all EXP gain, or GO BACKWARD in levels? (Delevel)?
Anytime I try to mess with Current EXP or EXP TNL the game kinda shits the bed and ends up setting me to level 132 when I reload a save with tampered EXP values. Only happens if I try to set stuff lower.
It almost feels like EXP is being tracked somewhere else/somehow else, besides for just the current pointers we have?
Love what you did with Celios table, but 2 things I noticed you missed. Other than that, it's totally awesome. I was actually trying to learn more about Cheat Engine so I could clean it up as you did.ReActif wrote: ↑Fri Apr 14, 2017 8:29 amEdit with Google Trad: Sorry for the very apprixmative English
I propose a version that I resumed at the base for my personal use.
- I cleaned the table of all that is no longer useful or does not work (having little knowledge in ASM, I hope I have not taken useful things)
- I needed the code for the Infinite Boost of the Nomad so I added it.
- I added the Teleportation code.
- I reclassify all tables and views to make it more convenient (I find) to use and detailed.
Thanks, this helped a bit, the only issue I'm running into is that no matter what set the values to, I'm reverting to my original level every time I load the save. I even tried "leveling up" naturally a few times and saving frequently, it just doesn't seem to want to stick on a reload.DarkIceCore wrote: ↑Fri Apr 14, 2017 9:55 pmuse xp pointer + lvl pointer in Celios tablesacreddruid wrote: ↑Fri Apr 14, 2017 9:23 pmHas anyone figured out a way to STOP all EXP gain, or GO BACKWARD in levels? (Delevel)?
Anytime I try to mess with Current EXP or EXP TNL the game kinda shits the bed and ends up setting me to level 132 when I reload a save with tampered EXP values. Only happens if I try to set stuff lower.
It almost feels like EXP is being tracked somewhere else/somehow else, besides for just the current pointers we have?
xp pointer = pPlayerBase + d80 + FC
lvl pointer = pPlayerBase + d80 + F8
set lvl to 10, it will be 11 and xp to 50k, gain xp by kill/quest, save->load. if not working, set xp to 1k.
when shit with freezing on kill is started, i already did this steps, but my own problem with freeze was not solved.
How do I make this permanent? It always switches back to 50 when I start a game!acecel wrote: ↑Fri Apr 14, 2017 3:06 amThank you, but is this for v1.05 i guess, because it doesn't work for v1.04
This code seems to work for v1.04 (9999 inventory)
Code: Select all
[ENABLE] aobscanmodule(inventorysize,MassEffectAndromeda.exe,F3 0F 10 41 18 C3 B5 CC CC CC) // should be unique alloc(newmem,$1000,"MassEffectAndromeda.exe"+6B9A0) label(code) label(return) newmem: cmp rsi, 7FFF jne code mov [rcx+18], (float)9999 code: movss xmm0,[rcx+18] jmp return inventorysize: jmp newmem return: registersymbol(inventorysize) [DISABLE] inventorysize: db F3 0F 10 41 18 unregistersymbol(inventorysize) dealloc(newmem)
What table are you using for this? I tried but nothing happens. It just sells my key! I have CPY version (1.04)GuyInDogSuit wrote: ↑Thu Apr 13, 2017 4:37 pmEnable the method holding shift, then hold shift and sell your key. It will instead double your amount. Keep doing this until you have at most 15 (there's five worlds to terraform, and each has three monoliths with Sudoku puzzles). Or you can go nuts and dupe a bunch for new game + uses like I did.yoco wrote: ↑Thu Apr 13, 2017 3:22 pmCan you plz explain how to use this dupe option? I'm on Tempest, and I have 1 desc key.GuyInDogSuit wrote: ↑Thu Apr 13, 2017 3:22 amI used the duplicate thing, got 48 decryption keys, haha. More than enough.