[REQUEST] SWORD ART ONLINE Fractured Daydream

Ask about cheats/tables for single player games here
Shaqinthebox
Noobzor
Noobzor
Posts: 5
Joined: Fri Oct 04, 2024 10:46 am
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by Shaqinthebox »

Does anyone know how to change the damage on weapons so it can be taken online? I’m not looking to one shot but I do want to change some options, any information would help, thank you

User avatar
Izetta
Noobzor
Noobzor
Posts: 11
Joined: Sun Feb 18, 2024 1:15 am
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by Izetta »

Shaqinthebox wrote:
Mon Oct 07, 2024 8:14 am
Does anyone know how to change the damage on weapons so it can be taken online? I’m not looking to one shot but I do want to change some options, any information would help, thank you
Just set the enhancement value of the weapon to 99. I wouldn't recommend it, because it will result in an unusual result.

strawberry
Noobzor
Noobzor
Posts: 14
Joined: Wed Oct 02, 2024 1:11 pm
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by strawberry »

Could you please tell me in detail how to strengthen weapons?
I'd like to change the options on my equipment.

User avatar
Rienfleche
Expert Cheater
Expert Cheater
Posts: 147
Joined: Sun May 15, 2022 6:50 am
Reputation: 55

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by Rienfleche »

MrViZZion wrote:
Sun Oct 06, 2024 11:00 pm
dallezh wrote:
Fri Oct 04, 2024 9:52 pm
MrViZZion wrote:
Fri Oct 04, 2024 8:54 pm
FullCodes has released a massive trainer with all options you can require, check it here

viewtopic.php?t=31657
thats not gonna help when its a premium trainer.
its behind a paywall
The trainer is free, you can use hotkeys i.e keys on your keyboard
tested i can't activate it with hotkeys, all linked to go PRO

Shaqinthebox
Noobzor
Noobzor
Posts: 5
Joined: Fri Oct 04, 2024 10:46 am
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by Shaqinthebox »

Izetta wrote:
Mon Oct 07, 2024 10:48 am
Shaqinthebox wrote:
Mon Oct 07, 2024 8:14 am
Does anyone know how to change the damage on weapons so it can be taken online? I’m not looking to one shot but I do want to change some options, any information would help, thank you
Just set the enhancement value of the weapon to 99. I wouldn't recommend it, because it will result in an unusual result.
I’ve used cheat engine to change col etc, but I’m still a newbie as you will so, how would I go about finding the weapon Enhancement?

eizenrose
What is cheating?
What is cheating?
Posts: 2
Joined: Mon Mar 18, 2024 4:05 pm
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by eizenrose »

OPCOXE wrote:
Sun Oct 06, 2024 7:14 pm
So I took half an hour to do some of the obvious things that I could do fast.
Here are some scripts :
NOTE 1 : Be aware that they are not perfect
NOTE 2 : I use spoiler to better visibility and code for copy/paste
NOTE 3 : The Character Exp Multiplier is a bit bugged and I didn't found why yet, it will show more than 1000Exp then the level will be added on the next run
Score Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Score Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(ScoreMultiplierAOB,SAOFD.exe,44 01 40 04 48 8B 5C 24 38) // should be unique
alloc(newmem,$1000,ScoreMultiplierAOB)

label(originalcode)
label(return)

label(ScoreMultiplier)
registersymbol(ScoreMultiplier)

newmem:
  push rax
  mov rax,[ScoreMultiplier]
  mul r8d
  mov r8d,rax
  pop rax

originalcode:
  add [rax+04],r8d
  mov rbx,[rsp+38]
  jmp return

ScoreMultiplier:
  dq #1

ScoreMultiplierAOB:
  jmp newmem
  nop 4
return:
registersymbol(ScoreMultiplierAOB)

[DISABLE]

ScoreMultiplierAOB:
  db 44 01 40 04 48 8B 5C 24 38

