Daemon X Machina - 1.00 - +21 - Update 5

Upload your cheat tables here (No requests)
acecel
Expert Cheater
Expert Cheater
Posts: 967
Joined: Sun Apr 09, 2017 1:32 am
Reputation: 163

Re: Daemon X Machina - 1.00 - +21 - Update 5

Post by acecel »

A small script that allow to edit credits and buy items for free (also works for crafting items i think). Made for version 1.0.6 of the game.
To edit credits you need to buy something first. You can't buy something if you don't have the credits for it even if you activated "for free" option.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>217340</ID>
      <Description>"Credits Editor &amp; Buy for Free  "</Description>
      <Options moHideChildren="1" moManualExpandCollapse="1" moDeactivateChildrenAsWell="1"/>
      <LastState Activated="1"/>
      <Color>FFFF00</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : DXM-Win64-Shipping.exe
  Version: 
  Date   : 2024-01-06
  Author : acecel

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(aob_buy,DXM-Win64-Shipping.exe,89 83 90 00 00 00 B0 01 48 83) // should be unique
alloc(newmem,$1000,aob_buy)

label(code)
label(return)

alloc(pGold,$8)
registersymbol(pGold)

alloc(buyForFree,$2)
registersymbol(buyForFree)

pGold:
dd 0

buyForFree:
dd 0

newmem:
  push rdx
      lea rdx,[rbx+00000090]
      mov [pGold],rdx
  pop rdx

code:
  cmp [buyForFree],1
  je return
  mov [rbx+00000090],eax
  jmp return

aob_buy:
  jmp newmem
  nop

return:
registersymbol(aob_buy)

[DISABLE]

aob_buy:
  db 89 83 90 00 00 00

unregistersymbol(buyForFree)
unregistersymbol(pGold)
unregistersymbol(aob_buy)
dealloc(buyForFree)
dealloc(pGold)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+AD

DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+8B: 33 D2              - xor edx,edx
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+8D: 33 C9              - xor ecx,ecx
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+8F: 48 89 44 24 20     - mov [rsp+20],rax
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+94: E8 77 B0 71 00     - call DXM-Win64-Shipping.FMsg::Logf_InternalImpl
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+99: 8B 0D 7D 89 46 02  - mov ecx,[DXM-Win64-Shipping.UTTLBPUtilityLibrary::PlayerPossessionMoneyMax]
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+9F: 89 8B 90 00 00 00  - mov [rbx+00000090],ecx
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+A5: 32 C0              - xor al,al
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+A7: 48 83 C4 30        - add rsp,30
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+AB: 5B                 - pop rbx
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+AC: C3                 - ret 
// ---------- INJECTING HERE ----------
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+AD: 89 83 90 00 00 00  - mov [rbx+00000090],eax
// ---------- DONE INJECTING  ----------
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+B3: B0 01              - mov al,01
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+B5: 48 83 C4 30        - add rsp,30
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+B9: 5B                 - pop rbx
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+BA: C3                 - ret 
DXM-Win64-Shipping.UTTLSaveGameObject::SubMoney+BB: CC                 - int 3 
DXM-Win64-Shipping.exe.text+C8577C: CC                 - int 3 
DXM-Win64-Shipping.exe.text+C8577D: CC                 - int 3 
DXM-Win64-Shipping.exe.text+C8577E: CC                 - int 3 
DXM-Win64-Shipping.exe.text+C8577F: CC                 - int 3 
DXM-Win64-Shipping.ATTLRifleRangeLevelScriptActor::SwitchLevelVisibility: 48 8B C4           - mov rax,rsp
}
</AssemblerScript>
      <Hotkeys>
        <Hotkey>
          <Action>Activate</Action>
          <Keys>
            <Key>17</Key>
            <Key>106</Key>
          </Keys>
          <ID>0</ID>
        </Hotkey>
        <Hotkey>
          <Action>Activate</Action>
          <Keys>
            <Key>18</Key>
            <Key>106</Key>
          </Keys>
          <ID>1</ID>
        </Hotkey>
      </Hotkeys>
      <CheatEntries>
        <CheatEntry>
          <ID>217348</ID>
          <Description>"Buy an item to update the Credits value"</Description>
          <LastState Value="" RealAddress="00000000"/>
          <Color>008080</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>217350</ID>
          <Description>"You still need to have enough credits to buy the item"</Description>
          <LastState Value="" RealAddress="00000000"/>
          <Color>008080</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>217349</ID>
          <Description>"-------"</Description>
          <LastState Value="" RealAddress="00000000"/>
          <Color>808080</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>217341</ID>
          <Description>"Buy for Free ?    [Ctrl *] to Enable   [Alt *] to Disable"</Description>
          <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:Disabled
1:Enabled
</DropDownList>
          <LastState Value="0" RealAddress="7FF607431008"/>
          <ShowAsSigned>0</ShowAsSigned>
          <Color>C080FF</Color>
          <VariableType>Byte</VariableType>
          <Address>buyForFree</Address>
          <Hotkeys>
            <Hotkey>
              <Action>Set Value</Action>
              <Keys>
                <Key>17</Key>
                <Key>106</Key>
              </Keys>
              <Value>1</Value>
              <ID>0</ID>
              <ActivateSound>Activate</ActivateSound>
            </Hotkey>
            <Hotkey>
              <Action>Set Value</Action>
              <Keys>
                <Key>18</Key>
                <Key>106</Key>
              </Keys>
              <Value>0</Value>
              <ID>1</ID>
              <ActivateSound>Deactivate</ActivateSound>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>217351</ID>
          <Description>"-------"</Description>
          <LastState Value="" RealAddress="00000000"/>
          <Color>808080</Color>
          <GroupHeader>1</GroupHeader>
        </CheatEntry>
        <CheatEntry>
          <ID>217347</ID>
          <Description>"Credits"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>pGold</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>


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

Post Reply

Who is online

Users browsing this forum: AmazonBot, DotBot, Google [Bot], Google Adsense [Bot], haiman00, jonaaa, Maaka