Darksiders 3 [Engine:UE4] - Console enabler, Dumper and more..

Upload your cheat tables here (No requests)
Ewgendi
What is cheating?
What is cheating?
Posts: 2
Joined: Tue Dec 04, 2018 7:39 pm
Reputation: 1

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by Ewgendi »

Kadaji wrote:
Tue Dec 04, 2018 8:12 pm
Ewgendi wrote:
Tue Dec 04, 2018 7:45 pm
[Link]
what am I doing wrong?((((((
You patched the wrong bytes in the exe
Thank you, it works)

How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1

RedTear09
Novice Cheater
Novice Cheater
Posts: 17
Joined: Wed Oct 18, 2017 7:42 am
Reputation: 0

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by RedTear09 »

Been playing around with Additem function. Will it bug out the game if I spawn and have items like the hollows before actually acquiring them?

zachillios
Table Makers
Table Makers
Posts: 867
Joined: Fri Mar 03, 2017 9:05 am
Reputation: 696

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by zachillios »

RedTear09 wrote:
Wed Dec 05, 2018 5:31 am
Been playing around with Additem function. Will it bug out the game if I spawn and have items like the hollows before actually acquiring them?
Nope. Just make sure you add the weapons too.

User avatar
SunBeam
Administration
Administration
Posts: 4765
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4403

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by SunBeam »

^ I think the right-click weapon attack doesn't do any damage. Might've been due to not having added the weapon itself, just the hollows.. can you confirm?

User avatar
Cielos
RCE Fanatics
RCE Fanatics
Posts: 833
Joined: Fri Mar 03, 2017 4:35 am
Reputation: 1795

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by Cielos »

SunBeam wrote:
Mon Dec 03, 2018 7:53 pm
I got that :P Want the camera, sin/cos, player coords, etc.? See attached table.
  • CollisionCylinder -> X,Y,Z (player)
  • DSStateCamera -> MovieSceneFloatSection_3 -> X,Y,Z (camera)
Rotators are in DSStateCamera; check that offset I listed; it's 1.00 when rotate further left-back, etc.


Darksiders3-Win64-Shipping.CT


Meanwhile: viewtopic.php?p=70654#p70654 :D
I've just checked the table.

the vectors are off.
e.g.:
for "Rotators (check here)", when I face north horizon, value is close to 1, which means its "pointing" to west when you're facing north horizontally. that means it could be the 2nd element for the 2d normalized vector.
but when I start tilting the cam downwards, it start to decreasing, it behaves like the x/y elements of the 3d normalized vector and start decreasing.
but, again, when I look straight down above the character, the value should be almost 0 (because I can literally look at the top of the head) if it's the x/y elements of the 3d nv; instead it stops at around 0.77.
"Rotators (check here)"-4 reacts in a similar faction when moving the cam with mouse (which it looks like the 1st element for the 2d nv in terms on direction, but it could be affected by Z like the x/y elements of the 3d nv which didn't exhausted the -1 to 1 range).

I looked around the place, there are some "un-nomalized" vectors, but when they are dealing with the Z, it's always stop at +-80, while it should be near +-90 (again, because I can look right at the top of my head when look at the char from above, which should be very close to 90).

so, I stick with the opcodes I mentioned on the last post, and wrote the following to fetch both the 3d and 2d nv from it:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>4554</ID>
      <Description>"NVs fetch"</Description>
      <LastState Activated="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(someNVWritesAOB,Darksiders3-Win64-Shipping.exe,0F 28 ** ** ** ** ** 41 0F 11 ** ** ** ** ** 0F 28 ** ** ** ** ** 41)
registersymbol(someNVWritesAOB)

label(aNV3)
registersymbol(aNV3)
label(aNV2)
registersymbol(aNV2)

alloc(newmem,2048,someNVWritesAOB) //"Darksiders3-Win64-Shipping.exe"+16D1A37)
label(returnhere)
label(originalcode_nmfetch)
registersymbol(originalcode_nmfetch)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
push rbx

db 49 8D 98
readmem(someNVWritesAOB+b,4)
//lea rbx,[r8+280]

mov rax,aNV3
movss xmm0,[rbx+c]
movss [rax],xmm0
movss xmm0,[rbx+1c]
movss [rax+4],xmm0
movss xmm0,[rbx+2c]
movss [rax+8],xmm0

mov rax,aNV2
movss xmm0,[rbx]
divss xmm0,[rax-4]
movss [rax],xmm0
movss xmm0,[rbx+10]
divss xmm0,[rax-4]
movss [rax+4],xmm0

pop rbx
pop rax

originalcode_nmfetch:
readmem(someNVWritesAOB,7)
//movaps xmm0,[rdx+000001E0]

exit:
jmp returnhere

///
aNV3:
dq 0
dd 0
dd (float)1
dd (float)1.2
aNV2:
dq 0
dd (float)1
dd (float)1
///

someNVWritesAOB: //"Darksiders3-Win64-Shipping.exe"+16D1A37:
jmp newmem
nop
nop
returnhere:


 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
someNVWritesAOB: //"Darksiders3-Win64-Shipping.exe"+16D1A37:
readmem(originalcode_nmfetch,7)
//db 0F 28 82 E0 01 00 00
//Alt: movaps xmm0,[rdx+000001E0]
unregistersymbol(originalcode_nmfetch)

unregistersymbol(aNV3)
unregistersymbol(aNV2)
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4555</ID>
          <Description>"aNV3"</Description>
          <LastState Value="" RealAddress="1457C006D"/>
          <VariableType>Array of byte</VariableType>
          <ByteLength>0</ByteLength>
          <Address>aNV3</Address>
          <CheatEntries>
            <CheatEntry>
              <ID>4558</ID>
              <Description>""</Description>
              <LastState Value="0.1725046337" RealAddress="1457C006D"/>
              <VariableType>Float</VariableType>
              <Address>+0</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>4556</ID>
              <Description>""</Description>
              <LastState Value="0.02013435028" RealAddress="1457C0071"/>
              <VariableType>Float</VariableType>
              <Address>+4</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>4557</ID>
              <Description>""</Description>
              <LastState Value="-0.9848029017" RealAddress="1457C0075"/>
              <VariableType>Float</VariableType>
              <Address>+8</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>4559</ID>
          <Description>"aNV2"</Description>
          <LastState Value="" RealAddress="1457C0081"/>
          <VariableType>Array of byte</VariableType>
          <ByteLength>0</ByteLength>
          <Address>aNV2</Address>
          <CheatEntries>
            <CheatEntry>
              <ID>4560</ID>
              <Description>""</Description>
              <LastState Value="-0.1151340753" RealAddress="1457C0081"/>
              <VariableType>Float</VariableType>
              <Address>+0</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>4561</ID>
              <Description>""</Description>
              <LastState Value="0.9864315987" RealAddress="1457C0085"/>
              <VariableType>Float</VariableType>
              <Address>+4</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
compared to the coords from your table, they should be ready to be applied to the coord straight away.

now I have the delta ready (and the coords ready as well thanks to you~) for a quick no-clip script, but I suspect the delta is only applicable for keyboard+mouse, as they are located near the walk toggle flag for k+m. so making a good old no-clip script now would means it's only k+m exclusive, while I assume yours can be used with controllers as well? (I just watched the youtube from your post, but I forgot to actually just activate the script from your table to try it myself.......... .. .. .. .....)
anyway, I'll just leave the info here for now should you want to integrate them for the fly console command, in case you're still working on it.
let me know if you're getting bored with it already and I'll make a cheap no-clip for k+m for the time being....
(or maybe you have a refined fly console command ready for testing already as I'm typing.... :wub: )

///
going back to game now. got lost for an hour after fighting lust, as I teleport out from the boss room because I didn't realize the jump ability can stick me to the wall and thought this boss room is a dead end, and I kept bumping in the hand of the big lake monster at a new path I found from the other way around, where the sin indicator on the compass is pointing at, and travel all around the map for almost an hour...

P.S. is the site under attack again? or you guys are testing something? it's somewhat un-stable just now and I have to re-type almost the whole thing...

User avatar
SunBeam
Administration
Administration
Posts: 4765
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4403

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by SunBeam »

^ STN said there's heavy traffic. No word on DDoS-ing :)

Keep at it.

I went back to Odyssey to check for what I needed to apply to the coords. What my plan is/was is to get the Cartesian coordinates in radians and apply sin/cos to them.. then apply the transformation to character's XYZ. That will give you the movement vector in the direction your mouse is pointing. Simply NOP-ing (at first) the movement writer and testing this out in a spot where there aren't any AIs should work (UE4 controls movement in a certain radius; if no AI nearby or spawned, the engine handles only your player's controller; so it should be safe). Then, if working, I will add a filter in the write_movement_coords function to stop updating just my character's XYZ. Which should work nicely (can use PlayerController or APawn pointers for that filter).

What I think you see at "Rotators" location is the already transformed values; they range from -1 to 1, if you rotate the camera; regardless of heading (NWSE). Yes, we're missing Z pitch, that's certain.

Yes, still on it. Takes a bit to get some free time to progress ;) I wanna do this as it will become the base for other UE4 games ;)

And by all means post your version ;) I, for one, don't use controllers; just mouse + keyboard.

BR,
Sun

P.S.: I'll also look into the "5" case for movement (EPhysics IsFlying;) to see if I can adjust movement speed while flying. Although I think you can do it directly in your no-clip script ;)

zachillios
Table Makers
Table Makers
Posts: 867
Joined: Fri Mar 03, 2017 9:05 am
Reputation: 696

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by zachillios »

SunBeam wrote:
Wed Dec 05, 2018 7:30 am
^ I think the right-click weapon attack doesn't do any damage. Might've been due to not having added the weapon itself, just the hollows.. can you confirm?
Yes. Once you spawn the weapon it works as intended.

User avatar
Cielos
RCE Fanatics
RCE Fanatics
Posts: 833
Joined: Fri Mar 03, 2017 4:35 am
Reputation: 1795

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by Cielos »

SunBeam wrote:
Thu Dec 06, 2018 10:13 am
^ STN said there's heavy traffic. No word on DDoS-ing :)
seems it's still "heavy traffic" now, so I'm typing in notepad first this time...
SunBeam wrote:
Thu Dec 06, 2018 10:13 am
...
Simply NOP-ing (at first) the movement writer and testing this out in a spot where there aren't any AIs should work (UE4 controls movement in a certain radius; if no AI nearby or spawned, the engine handles only your player's controller; so it should be safe).
...
thanks for the heads up, implemented the player filter right away when I made the script..
SunBeam wrote:
Thu Dec 06, 2018 10:13 am
...
What I think you see at "Rotators" location is the already transformed values; they range from -1 to 1, if you rotate the camera; regardless of heading (NWSE). Yes, we're missing Z pitch, that's certain.
...
um... maybe I'm misunderstanding you, or you misunderstood me. anyway, what I meant was, this value won't be affected by the cam Z changes if it's for the 2d rotation, so it must be part of the 3d nv. but it doesn't exhausted the -1 to 1 range when looking up/down; so I can't use it as part of the 3d nv, as the movement would be inaccurate (while moving towards, or back away from, where the camera is facing when pressing W/S, the direction would be slightly off to the horizon), and I can't use it as the 2d nv is the movement would be slowed down if the camera is not facing the horizon.
for reference, take a look at the values aNV3 and aNV2 in the script.
SunBeam wrote:
Thu Dec 06, 2018 10:13 am
...
Yes, still on it. Takes a bit to get some free time to progress ;) I wanna do this as it will become the base for other UE4 games ;)
...
that would be great! it's nice to have the no-clip ready easily (or easier) in the console command when you crack other UE4 games~
SunBeam wrote:
Thu Dec 06, 2018 10:13 am
...
And by all means post your version ;) I, for one, don't use controllers; just mouse + keyboard.
...
here it is:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>4568</ID>
      <Description>"no-clip (Home+PageUp:ON, Home+PageDown:OFF)"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <Color>FF0000</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
define(noclipbasespeed,(float)10)
define(fasterkeynoclipspeedmultiplier,(float)3)
define(slowerkeynoclipspeedmultiplier,(float)0.5)

alloc(values_noclip,1024,"Darksiders3-Win64-Shipping.exe")
label(dNoClipSpeedMultiplier)
registersymbol(dNoClipSpeedMultiplier)
label(dXF)
registersymbol(dXF)
label(dYF)
registersymbol(dYF)
label(dZF)
registersymbol(dZF)

///*****************************************************///
values_noclip:
dNoClipSpeedMultiplier:
dd (float)1
dXF:
dd 0
dYF:
dd 0
dZF:
dd 0

///*****************************************************///
aobscanmodule(someNVWritesAOB,Darksiders3-Win64-Shipping.exe,0F 28 ** ** ** ** ** 41 0F 11 ** ** ** ** ** 0F 28 ** ** ** ** ** 41)
registersymbol(someNVWritesAOB)

label(aNV3)
registersymbol(aNV3)
label(aNV2)
registersymbol(aNV2)

alloc(newmem,2048,someNVWritesAOB) //"Darksiders3-Win64-Shipping.exe"+16D1A37)
label(returnhere)
label(originalcode_nmfetch)
registersymbol(originalcode_nmfetch)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
push rbx

db 49 8D 98
readmem(someNVWritesAOB+b,4)
//lea rbx,[r8+280]

mov rax,aNV3
movss xmm0,[rbx+c]
movss [rax],xmm0
movss xmm0,[rbx+1c]
movss [rax+4],xmm0
movss xmm0,[rbx+2c]
movss [rax+8],xmm0

mov rax,aNV2
movss xmm0,[rbx]
divss xmm0,[rax-4]
movss [rax],xmm0
movss xmm0,[rbx+10]
divss xmm0,[rax-4]
movss [rax+4],xmm0

pop rbx
pop rax

originalcode_nmfetch:
readmem(someNVWritesAOB,7)
//movaps xmm0,[rdx+000001E0]

exit:
jmp returnhere

///
aNV3:
dq 0
dd 0
dd (float)1
dd (float)1.2
aNV2:
dq 0
dd (float)1
dd (float)1
///

someNVWritesAOB: //"Darksiders3-Win64-Shipping.exe"+16D1A37:
jmp newmem
nop
nop
returnhere:

///*****************************************************///
aobscanmodule(someCoordsWriteAOB,Darksiders3-Win64-Shipping.exe,0F 29 ** ** ** ** ** 0F 29 ** ** ** ** ** E8 ** ** ** ** 0F 28 ** ** ** ** ** ** 0F 28)
registersymbol(someCoordsWriteAOB)

label(pPlayerCoords)
registersymbol(pPlayerCoords)

alloc(newmem2,2048,someCoordsWriteAOB) //"Darksiders3-Win64-Shipping.exe"+12A0D0C)
label(returnhere2)
label(originalcode2_freezecoord_noclipmain)
registersymbol(originalcode2_freezecoord_noclipmain)
label(exit2)

newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
mov rax,LocalPlayer
mov rax,[rax]
test rax,rax
jz end2
mov rax,[rax+30]
cmp [rax+348],r13
jne end2
mov rax,pPlayerCoords
mov [rax],rbx

//store registers, xmms
//push rax
push r8
push r9
sub rsp,10
movdqu dqword [rsp],xmm3
xorps xmm3,xmm3
sub rsp,10
movdqu dqword [rsp],xmm4
xorps xmm4,xmm4

//freeze coord
readmem(someCoordsWriteAOB,1)
db 28
readmem(someCoordsWriteAOB+2,5)
//movaps xmm7,[rbx+190]

//do y
//get delta y
mov r8,dYF
test r8,r8
jz @f
movss xmm4,[r8]
shufps xmm4,xmm4,c0 //broadcast except 4th

//apply speed
mov eax,noclipbasespeed
movd xmm3,eax
shufps xmm3,xmm3,00 //broadcast
mulps xmm4,xmm3
mov rax,dNoClipSpeedMultiplier
movss xmm3,[rax]
shufps xmm3,xmm3,c0 //broadcast except 4th
mulps xmm4,xmm3

//apply vector
mov r9,aNV3
test r9,r9
jz @f
movups xmm3,[r9]
mulps xmm4,xmm3

//update new coord
addps xmm7,xmm4

//do x
//get delta x
mov r8,dXF
test r8,r8
jz @f
movss xmm4,[r8]
shufps xmm4,xmm4,e0 //copy to 2nd

//apply speed
mov eax,noclipbasespeed
movd xmm3,eax
shufps xmm3,xmm3,e0 //copy to 2nd
mulps xmm4,xmm3
mov rax,dNoClipSpeedMultiplier
movss xmm3,[rax]
shufps xmm3,xmm3,00 //broadcast
mulps xmm4,xmm3

//apply vector
mov r9,aNV2
test r9,r9
jz @f
movups xmm3,[r9]
mulps xmm4,xmm3

//update new coord
addps xmm7,xmm4

//do z
//get z direction
mov r8,dZF
test r8,r8
jz @f
movss xmm4,[r8]
shufps xmm4,xmm4,c6 //place z direction to 3rd element

//apply speed
mov eax,noclipbasespeed
movd xmm3,eax
shufps xmm3,xmm3,00
mulps xmm4,xmm3
mov rax,dNoClipSpeedMultiplier
movss xmm3,[rax]
shufps xmm3,xmm3,00 //broadcast
mulps xmm4,xmm3

//update new coord
addps xmm7,xmm4

@@:
//restore registers, xmms
movdqu xmm4,dqword [rsp]
add rsp,10
movdqu xmm3,dqword [rsp]
add rsp,10
pop r9
pop r8
//pop rax

end2:
pop rax

originalcode2_freezecoord_noclipmain:
readmem(someCoordsWriteAOB,7)
//movaps [rbx+00000190],xmm7

exit2:
jmp returnhere2

///
pPlayerCoords:
///

someCoordsWriteAOB: //"Darksiders3-Win64-Shipping.exe"+12A0D0C:
jmp newmem2
nop
nop
returnhere2:

///*****************************************************///

///*****************************************************///
label(bEndThread_Darksiders3_noClip_keylistener_mem)
registersymbol(bEndThread_Darksiders3_noClip_keylistener_mem)

alloc(Darksiders3_noClip_keylistener_mem,2048,"Darksiders3-Win64-Shipping.exe")
registersymbol(Darksiders3_noClip_keylistener_mem)
createthread(Darksiders3_noClip_keylistener_mem)
label(keylistenerstart)
label(keylistenerend)
label(keylistenerexit)
label(dTempXF)
label(dTempYF)
label(dTempZF)
label(dTempNoClipSpeedMultiplier)
label(dNoClipSpeedMultiplierMod1)
registersymbol(dNoClipSpeedMultiplierMod1)
label(dNoClipSpeedMultiplierMod2)
registersymbol(dNoClipSpeedMultiplierMod2)

Darksiders3_noClip_keylistener_mem:
sub rsp,28

keylistenerstart:
//do noclip speed x?
mov dword ptr [dTempNoClipSpeedMultiplier],(float)1

mov rcx,10 //SHIFT key
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dNoClipSpeedMultiplierMod1
mov ecx,[rbx]
mov rbx,dTempNoClipSpeedMultiplier
mov [rbx],ecx

@@:
mov rcx,14 //CAPS LOCK key
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dNoClipSpeedMultiplierMod2
mov ecx,[rbx]
mov rbx,dTempNoClipSpeedMultiplier
mov [rbx],ecx

@@:
mov dword ptr [dTempXF],0
mov dword ptr [dTempYF],0
mov dword ptr [dTempZF],0

doyf:
mov rcx,'W'
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dTempYF
mov dword ptr [rbx],(float)1
jmp doxf

@@:
mov rcx,'S'
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dTempYF
mov dword ptr [rbx],(float)-1
jmp doxf

doxf:
mov rcx,'A'
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dTempXF
mov dword ptr [rbx],(float)-1
mov rdx,dTempYF
cmp dword ptr [rdx],0
je @f
mov rcx,dTempNoClipSpeedMultiplier
fld dword ptr [rbx]
fmul dword ptr [rcx+4]
fstp dword ptr [rbx]
fld dword ptr [rdx]
fmul dword ptr [rcx+4]
fstp dword ptr [rdx]
jmp dozf

@@:
mov rcx,'D'
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dTempXF
mov dword ptr [rbx],(float)1
mov rdx,dTempYF
cmp dword ptr [rdx],0
je @f
mov rcx,dTempNoClipSpeedMultiplier
fld dword ptr [rbx]
fmul dword ptr [rcx+4]
fstp dword ptr [rbx]
fld dword ptr [rdx]
fmul dword ptr [rcx+4]
fstp dword ptr [rdx]
jmp dozf

dozf:
mov rcx,20 //SPACEBAR
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dTempZF
mov dword ptr [rbx],(float)1
jmp keylistenerend

@@:
mov rcx,'E'
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
cmp ax,1
jne @f
mov rbx,dTempZF
mov dword ptr [rbx],(float)-1
jmp keylistenerend

keylistenerend:
mov rbx,dTempNoClipSpeedMultiplier
mov ecx,[rbx]
mov rbx,dNoClipSpeedMultiplier
mov [rbx],ecx
mov rbx,dTempXF
mov rdx,dXF
mov ecx,[rbx]
mov [rdx],ecx
mov rbx,dTempYF
mov rdx,dYF
mov ecx,[rbx]
mov [rdx],ecx
mov rbx,dTempZF
mov rdx,dZF
mov ecx,[rbx]
mov [rdx],ecx
mov rcx,#100
call Sleep
cmp dword ptr [bEndThread_Darksiders3_noClip_keylistener_mem],1
jne keylistenerstart

keylistenerexit:
add rsp,28
mov dword ptr [bEndThread_Darksiders3_noClip_keylistener_mem],2
ret

///
bEndThread_Darksiders3_noClip_keylistener_mem:
dd 0
dTempXF:
dd 0
dTempYF:
dd 0
dTempZF:
dd 0
dTempNoClipSpeedMultiplier:
dd (float)1
dd (float)0.5
dNoClipSpeedMultiplierMod1: //shift key pressed speed
dd fasterkeynoclipspeedmultiplier
dNoClipSpeedMultiplierMod2: //caps key pressed speed
dd slowerkeynoclipspeedmultiplier
///




[DISABLE]
//code from here till the end of the code will be used to disable the cheat
//obtained from SubBeam's ACS script - start//
{$lua}

if( syntaxcheck == false ) then --actual execution
  local starttime = getTickCount()

if readInteger( "bEndThread_Darksiders3_noClip_keylistener_mem" ) == 0 then --could be 2 already
  writeInteger( "bEndThread_Darksiders3_noClip_keylistener_mem", 1 ) --tell the thread to kill itself
end

while( getTickCount() &lt; starttime + 1000 ) and ( readInteger( "bEndThread_Darksiders3_noClip_keylistener_mem" ) ~=2 ) do --wait till it has finished
  sleep( 20 )
end

if( getTickCount() &gt; starttime + 1000 ) then --could happen when the window is shown
  showMessage( 'Disabling the thread failed!' )
  error( 'Thread disabling failed!' )
end
  sleep( 1 )
end

{$asm}
//obtained from SubBeam's ACS script - end//

//bEndThread_Darksiders3_noClip_keylistener_mem:
//dd 1

///*****************************************************///
dealloc(newmem)
someNVWritesAOB: //"Darksiders3-Win64-Shipping.exe"+16D1A37:
readmem(originalcode_nmfetch,7)
//db 0F 28 82 E0 01 00 00
//Alt: movaps xmm0,[rdx+000001E0]
unregistersymbol(originalcode_nmfetch)

///*****************************************************///
unregistersymbol(aNV3)
unregistersymbol(aNV2)
dealloc(newmem2)
someCoordsWriteAOB: //"Darksiders3-Win64-Shipping.exe"+12A0D0C:
readmem(originalcode2_freezecoord_noclipmain,7)
//db 0F 29 BB 90 01 00 00
//Alt: movaps [rbx+00000190],xmm7
unregistersymbol(originalcode2_freezecoord_noclipmain)

unregistersymbol(pPlayerCoords)

///*****************************************************///
dealloc(values_noclip)
unregistersymbol(values_noclip)
unregistersymbol(dNoClipSpeedMultiplier)
unregistersymbol(dXForce)
unregistersymbol(dYForce)
unregistersymbol(dZForce)

///*****************************************************///
unregistersymbol(bEndThread_Darksiders3_noClip_keylistener_mem)

dealloc(Darksiders3_noClip_keylistener_mem)
unregistersymbol(Darksiders3_noClip_keylistener_mem)
unregistersymbol(dNoClipSpeedMultiplierMod1)
unregistersymbol(dNoClipSpeedMultiplierMod2)

///*****************************************************///
</AssemblerScript>
      <Hotkeys>
        <Hotkey>
          <Action>Activate</Action>
          <Keys>
            <Key>36</Key>
            <Key>33</Key>
          </Keys>
          <ID>0</ID>
        </Hotkey>
        <Hotkey>
          <Action>Deactivate</Action>
          <Keys>
            <Key>36</Key>
            <Key>34</Key>
          </Keys>
          <ID>1</ID>
        </Hotkey>
      </Hotkeys>
      <CheatEntries>
        <CheatEntry>
          <ID>4569</ID>
          <Description>"CapsLock: Slower"</Description>
          <LastState Value="" RealAddress="00000000"/>
          <Color>808080</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>4570</ID>
          <Description>"Shift: Faster"</Description>
          <LastState Value="" RealAddress="00000000"/>
          <Color>808080</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
- press Home+PageUp to activate, Home+PageDown to deactivate.
- when activated, keyboard+mouse to move around, SPACEBAR to move straight up, E to move straight down.
- hold CapsLock to move slower, Shift to move faster.
- note the if you're on the ground when you activate the script, press E won't move you down right away, just move around when you press E, or just make sure you're not on the ground first.
- also the speed varies when you're near the ground.

both the last2 points are because I just hook the "no-clip main" on the coord writing opcode. and the engine won't write unless it's being changed, either by the game re-actions (falling, getting hit, re-calculate z when moving on slop, ect.) or by moving the character manually, so the writing times of the new nolcip coords varies on different situation.
I tried to hook the "no-clip main" on 2 other place that would read the coord and using a separate thread, but the model placement won't be updated if the game is not detecting any changes of the coord and/or there's a changing of where the character is facing.
i.e. the palyer coord is moved when you move straight up/down, or just keep moving straight forward, but the player model stay at the same place, unless keep changes the FACING of the CHARACTER.
and I'm lazy to trace through them to see which hook is better, so I settle with the current hook, where we freeze the coord.

///
on a side note, have you examined the plot or progress related structures? I messed up my savegame when fighting the Gluttony boss.
when fighting its second stage underwater, I purposely swim into its mouth to see what would happened, without the knowledge of it's a script kill, and my undead script prevent me from dying, and the boss turns to green dust immediately like it's dead, and I saw the auto-save icon on the bottom-right of the screen.
...when I reload the save, I spawned at a teleport points miles away, and when I return to the boss I can only fight its first stage on the floor above, and upon killing it, nothing happens........

I've restarted the game anyway, just that if you have the info already, though a very long shot, I might still continue the story from there by reviving the boss somehow by reverse the plot/progress a little bit or something...

that's it for now.
waiting for the proper fly/ghost console command~

EDIT:
forgot to mention, you need to activate [ Enable ] from SunBeam's table first before you can use this script.

EDIT2:
fixed a typo above (not A/D, but W/S)

User avatar
SunBeam
Administration
Administration
Posts: 4765
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4403

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by SunBeam »

Awesome implementation ;) Forgot to mention you can turn off collisions via "Movement (OR 0x40)" in the table ;) Just OR the value with 0x40 :P

