If you overwrote this part in the console script then that's on you lolguttedloser wrote: ↑Fri Nov 03, 2023 10:45 pmThis does re-open the Console Commands but then none of them toggle. Nothing responds.HenryEx wrote: ↑Thu Nov 02, 2023 11:16 pmCalm down, satan.unREAL wrote: ↑Thu Nov 02, 2023 8:16 pm
I looked into the table and I think we are f*cked ... Larian f*cked us...
USUALLY I would find the command/console instance If I do a "IntegerSum" string search -> scan for the result - 0x8 -0x20 - 0x10 ... but since newest update ... nothing.
This means they have changed REALLY MUCH on the structure of the game .. or they finally removed all the console commands.
Larian does NOT want that you or me can use the console ...Read this:
viewtopic.php?p=307312#p307312
So anyone should expect the worst ... console commands could be dead forever ... I swear I hate game devs every day more ...
I'm not gonna look into all the codes because i don't know how they were made and how to find the code structures that changed, i'm hoping someone else will. Especially for the DLC ones, and the Last Item Moved / Dropped codes, because these were very useful.
But i took a very short look (10 minutes) at the most important one, which is console commands, and had to only very slightly (a single byte different) alter the search mask, and then change like three lines of code in the script to make it work again.
Open the Console Commands script, Ctrl+A to select everything, delete it, then replace it with this:
Did a very cursory test, but command count is populated properly, i can register commands in-game, and the one i tested real quick worked just like before the patch.Code: Select all
[ENABLE] aobscanmodule(console,$process,81 E2 FF FF FF 01 4C) alloc(newmem,$1000,console) alloc(cmdCode,$1000) alloc(cmdStr0,$1000) alloc(cmdStr1,$1000) alloc(cmdStr2,$1000) alloc(cmdStr3,$1000) alloc(cmdStr4,$1000) label(cmdCall) label(cmdArgs) label(cmdSelf) label(cmdAddr) label(cmdList) label(code) label(return) newmem: mov rdi,cmdList mov rax,[r13+08] mov [rdi],rax code: and edx,01FFFFFF jmp return cmdList: dq 0 console: jmp newmem nop return: cmdCode: align 10 cmdCall: sub rsp,38 mov rdx,cmdArgs mov rax,cmdAddr mov rcx,cmdSelf mov rcx,[rcx] call [rax] add rsp,38 movzx rax,al ret align 10 cmdAddr: dq 0 align 10 cmdSelf: dq 0 align 10 cmdArgs: dq 0 dq 0 dq 0 dq 0 dq 0 dq 0 dq 0 dq 0 dq 0 dq 0 registersymbol(console) registersymbol(cmdList) registersymbol(cmdCall) registersymbol(cmdAddr) registersymbol(cmdSelf) registersymbol(cmdArgs) registersymbol(cmdStr0) registersymbol(cmdStr1) registersymbol(cmdStr2) registersymbol(cmdStr3) registersymbol(cmdStr4) [DISABLE] console: db 81 E2 FF FF FF 01 unregistersymbol(console) dealloc(newmem) unregistersymbol(cmdList) unregistersymbol(cmdCode) unregistersymbol(cmdStr0) unregistersymbol(cmdStr1) unregistersymbol(cmdStr2) unregistersymbol(cmdStr3) unregistersymbol(cmdStr4) dealloc(cmdCode) dealloc(cmdStr0) dealloc(cmdStr1) dealloc(cmdStr2) dealloc(cmdStr3) dealloc(cmdStr4)
Code: Select all
{
// ORIGINAL CODE - INJECTION POINT: bg3.exe+2F153D3
bg3.exe+2F153B7: 75 0A - jne bg3.exe+2F153C3
bg3.exe+2F153B9: 48 8B 4F 10 - mov rcx,[rdi+10]
bg3.exe+2F153BD: FF 15 85 08 97 01 - call qword ptr [bg3.exe+4885C48]
bg3.exe+2F153C3: 48 8B 5C 24 30 - mov rbx,[rsp+30]
bg3.exe+2F153C8: 48 83 C4 20 - add rsp,20
bg3.exe+2F153CC: 5F - pop rdi
bg3.exe+2F153CD: C3 - ret
bg3.exe+2F153CE: CC - int 3
bg3.exe+2F153CF: CC - int 3
bg3.exe+2F153D0: C1 EA 03 - shr edx,03
// ---------- INJECTING HERE ----------
bg3.exe+2F153D3: 81 E2 FF FF FF 01 - and edx,01FFFFFF
// ---------- DONE INJECTING ----------
bg3.exe+2F153D9: 3B 51 2C - cmp edx,[rcx+2C]
bg3.exe+2F153DC: 73 09 - jae bg3.exe+2F153E7
bg3.exe+2F153DE: 48 8B 41 20 - mov rax,[rcx+20]
bg3.exe+2F153E2: 48 8B 04 D0 - mov rax,[rax+rdx*8]
bg3.exe+2F153E6: C3 - ret
bg3.exe+2F153E7: 33 C0 - xor eax,eax
bg3.exe+2F153E9: C3 - ret
bg3.exe+2F153EA: CC - int 3
bg3.exe+2F153EB: CC - int 3
bg3.exe+2F153EC: CC - int 3
}
How to use this cheat table?
- Install Cheat Engine
- Double-click the .CT file in order to open it.
- Click the PC icon in Cheat Engine in order to select the game process.
- Keep the list.
- Activate the trainer options by checking boxes or setting values from 0 to 1