unregistersymbol(ScoreMultiplierAOB)
unregistersymbol(ScoreMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22D2E2B

SAOFD.exe+22D2E09: 41 8B D1        - mov edx,r9d
SAOFD.exe+22D2E0C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22D2E0F: E8 DC ED 89 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22D2E14: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22D2E17: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22D2E1C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22D2E20: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E25: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E29: 5F              - pop rdi
SAOFD.exe+22D2E2A: C3              - ret 
// ---------- INJECTING HERE ----------
SAOFD.exe+22D2E2B: 44 01 40 04     - add [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22D2E2F: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E34: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E38: 5F              - pop rdi
SAOFD.exe+22D2E39: C3              - ret 
SAOFD.exe+22D2E3A: CC              - int 3 
SAOFD.exe+22D2E3B: CC              - int 3 
SAOFD.exe+22D2E3C: CC              - int 3 
SAOFD.exe+22D2E3D: CC              - int 3 
SAOFD.exe+22D2E3E: CC              - int 3 
SAOFD.exe+22D2E3F: CC              - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4</ID>
          <Description>"Score Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Set Score Value

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Set Score Value"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(SetScoreValueAOB,SAOFD.exe,44 89 40 04 48 83 C4 20) // should be unique
alloc(newmem,$1000,SetScoreValueAOB)

label(originalcode)
label(return)

label(ScoreValueAOB)
registersymbol(ScoreValueAOB)

newmem:
  mov r8d,[ScoreValueAOB]
originalcode:
  mov [rax+04],r8d
  add rsp,20
  jmp return

ScoreValueAOB:
  dq #50000

SetScoreValueAOB:
  jmp newmem
  nop 3
return:
registersymbol(SetScoreValueAOB)

[DISABLE]

SetScoreValueAOB:
  db 44 89 40 04 48 83 C4 20

unregistersymbol(SetScoreValueAOB)
unregistersymbol(ScoreValueAOB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22F0770

SAOFD.exe+22F074C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22F074F: E8 9C 14 88 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22F0754: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22F0757: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22F075C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22F0760: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22F0765: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0769: 5F              - pop rdi
SAOFD.exe+22F076A: C3              - ret 
SAOFD.exe+22F076B: 48 8B 5C 24 38  - mov rbx,[rsp+38]
// ---------- INJECTING HERE ----------
SAOFD.exe+22F0770: 44 89 40 04     - mov [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22F0774: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0778: 5F              - pop rdi
SAOFD.exe+22F0779: C3              - ret 
SAOFD.exe+22F077A: CC              - int 3 
SAOFD.exe+22F077B: CC              - int 3 
SAOFD.exe+22F077C: CC              - int 3 
SAOFD.exe+22F077D: CC              - int 3 
SAOFD.exe+22F077E: CC              - int 3 
SAOFD.exe+22F077F: CC              - int 3 
SAOFD.exe+22F0780: 40 55           - push rbp
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3</ID>
          <Description>"Score Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreValueAOB</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Character Exp Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>6</ID>
      <Description>"Character Exp Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CharacterExpMultiplierAOB,SAOFD.exe,44 01 30 45 85 F6) // should be unique
alloc(newmem,$1000,CharacterExpMultiplierAOB)

label(originalcode)
label(return)

label(CharacterExpMultiplier)
registersymbol(CharacterExpMultiplier)

newmem:
  push rax
  mov rax,[CharacterExpMultiplier]
  mul r14d
  mov r14d,rax
  pop rax

originalcode:
  add [rax],r14d
  test r14d,r14d
  jmp return

CharacterExpMultiplier:
  dq #1

CharacterExpMultiplierAOB:
  jmp newmem
  nop
return:
registersymbol(CharacterExpMultiplierAOB)

[DISABLE]

CharacterExpMultiplierAOB:
  db 44 01 30 45 85 F6

unregistersymbol(CharacterExpMultiplierAOB)
unregistersymbol(CharacterExpMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+2026163

SAOFD.exe+2026141: 48 8B 08              - mov rcx,[rax]
SAOFD.exe+2026144: 48 8B 43 28           - mov rax,[rbx+28]
SAOFD.exe+2026148: 8B 10                 - mov edx,[rax]
SAOFD.exe+202614A: FF C2                 - inc edx
SAOFD.exe+202614C: E8 0F 50 07 00        - call SAOFD.exe+209B160
SAOFD.exe+2026151: 85 C0                 - test eax,eax
SAOFD.exe+2026153: 0F 8F 57 FF FF FF     - jg SAOFD.exe+20260B0
SAOFD.exe+2026159: 85 C0                 - test eax,eax
SAOFD.exe+202615B: 48 8B 43 30           - mov rax,[rbx+30]
SAOFD.exe+202615F: 44 0F 45 F5           - cmovne r14d,ebp
// ---------- INJECTING HERE ----------
SAOFD.exe+2026163: 44 01 30              - add [rax],r14d
// ---------- DONE INJECTING  ----------
SAOFD.exe+2026166: 45 85 F6              - test r14d,r14d
SAOFD.exe+2026169: 74 60                 - je SAOFD.exe+20261CB
SAOFD.exe+202616B: 48 8B 43 18           - mov rax,[rbx+18]
SAOFD.exe+202616F: 48 8D 54 24 28        - lea rdx,[rsp+28]
SAOFD.exe+2026174: 48 8B 0B              - mov rcx,[rbx]
SAOFD.exe+2026177: 44 89 7C 24 20        - mov [rsp+20],r15d
SAOFD.exe+202617C: 44 89 74 24 24        - mov [rsp+24],r14d
SAOFD.exe+2026181: 44 0F B6 00           - movzx r8d,byte ptr [rax]
SAOFD.exe+2026185: 48 8D B9 40 13 00 00  - lea rdi,[rcx+00001340]
SAOFD.exe+202618C: E8 4F 19 01 00        - call SAOFD.exe+2037AE0
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>7</ID>
          <Description>"Character Exp Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>CharacterExpMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
EDIT: You still need the EAC bypass and it won't work online (obviously)
if you have some free time could you do rank exp too?

User avatar
Izetta
Noobzor
Noobzor
Posts: 11
Joined: Sun Feb 18, 2024 1:15 am
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by Izetta »

eizenrose wrote:
Mon Oct 07, 2024 4:54 pm
OPCOXE wrote:
Sun Oct 06, 2024 7:14 pm
So I took half an hour to do some of the obvious things that I could do fast.
Here are some scripts :
NOTE 1 : Be aware that they are not perfect
NOTE 2 : I use spoiler to better visibility and code for copy/paste
NOTE 3 : The Character Exp Multiplier is a bit bugged and I didn't found why yet, it will show more than 1000Exp then the level will be added on the next run
Score Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Score Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(ScoreMultiplierAOB,SAOFD.exe,44 01 40 04 48 8B 5C 24 38) // should be unique
alloc(newmem,$1000,ScoreMultiplierAOB)

label(originalcode)
label(return)

label(ScoreMultiplier)
registersymbol(ScoreMultiplier)

newmem:
  push rax
  mov rax,[ScoreMultiplier]
  mul r8d
  mov r8d,rax
  pop rax

originalcode:
  add [rax+04],r8d
  mov rbx,[rsp+38]
  jmp return

ScoreMultiplier:
  dq #1

ScoreMultiplierAOB:
  jmp newmem
  nop 4
return:
registersymbol(ScoreMultiplierAOB)

[DISABLE]

ScoreMultiplierAOB:
  db 44 01 40 04 48 8B 5C 24 38

unregistersymbol(ScoreMultiplierAOB)
unregistersymbol(ScoreMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22D2E2B

SAOFD.exe+22D2E09: 41 8B D1        - mov edx,r9d
SAOFD.exe+22D2E0C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22D2E0F: E8 DC ED 89 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22D2E14: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22D2E17: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22D2E1C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22D2E20: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E25: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E29: 5F              - pop rdi
SAOFD.exe+22D2E2A: C3              - ret 
// ---------- INJECTING HERE ----------
SAOFD.exe+22D2E2B: 44 01 40 04     - add [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22D2E2F: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E34: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E38: 5F              - pop rdi
SAOFD.exe+22D2E39: C3              - ret 
SAOFD.exe+22D2E3A: CC              - int 3 
SAOFD.exe+22D2E3B: CC              - int 3 
SAOFD.exe+22D2E3C: CC              - int 3 
SAOFD.exe+22D2E3D: CC              - int 3 
SAOFD.exe+22D2E3E: CC              - int 3 
SAOFD.exe+22D2E3F: CC              - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4</ID>
          <Description>"Score Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Set Score Value

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Set Score Value"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(SetScoreValueAOB,SAOFD.exe,44 89 40 04 48 83 C4 20) // should be unique
alloc(newmem,$1000,SetScoreValueAOB)

label(originalcode)
label(return)

label(ScoreValueAOB)
registersymbol(ScoreValueAOB)

newmem:
  mov r8d,[ScoreValueAOB]
originalcode:
  mov [rax+04],r8d
  add rsp,20
  jmp return

ScoreValueAOB:
  dq #50000

SetScoreValueAOB:
  jmp newmem
  nop 3
return:
registersymbol(SetScoreValueAOB)

[DISABLE]

SetScoreValueAOB:
  db 44 89 40 04 48 83 C4 20

unregistersymbol(SetScoreValueAOB)
unregistersymbol(ScoreValueAOB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22F0770

SAOFD.exe+22F074C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22F074F: E8 9C 14 88 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22F0754: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22F0757: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22F075C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22F0760: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22F0765: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0769: 5F              - pop rdi
SAOFD.exe+22F076A: C3              - ret 
SAOFD.exe+22F076B: 48 8B 5C 24 38  - mov rbx,[rsp+38]
// ---------- INJECTING HERE ----------
SAOFD.exe+22F0770: 44 89 40 04     - mov [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22F0774: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0778: 5F              - pop rdi
SAOFD.exe+22F0779: C3              - ret 
SAOFD.exe+22F077A: CC              - int 3 
SAOFD.exe+22F077B: CC              - int 3 
SAOFD.exe+22F077C: CC              - int 3 
SAOFD.exe+22F077D: CC              - int 3 
SAOFD.exe+22F077E: CC              - int 3 
SAOFD.exe+22F077F: CC              - int 3 
SAOFD.exe+22F0780: 40 55           - push rbp
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3</ID>
          <Description>"Score Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreValueAOB</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Character Exp Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>6</ID>
      <Description>"Character Exp Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CharacterExpMultiplierAOB,SAOFD.exe,44 01 30 45 85 F6) // should be unique
alloc(newmem,$1000,CharacterExpMultiplierAOB)

label(originalcode)
label(return)

label(CharacterExpMultiplier)
registersymbol(CharacterExpMultiplier)

newmem:
  push rax
  mov rax,[CharacterExpMultiplier]
  mul r14d
  mov r14d,rax
  pop rax

originalcode:
  add [rax],r14d
  test r14d,r14d
  jmp return

CharacterExpMultiplier:
  dq #1

CharacterExpMultiplierAOB:
  jmp newmem
  nop
return:
registersymbol(CharacterExpMultiplierAOB)

[DISABLE]

CharacterExpMultiplierAOB:
  db 44 01 30 45 85 F6

unregistersymbol(CharacterExpMultiplierAOB)
unregistersymbol(CharacterExpMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+2026163

SAOFD.exe+2026141: 48 8B 08              - mov rcx,[rax]
SAOFD.exe+2026144: 48 8B 43 28           - mov rax,[rbx+28]
SAOFD.exe+2026148: 8B 10                 - mov edx,[rax]
SAOFD.exe+202614A: FF C2                 - inc edx
SAOFD.exe+202614C: E8 0F 50 07 00        - call SAOFD.exe+209B160
SAOFD.exe+2026151: 85 C0                 - test eax,eax
SAOFD.exe+2026153: 0F 8F 57 FF FF FF     - jg SAOFD.exe+20260B0
SAOFD.exe+2026159: 85 C0                 - test eax,eax
SAOFD.exe+202615B: 48 8B 43 30           - mov rax,[rbx+30]
SAOFD.exe+202615F: 44 0F 45 F5           - cmovne r14d,ebp
// ---------- INJECTING HERE ----------
SAOFD.exe+2026163: 44 01 30              - add [rax],r14d
// ---------- DONE INJECTING  ----------
SAOFD.exe+2026166: 45 85 F6              - test r14d,r14d
SAOFD.exe+2026169: 74 60                 - je SAOFD.exe+20261CB
SAOFD.exe+202616B: 48 8B 43 18           - mov rax,[rbx+18]
SAOFD.exe+202616F: 48 8D 54 24 28        - lea rdx,[rsp+28]
SAOFD.exe+2026174: 48 8B 0B              - mov rcx,[rbx]
SAOFD.exe+2026177: 44 89 7C 24 20        - mov [rsp+20],r15d
SAOFD.exe+202617C: 44 89 74 24 24        - mov [rsp+24],r14d
SAOFD.exe+2026181: 44 0F B6 00           - movzx r8d,byte ptr [rax]
SAOFD.exe+2026185: 48 8D B9 40 13 00 00  - lea rdi,[rcx+00001340]
SAOFD.exe+202618C: E8 4F 19 01 00        - call SAOFD.exe+2037AE0
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>7</ID>
          <Description>"Character Exp Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>CharacterExpMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
EDIT: You still need the EAC bypass and it won't work online (obviously)
if you have some free time could you do rank exp too?
You can find it in the cheat engine basic way
Just find the address that has the same change in experience value before and after the quest

OPCOXE
Expert Cheater
Expert Cheater
Posts: 234
Joined: Sat Jul 11, 2020 8:21 am
Reputation: 83

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by OPCOXE »

bk2710 wrote:
Sun Oct 06, 2024 11:39 pm
Seems to all work fine, character xp bugs out if you press skip during the level sequence. Bamco development I guess, so never press skip if you use the code.
I tested a char to lv100 with it and every hp/base atk upgrade showed the same number, wonder if that's just a display bug due to using a multiplier or if the game is actually that wild. Might be worth comparing a natural level 100 to a cheated 100.
Strange I tried today but upping a character about 6 levels and I do get the rewards at each level (appearance, HP, attack and emotes).
Note that I had like 7000 Exp and when I disabled the script all the level came at one instead of one each run

EDIT: Note for other I'll do the script I want and when I want so don't ask me to do anything, If I've done something I'll post it there or on another fearless thread. Also there is a CT provided earlier by someone else that have more features

Rasticus
What is cheating?
What is cheating?
Posts: 2
Joined: Thu Aug 16, 2018 6:09 am
Reputation: 1

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by Rasticus »

MrViZZion wrote:
Fri Oct 04, 2024 8:54 pm
FullCodes has released a massive trainer with all options you can require, check it here

viewtopic.php?t=31657
Cheers

eizenrose
What is cheating?
What is cheating?
Posts: 2
Joined: Mon Mar 18, 2024 4:05 pm
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by eizenrose »

Izetta wrote:
Mon Oct 07, 2024 6:36 pm
eizenrose wrote:
Mon Oct 07, 2024 4:54 pm
OPCOXE wrote:
Sun Oct 06, 2024 7:14 pm
So I took half an hour to do some of the obvious things that I could do fast.
Here are some scripts :
NOTE 1 : Be aware that they are not perfect
NOTE 2 : I use spoiler to better visibility and code for copy/paste
NOTE 3 : The Character Exp Multiplier is a bit bugged and I didn't found why yet, it will show more than 1000Exp then the level will be added on the next run
Score Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Score Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(ScoreMultiplierAOB,SAOFD.exe,44 01 40 04 48 8B 5C 24 38) // should be unique
alloc(newmem,$1000,ScoreMultiplierAOB)

label(originalcode)
label(return)

label(ScoreMultiplier)
registersymbol(ScoreMultiplier)

newmem:
  push rax
  mov rax,[ScoreMultiplier]
  mul r8d
  mov r8d,rax
  pop rax

originalcode:
  add [rax+04],r8d
  mov rbx,[rsp+38]
  jmp return

ScoreMultiplier:
  dq #1

ScoreMultiplierAOB:
  jmp newmem
  nop 4
return:
registersymbol(ScoreMultiplierAOB)

[DISABLE]

ScoreMultiplierAOB:
  db 44 01 40 04 48 8B 5C 24 38

unregistersymbol(ScoreMultiplierAOB)
unregistersymbol(ScoreMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22D2E2B

SAOFD.exe+22D2E09: 41 8B D1        - mov edx,r9d
SAOFD.exe+22D2E0C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22D2E0F: E8 DC ED 89 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22D2E14: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22D2E17: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22D2E1C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22D2E20: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E25: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E29: 5F              - pop rdi
SAOFD.exe+22D2E2A: C3              - ret 
// ---------- INJECTING HERE ----------
SAOFD.exe+22D2E2B: 44 01 40 04     - add [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22D2E2F: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E34: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E38: 5F              - pop rdi
SAOFD.exe+22D2E39: C3              - ret 
SAOFD.exe+22D2E3A: CC              - int 3 
SAOFD.exe+22D2E3B: CC              - int 3 
SAOFD.exe+22D2E3C: CC              - int 3 
SAOFD.exe+22D2E3D: CC              - int 3 
SAOFD.exe+22D2E3E: CC              - int 3 
SAOFD.exe+22D2E3F: CC              - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4</ID>
          <Description>"Score Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Set Score Value

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Set Score Value"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(SetScoreValueAOB,SAOFD.exe,44 89 40 04 48 83 C4 20) // should be unique
alloc(newmem,$1000,SetScoreValueAOB)

label(originalcode)
label(return)

label(ScoreValueAOB)
registersymbol(ScoreValueAOB)

newmem:
  mov r8d,[ScoreValueAOB]
originalcode:
  mov [rax+04],r8d
  add rsp,20
  jmp return

ScoreValueAOB:
  dq #50000

SetScoreValueAOB:
  jmp newmem
  nop 3
return:
registersymbol(SetScoreValueAOB)

[DISABLE]

SetScoreValueAOB:
  db 44 89 40 04 48 83 C4 20

unregistersymbol(SetScoreValueAOB)
unregistersymbol(ScoreValueAOB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22F0770

SAOFD.exe+22F074C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22F074F: E8 9C 14 88 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22F0754: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22F0757: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22F075C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22F0760: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22F0765: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0769: 5F              - pop rdi
SAOFD.exe+22F076A: C3              - ret 
SAOFD.exe+22F076B: 48 8B 5C 24 38  - mov rbx,[rsp+38]
// ---------- INJECTING HERE ----------
SAOFD.exe+22F0770: 44 89 40 04     - mov [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22F0774: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0778: 5F              - pop rdi
SAOFD.exe+22F0779: C3              - ret 
SAOFD.exe+22F077A: CC              - int 3 
SAOFD.exe+22F077B: CC              - int 3 
SAOFD.exe+22F077C: CC              - int 3 
SAOFD.exe+22F077D: CC              - int 3 
SAOFD.exe+22F077E: CC              - int 3 
SAOFD.exe+22F077F: CC              - int 3 
SAOFD.exe+22F0780: 40 55           - push rbp
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3</ID>
          <Description>"Score Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreValueAOB</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Character Exp Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>6</ID>
      <Description>"Character Exp Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CharacterExpMultiplierAOB,SAOFD.exe,44 01 30 45 85 F6) // should be unique
alloc(newmem,$1000,CharacterExpMultiplierAOB)

label(originalcode)
label(return)

label(CharacterExpMultiplier)
registersymbol(CharacterExpMultiplier)

newmem:
  push rax
  mov rax,[CharacterExpMultiplier]
  mul r14d
  mov r14d,rax
  pop rax

originalcode:
  add [rax],r14d
  test r14d,r14d
  jmp return

CharacterExpMultiplier:
  dq #1

CharacterExpMultiplierAOB:
  jmp newmem
  nop
return:
registersymbol(CharacterExpMultiplierAOB)

[DISABLE]

CharacterExpMultiplierAOB:
  db 44 01 30 45 85 F6

unregistersymbol(CharacterExpMultiplierAOB)
unregistersymbol(CharacterExpMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+2026163

SAOFD.exe+2026141: 48 8B 08              - mov rcx,[rax]
SAOFD.exe+2026144: 48 8B 43 28           - mov rax,[rbx+28]
SAOFD.exe+2026148: 8B 10                 - mov edx,[rax]
SAOFD.exe+202614A: FF C2                 - inc edx
SAOFD.exe+202614C: E8 0F 50 07 00        - call SAOFD.exe+209B160
SAOFD.exe+2026151: 85 C0                 - test eax,eax
SAOFD.exe+2026153: 0F 8F 57 FF FF FF     - jg SAOFD.exe+20260B0
SAOFD.exe+2026159: 85 C0                 - test eax,eax
SAOFD.exe+202615B: 48 8B 43 30           - mov rax,[rbx+30]
SAOFD.exe+202615F: 44 0F 45 F5           - cmovne r14d,ebp
// ---------- INJECTING HERE ----------
SAOFD.exe+2026163: 44 01 30              - add [rax],r14d
// ---------- DONE INJECTING  ----------
SAOFD.exe+2026166: 45 85 F6              - test r14d,r14d
SAOFD.exe+2026169: 74 60                 - je SAOFD.exe+20261CB
SAOFD.exe+202616B: 48 8B 43 18           - mov rax,[rbx+18]
SAOFD.exe+202616F: 48 8D 54 24 28        - lea rdx,[rsp+28]
SAOFD.exe+2026174: 48 8B 0B              - mov rcx,[rbx]
SAOFD.exe+2026177: 44 89 7C 24 20        - mov [rsp+20],r15d
SAOFD.exe+202617C: 44 89 74 24 24        - mov [rsp+24],r14d
SAOFD.exe+2026181: 44 0F B6 00           - movzx r8d,byte ptr [rax]
SAOFD.exe+2026185: 48 8D B9 40 13 00 00  - lea rdi,[rcx+00001340]
SAOFD.exe+202618C: E8 4F 19 01 00        - call SAOFD.exe+2037AE0
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>7</ID>
          <Description>"Character Exp Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>CharacterExpMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
EDIT: You still need the EAC bypass and it won't work online (obviously)
if you have some free time could you do rank exp too?
You can find it in the cheat engine basic way
Just find the address that has the same change in experience value before and after the quest
i sadly don't even really know how to use it the basic way properly
which is why i had to ask

aurorum
Noobzor
Noobzor
Posts: 9
Joined: Sat Jun 22, 2024 4:21 am
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by aurorum »

bk2710 wrote:
Sun Oct 06, 2024 11:39 pm
OPCOXE wrote:
Sun Oct 06, 2024 7:14 pm
So I took half an hour to do some of the obvious things that I could do fast.
Here are some scripts :
NOTE 1 : Be aware that they are not perfect
NOTE 2 : I use spoiler to better visibility and code for copy/paste
NOTE 3 : The Character Exp Multiplier is a bit bugged and I didn't found why yet, it will show more than 1000Exp then the level will be added on the next run
Score Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Score Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(ScoreMultiplierAOB,SAOFD.exe,44 01 40 04 48 8B 5C 24 38) // should be unique
alloc(newmem,$1000,ScoreMultiplierAOB)

label(originalcode)
label(return)

label(ScoreMultiplier)
registersymbol(ScoreMultiplier)

newmem:
  push rax
  mov rax,[ScoreMultiplier]
  mul r8d
  mov r8d,rax
  pop rax

originalcode:
  add [rax+04],r8d
  mov rbx,[rsp+38]
  jmp return

ScoreMultiplier:
  dq #1

ScoreMultiplierAOB:
  jmp newmem
  nop 4
return:
registersymbol(ScoreMultiplierAOB)

[DISABLE]

ScoreMultiplierAOB:
  db 44 01 40 04 48 8B 5C 24 38

unregistersymbol(ScoreMultiplierAOB)
unregistersymbol(ScoreMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22D2E2B

SAOFD.exe+22D2E09: 41 8B D1        - mov edx,r9d
SAOFD.exe+22D2E0C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22D2E0F: E8 DC ED 89 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22D2E14: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22D2E17: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22D2E1C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22D2E20: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E25: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E29: 5F              - pop rdi
SAOFD.exe+22D2E2A: C3              - ret 
// ---------- INJECTING HERE ----------
SAOFD.exe+22D2E2B: 44 01 40 04     - add [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22D2E2F: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E34: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E38: 5F              - pop rdi
SAOFD.exe+22D2E39: C3              - ret 
SAOFD.exe+22D2E3A: CC              - int 3 
SAOFD.exe+22D2E3B: CC              - int 3 
SAOFD.exe+22D2E3C: CC              - int 3 
SAOFD.exe+22D2E3D: CC              - int 3 
SAOFD.exe+22D2E3E: CC              - int 3 
SAOFD.exe+22D2E3F: CC              - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4</ID>
          <Description>"Score Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Set Score Value

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Set Score Value"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(SetScoreValueAOB,SAOFD.exe,44 89 40 04 48 83 C4 20) // should be unique
alloc(newmem,$1000,SetScoreValueAOB)

label(originalcode)
label(return)

label(ScoreValueAOB)
registersymbol(ScoreValueAOB)

newmem:
  mov r8d,[ScoreValueAOB]
originalcode:
  mov [rax+04],r8d
  add rsp,20
  jmp return

ScoreValueAOB:
  dq #50000

SetScoreValueAOB:
  jmp newmem
  nop 3
return:
registersymbol(SetScoreValueAOB)

[DISABLE]

SetScoreValueAOB:
  db 44 89 40 04 48 83 C4 20

unregistersymbol(SetScoreValueAOB)
unregistersymbol(ScoreValueAOB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22F0770

SAOFD.exe+22F074C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22F074F: E8 9C 14 88 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22F0754: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22F0757: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22F075C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22F0760: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22F0765: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0769: 5F              - pop rdi
SAOFD.exe+22F076A: C3              - ret 
SAOFD.exe+22F076B: 48 8B 5C 24 38  - mov rbx,[rsp+38]
// ---------- INJECTING HERE ----------
SAOFD.exe+22F0770: 44 89 40 04     - mov [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22F0774: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0778: 5F              - pop rdi
SAOFD.exe+22F0779: C3              - ret 
SAOFD.exe+22F077A: CC              - int 3 
SAOFD.exe+22F077B: CC              - int 3 
SAOFD.exe+22F077C: CC              - int 3 
SAOFD.exe+22F077D: CC              - int 3 
SAOFD.exe+22F077E: CC              - int 3 
SAOFD.exe+22F077F: CC              - int 3 
SAOFD.exe+22F0780: 40 55           - push rbp
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3</ID>
          <Description>"Score Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreValueAOB</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Character Exp Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>6</ID>
      <Description>"Character Exp Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CharacterExpMultiplierAOB,SAOFD.exe,44 01 30 45 85 F6) // should be unique
alloc(newmem,$1000,CharacterExpMultiplierAOB)

label(originalcode)
label(return)

label(CharacterExpMultiplier)
registersymbol(CharacterExpMultiplier)

newmem:
  push rax
  mov rax,[CharacterExpMultiplier]
  mul r14d
  mov r14d,rax
  pop rax

originalcode:
  add [rax],r14d
  test r14d,r14d
  jmp return

CharacterExpMultiplier:
  dq #1

CharacterExpMultiplierAOB:
  jmp newmem
  nop
return:
registersymbol(CharacterExpMultiplierAOB)

[DISABLE]

CharacterExpMultiplierAOB:
  db 44 01 30 45 85 F6

unregistersymbol(CharacterExpMultiplierAOB)
unregistersymbol(CharacterExpMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+2026163

SAOFD.exe+2026141: 48 8B 08              - mov rcx,[rax]
SAOFD.exe+2026144: 48 8B 43 28           - mov rax,[rbx+28]
SAOFD.exe+2026148: 8B 10                 - mov edx,[rax]
SAOFD.exe+202614A: FF C2                 - inc edx
SAOFD.exe+202614C: E8 0F 50 07 00        - call SAOFD.exe+209B160
SAOFD.exe+2026151: 85 C0                 - test eax,eax
SAOFD.exe+2026153: 0F 8F 57 FF FF FF     - jg SAOFD.exe+20260B0
SAOFD.exe+2026159: 85 C0                 - test eax,eax
SAOFD.exe+202615B: 48 8B 43 30           - mov rax,[rbx+30]
SAOFD.exe+202615F: 44 0F 45 F5           - cmovne r14d,ebp
// ---------- INJECTING HERE ----------
SAOFD.exe+2026163: 44 01 30              - add [rax],r14d
// ---------- DONE INJECTING  ----------
SAOFD.exe+2026166: 45 85 F6              - test r14d,r14d
SAOFD.exe+2026169: 74 60                 - je SAOFD.exe+20261CB
SAOFD.exe+202616B: 48 8B 43 18           - mov rax,[rbx+18]
SAOFD.exe+202616F: 48 8D 54 24 28        - lea rdx,[rsp+28]
SAOFD.exe+2026174: 48 8B 0B              - mov rcx,[rbx]
SAOFD.exe+2026177: 44 89 7C 24 20        - mov [rsp+20],r15d
SAOFD.exe+202617C: 44 89 74 24 24        - mov [rsp+24],r14d
SAOFD.exe+2026181: 44 0F B6 00           - movzx r8d,byte ptr [rax]
SAOFD.exe+2026185: 48 8D B9 40 13 00 00  - lea rdi,[rcx+00001340]
SAOFD.exe+202618C: E8 4F 19 01 00        - call SAOFD.exe+2037AE0
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>7</ID>
          <Description>"Character Exp Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>CharacterExpMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
EDIT: You still need the EAC bypass and it won't work online (obviously)
Seems to all work fine, character xp bugs out if you press skip during the level sequence. Bamco development I guess, so never press skip if you use the code.
I tested a char to lv100 with it and every hp/base atk upgrade showed the same number, wonder if that's just a display bug due to using a multiplier or if the game is actually that wild. Might be worth comparing a natural level 100 to a cheated 100.
i decided to record to look over while getting some passives, and it seems like if you cheat the exp multiplier in one go it only takes the first stat boost
klein went from 400-408 hp from 1-30 which had multiple stat boosts
so assuming you went to 100 in one go, youre definitely losing a lot of stats
so ig dont use it on a char youre planning to main

TM0414
Cheater
Cheater
Posts: 29
Joined: Sat Nov 06, 2021 4:33 pm
Reputation: 3

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by TM0414 »

aurorum wrote:
Tue Oct 08, 2024 3:52 am
bk2710 wrote:
Sun Oct 06, 2024 11:39 pm
OPCOXE wrote:
Sun Oct 06, 2024 7:14 pm
So I took half an hour to do some of the obvious things that I could do fast.
Here are some scripts :
NOTE 1 : Be aware that they are not perfect
NOTE 2 : I use spoiler to better visibility and code for copy/paste
NOTE 3 : The Character Exp Multiplier is a bit bugged and I didn't found why yet, it will show more than 1000Exp then the level will be added on the next run
Score Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Score Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(ScoreMultiplierAOB,SAOFD.exe,44 01 40 04 48 8B 5C 24 38) // should be unique
alloc(newmem,$1000,ScoreMultiplierAOB)

label(originalcode)
label(return)

label(ScoreMultiplier)
registersymbol(ScoreMultiplier)

newmem:
  push rax
  mov rax,[ScoreMultiplier]
  mul r8d
  mov r8d,rax
  pop rax

originalcode:
  add [rax+04],r8d
  mov rbx,[rsp+38]
  jmp return

ScoreMultiplier:
  dq #1

ScoreMultiplierAOB:
  jmp newmem
  nop 4
return:
registersymbol(ScoreMultiplierAOB)

[DISABLE]

ScoreMultiplierAOB:
  db 44 01 40 04 48 8B 5C 24 38

unregistersymbol(ScoreMultiplierAOB)
unregistersymbol(ScoreMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22D2E2B

SAOFD.exe+22D2E09: 41 8B D1        - mov edx,r9d
SAOFD.exe+22D2E0C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22D2E0F: E8 DC ED 89 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22D2E14: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22D2E17: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22D2E1C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22D2E20: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E25: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E29: 5F              - pop rdi
SAOFD.exe+22D2E2A: C3              - ret 
// ---------- INJECTING HERE ----------
SAOFD.exe+22D2E2B: 44 01 40 04     - add [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22D2E2F: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E34: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E38: 5F              - pop rdi
SAOFD.exe+22D2E39: C3              - ret 
SAOFD.exe+22D2E3A: CC              - int 3 
SAOFD.exe+22D2E3B: CC              - int 3 
SAOFD.exe+22D2E3C: CC              - int 3 
SAOFD.exe+22D2E3D: CC              - int 3 
SAOFD.exe+22D2E3E: CC              - int 3 
SAOFD.exe+22D2E3F: CC              - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4</ID>
          <Description>"Score Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Set Score Value

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Set Score Value"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(SetScoreValueAOB,SAOFD.exe,44 89 40 04 48 83 C4 20) // should be unique
alloc(newmem,$1000,SetScoreValueAOB)

label(originalcode)
label(return)

label(ScoreValueAOB)
registersymbol(ScoreValueAOB)

newmem:
  mov r8d,[ScoreValueAOB]
originalcode:
  mov [rax+04],r8d
  add rsp,20
  jmp return

ScoreValueAOB:
  dq #50000

SetScoreValueAOB:
  jmp newmem
  nop 3
return:
registersymbol(SetScoreValueAOB)

[DISABLE]

SetScoreValueAOB:
  db 44 89 40 04 48 83 C4 20

unregistersymbol(SetScoreValueAOB)
unregistersymbol(ScoreValueAOB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22F0770

SAOFD.exe+22F074C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22F074F: E8 9C 14 88 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22F0754: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22F0757: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22F075C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22F0760: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22F0765: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0769: 5F              - pop rdi
SAOFD.exe+22F076A: C3              - ret 
SAOFD.exe+22F076B: 48 8B 5C 24 38  - mov rbx,[rsp+38]
// ---------- INJECTING HERE ----------
SAOFD.exe+22F0770: 44 89 40 04     - mov [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22F0774: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0778: 5F              - pop rdi
SAOFD.exe+22F0779: C3              - ret 
SAOFD.exe+22F077A: CC              - int 3 
SAOFD.exe+22F077B: CC              - int 3 
SAOFD.exe+22F077C: CC              - int 3 
SAOFD.exe+22F077D: CC              - int 3 
SAOFD.exe+22F077E: CC              - int 3 
SAOFD.exe+22F077F: CC              - int 3 
SAOFD.exe+22F0780: 40 55           - push rbp
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3</ID>
          <Description>"Score Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreValueAOB</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Character Exp Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>6</ID>
      <Description>"Character Exp Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CharacterExpMultiplierAOB,SAOFD.exe,44 01 30 45 85 F6) // should be unique
alloc(newmem,$1000,CharacterExpMultiplierAOB)

label(originalcode)
label(return)

label(CharacterExpMultiplier)
registersymbol(CharacterExpMultiplier)

newmem:
  push rax
  mov rax,[CharacterExpMultiplier]
  mul r14d
  mov r14d,rax
  pop rax

originalcode:
  add [rax],r14d
  test r14d,r14d
  jmp return

CharacterExpMultiplier:
  dq #1

CharacterExpMultiplierAOB:
  jmp newmem
  nop
return:
registersymbol(CharacterExpMultiplierAOB)

[DISABLE]

CharacterExpMultiplierAOB:
  db 44 01 30 45 85 F6

unregistersymbol(CharacterExpMultiplierAOB)
unregistersymbol(CharacterExpMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+2026163

SAOFD.exe+2026141: 48 8B 08              - mov rcx,[rax]
SAOFD.exe+2026144: 48 8B 43 28           - mov rax,[rbx+28]
SAOFD.exe+2026148: 8B 10                 - mov edx,[rax]
SAOFD.exe+202614A: FF C2                 - inc edx
SAOFD.exe+202614C: E8 0F 50 07 00        - call SAOFD.exe+209B160
SAOFD.exe+2026151: 85 C0                 - test eax,eax
SAOFD.exe+2026153: 0F 8F 57 FF FF FF     - jg SAOFD.exe+20260B0
SAOFD.exe+2026159: 85 C0                 - test eax,eax
SAOFD.exe+202615B: 48 8B 43 30           - mov rax,[rbx+30]
SAOFD.exe+202615F: 44 0F 45 F5           - cmovne r14d,ebp
// ---------- INJECTING HERE ----------
SAOFD.exe+2026163: 44 01 30              - add [rax],r14d
// ---------- DONE INJECTING  ----------
SAOFD.exe+2026166: 45 85 F6              - test r14d,r14d
SAOFD.exe+2026169: 74 60                 - je SAOFD.exe+20261CB
SAOFD.exe+202616B: 48 8B 43 18           - mov rax,[rbx+18]
SAOFD.exe+202616F: 48 8D 54 24 28        - lea rdx,[rsp+28]
SAOFD.exe+2026174: 48 8B 0B              - mov rcx,[rbx]
SAOFD.exe+2026177: 44 89 7C 24 20        - mov [rsp+20],r15d
SAOFD.exe+202617C: 44 89 74 24 24        - mov [rsp+24],r14d
SAOFD.exe+2026181: 44 0F B6 00           - movzx r8d,byte ptr [rax]
SAOFD.exe+2026185: 48 8D B9 40 13 00 00  - lea rdi,[rcx+00001340]
SAOFD.exe+202618C: E8 4F 19 01 00        - call SAOFD.exe+2037AE0
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>7</ID>
          <Description>"Character Exp Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>CharacterExpMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
EDIT: You still need the EAC bypass and it won't work online (obviously)
Seems to all work fine, character xp bugs out if you press skip during the level sequence. Bamco development I guess, so never press skip if you use the code.
I tested a char to lv100 with it and every hp/base atk upgrade showed the same number, wonder if that's just a display bug due to using a multiplier or if the game is actually that wild. Might be worth comparing a natural level 100 to a cheated 100.
i decided to record to look over while getting some passives, and it seems like if you cheat the exp multiplier in one go it only takes the first stat boost
klein went from 400-408 hp from 1-30 which had multiple stat boosts
so assuming you went to 100 in one go, youre definitely losing a lot of stats
so ig dont use it on a char youre planning to main
I remember this issue happening with Fatal Bullet as well
The LR table had highlighted items
I wish there was a pointer to freely edit equipment

strawberry
Noobzor
Noobzor
Posts: 14
Joined: Wed Oct 02, 2024 1:11 pm
Reputation: 0

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by strawberry »

The price of changing options in this game is so high that cheats that allow you to change options are more valuable than a one-hit kill.

risko
Novice Cheater
Novice Cheater
Posts: 21
Joined: Fri Mar 03, 2017 2:48 am
Reputation: 39

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by risko »

Quick Items Editor:

- Enable the script and highlight the desired weapon to edit its stats.
- After making the necessary edits, disable the script.
- Note: The script may cause bugs. Use at your own risk.

For the rarity levels:

1 = Common
2 = Uncommon
3 = Rare
4 = Legend

I may not have time to update this in the future. If anyone is ready to improve it, you have my permission to do so.
Attachments
SAOFD.CT
(28.28 KiB) Downloaded 418 times

bk2710
Cheater
Cheater
Posts: 44
Joined: Tue Jan 15, 2019 2:49 pm
Reputation: 2

Re: [REQUEST] SWORD ART ONLINE Fractured Daydream

Post by bk2710 »

aurorum wrote:
Tue Oct 08, 2024 3:52 am
bk2710 wrote:
Sun Oct 06, 2024 11:39 pm
OPCOXE wrote:
Sun Oct 06, 2024 7:14 pm
So I took half an hour to do some of the obvious things that I could do fast.
Here are some scripts :
NOTE 1 : Be aware that they are not perfect
NOTE 2 : I use spoiler to better visibility and code for copy/paste
NOTE 3 : The Character Exp Multiplier is a bit bugged and I didn't found why yet, it will show more than 1000Exp then the level will be added on the next run
Score Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Score Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(ScoreMultiplierAOB,SAOFD.exe,44 01 40 04 48 8B 5C 24 38) // should be unique
alloc(newmem,$1000,ScoreMultiplierAOB)

label(originalcode)
label(return)

label(ScoreMultiplier)
registersymbol(ScoreMultiplier)

newmem:
  push rax
  mov rax,[ScoreMultiplier]
  mul r8d
  mov r8d,rax
  pop rax

originalcode:
  add [rax+04],r8d
  mov rbx,[rsp+38]
  jmp return

ScoreMultiplier:
  dq #1

ScoreMultiplierAOB:
  jmp newmem
  nop 4
return:
registersymbol(ScoreMultiplierAOB)

[DISABLE]

ScoreMultiplierAOB:
  db 44 01 40 04 48 8B 5C 24 38

unregistersymbol(ScoreMultiplierAOB)
unregistersymbol(ScoreMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22D2E2B

SAOFD.exe+22D2E09: 41 8B D1        - mov edx,r9d
SAOFD.exe+22D2E0C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22D2E0F: E8 DC ED 89 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22D2E14: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22D2E17: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22D2E1C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22D2E20: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E25: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E29: 5F              - pop rdi
SAOFD.exe+22D2E2A: C3              - ret 
// ---------- INJECTING HERE ----------
SAOFD.exe+22D2E2B: 44 01 40 04     - add [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22D2E2F: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22D2E34: 48 83 C4 20     - add rsp,20
SAOFD.exe+22D2E38: 5F              - pop rdi
SAOFD.exe+22D2E39: C3              - ret 
SAOFD.exe+22D2E3A: CC              - int 3 
SAOFD.exe+22D2E3B: CC              - int 3 
SAOFD.exe+22D2E3C: CC              - int 3 
SAOFD.exe+22D2E3D: CC              - int 3 
SAOFD.exe+22D2E3E: CC              - int 3 
SAOFD.exe+22D2E3F: CC              - int 3 
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>4</ID>
          <Description>"Score Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Set Score Value

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Set Score Value"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(SetScoreValueAOB,SAOFD.exe,44 89 40 04 48 83 C4 20) // should be unique
alloc(newmem,$1000,SetScoreValueAOB)

label(originalcode)
label(return)

label(ScoreValueAOB)
registersymbol(ScoreValueAOB)

newmem:
  mov r8d,[ScoreValueAOB]
originalcode:
  mov [rax+04],r8d
  add rsp,20
  jmp return

ScoreValueAOB:
  dq #50000

SetScoreValueAOB:
  jmp newmem
  nop 3
return:
registersymbol(SetScoreValueAOB)

[DISABLE]

SetScoreValueAOB:
  db 44 89 40 04 48 83 C4 20

unregistersymbol(SetScoreValueAOB)
unregistersymbol(ScoreValueAOB)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+22F0770

SAOFD.exe+22F074C: 48 8B CB        - mov rcx,rbx
SAOFD.exe+22F074F: E8 9C 14 88 FE  - call SAOFD.exe+B71BF0
SAOFD.exe+22F0754: 48 8B 0B        - mov rcx,[rbx]
SAOFD.exe+22F0757: 48 8B 44 24 30  - mov rax,[rsp+30]
SAOFD.exe+22F075C: 48 89 04 0F     - mov [rdi+rcx],rax
SAOFD.exe+22F0760: 48 8B 5C 24 38  - mov rbx,[rsp+38]
SAOFD.exe+22F0765: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0769: 5F              - pop rdi
SAOFD.exe+22F076A: C3              - ret 
SAOFD.exe+22F076B: 48 8B 5C 24 38  - mov rbx,[rsp+38]
// ---------- INJECTING HERE ----------
SAOFD.exe+22F0770: 44 89 40 04     - mov [rax+04],r8d
// ---------- DONE INJECTING  ----------
SAOFD.exe+22F0774: 48 83 C4 20     - add rsp,20
SAOFD.exe+22F0778: 5F              - pop rdi
SAOFD.exe+22F0779: C3              - ret 
SAOFD.exe+22F077A: CC              - int 3 
SAOFD.exe+22F077B: CC              - int 3 
SAOFD.exe+22F077C: CC              - int 3 
SAOFD.exe+22F077D: CC              - int 3 
SAOFD.exe+22F077E: CC              - int 3 
SAOFD.exe+22F077F: CC              - int 3 
SAOFD.exe+22F0780: 40 55           - push rbp
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>3</ID>
          <Description>"Score Value"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>ScoreValueAOB</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Character Exp Multiplier

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>6</ID>
      <Description>"Character Exp Multiplier"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : SAOFD.exe
  Version: 
  Date   : 2024-10-06
  Author : L

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CharacterExpMultiplierAOB,SAOFD.exe,44 01 30 45 85 F6) // should be unique
alloc(newmem,$1000,CharacterExpMultiplierAOB)

label(originalcode)
label(return)

label(CharacterExpMultiplier)
registersymbol(CharacterExpMultiplier)

newmem:
  push rax
  mov rax,[CharacterExpMultiplier]
  mul r14d
  mov r14d,rax
  pop rax

originalcode:
  add [rax],r14d
  test r14d,r14d
  jmp return

CharacterExpMultiplier:
  dq #1

CharacterExpMultiplierAOB:
  jmp newmem
  nop
return:
registersymbol(CharacterExpMultiplierAOB)

[DISABLE]

CharacterExpMultiplierAOB:
  db 44 01 30 45 85 F6

unregistersymbol(CharacterExpMultiplierAOB)
unregistersymbol(CharacterExpMultiplier)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: SAOFD.exe+2026163

SAOFD.exe+2026141: 48 8B 08              - mov rcx,[rax]
SAOFD.exe+2026144: 48 8B 43 28           - mov rax,[rbx+28]
SAOFD.exe+2026148: 8B 10                 - mov edx,[rax]
SAOFD.exe+202614A: FF C2                 - inc edx
SAOFD.exe+202614C: E8 0F 50 07 00        - call SAOFD.exe+209B160
SAOFD.exe+2026151: 85 C0                 - test eax,eax
SAOFD.exe+2026153: 0F 8F 57 FF FF FF     - jg SAOFD.exe+20260B0
SAOFD.exe+2026159: 85 C0                 - test eax,eax
SAOFD.exe+202615B: 48 8B 43 30           - mov rax,[rbx+30]
SAOFD.exe+202615F: 44 0F 45 F5           - cmovne r14d,ebp
// ---------- INJECTING HERE ----------
SAOFD.exe+2026163: 44 01 30              - add [rax],r14d
// ---------- DONE INJECTING  ----------
SAOFD.exe+2026166: 45 85 F6              - test r14d,r14d
SAOFD.exe+2026169: 74 60                 - je SAOFD.exe+20261CB
SAOFD.exe+202616B: 48 8B 43 18           - mov rax,[rbx+18]
SAOFD.exe+202616F: 48 8D 54 24 28        - lea rdx,[rsp+28]
SAOFD.exe+2026174: 48 8B 0B              - mov rcx,[rbx]
SAOFD.exe+2026177: 44 89 7C 24 20        - mov [rsp+20],r15d
SAOFD.exe+202617C: 44 89 74 24 24        - mov [rsp+24],r14d
SAOFD.exe+2026181: 44 0F B6 00           - movzx r8d,byte ptr [rax]
SAOFD.exe+2026185: 48 8D B9 40 13 00 00  - lea rdi,[rcx+00001340]
SAOFD.exe+202618C: E8 4F 19 01 00        - call SAOFD.exe+2037AE0
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>7</ID>
          <Description>"Character Exp Multiplier"</Description>
          <ShowAsSigned>0</ShowAsSigned>
          <VariableType>4 Bytes</VariableType>
          <Address>CharacterExpMultiplier</Address>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
EDIT: You still need the EAC bypass and it won't work online (obviously)
Seems to all work fine, character xp bugs out if you press skip during the level sequence. Bamco development I guess, so never press skip if you use the code.
I tested a char to lv100 with it and every hp/base atk upgrade showed the same number, wonder if that's just a display bug due to using a multiplier or if the game is actually that wild. Might be worth comparing a natural level 100 to a cheated 100.
i decided to record to look over while getting some passives, and it seems like if you cheat the exp multiplier in one go it only takes the first stat boost
klein went from 400-408 hp from 1-30 which had multiple stat boosts
so assuming you went to 100 in one go, youre definitely losing a lot of stats
so ig dont use it on a char youre planning to main
the total stats you gain are 6% atk and hp at lv100, i did this with a lv1 char and after the lvl ups i had 6% more so its a display bug.

Post Reply