L.E.#1: Ah, crap, the game updated; no wonder I see "command not recognized all the time". Gotta patch the .exe again :P

L.E.#2: Table updated; included Cielos' script ;)

Darksiders3-Win64-Shipping.CT
1.4
(37.01 KiB) Downloaded 102 times

RedTear09
Novice Cheater
Novice Cheater
Posts: 17
Joined: Wed Oct 18, 2017 7:42 am
Reputation: 0

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by RedTear09 »

Added both Hollows and the weapons and everything seems fine. What's the item code for the crossblade?

User avatar
SunBeam
Administration
Administration
Posts: 4765
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4403

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by SunBeam »

Ctrl+F in the ObjectsDump.txt. The one with _C.

Code: Select all

BlueprintGeneratedClass Item_Crossblade.Item_Crossblade_C                                            0x000001D8B285DF00

RedTear09
Novice Cheater
Novice Cheater
Posts: 17
Joined: Wed Oct 18, 2017 7:42 am
Reputation: 0

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by RedTear09 »

I appreciate the quick reply :P. Tried "Item_Crossblade.Item_Crossblade_C", Crossblade is in the inventory and as far as I can tell upgradable but unusable also missing from Fury's back. Maybe it's like the Hollows, it may need another "item" to make it work?

Sylar2k18
Noobzor
Noobzor
Posts: 14
Joined: Sun Nov 05, 2017 5:57 am
Reputation: 0

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by Sylar2k18 »

how use fly ?

User avatar
Empress_Ravenna
Expert Cheater
Expert Cheater
Posts: 380
Joined: Mon Oct 09, 2017 11:42 pm
Reputation: 51

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by Empress_Ravenna »

this game.. was SO AWESOME!... when i Beat it.. dont forget to wait for the credits to see a cool video at the end... all Imma say.. Darksiders 3 <3
Spoiler
also you get the crossblade after a few of the 7 Sins are dead..

Sylar2k18
Noobzor
Noobzor
Posts: 14
Joined: Sun Nov 05, 2017 5:57 am
Reputation: 0

Re: Darksiders 3 - Unreal Engine 4 Console, Dumper and more..

Post by Sylar2k18 »

LE: summon not recognized , why ?

Post Reply

Who is online

Users browsing this forum: Baidu [Spider], Bing [Bot], Google Adsense [Bot], kanifeli, LIOBOSS, Siuxter, YandexBot