Re: [Steam & Windows] Deep Rock Galactic (CT, Mods, Cheat Codes, SaveGame)
Posted: Sun Oct 02, 2022 10:55 am
I tried and failed.
Community Cheat Tables of Cheat Engine
https://fearlessrevolution.com/
I'm pretty sure i wrote a season pass exp script like half a year ago that i posted somehwere in the topic, it should still work, you can use that.laggninja wrote: ↑Fri Oct 28, 2022 1:38 pmIs there a way to give season exp? Since the value doesn't change while I'm in game the only way I know is worthless (I mean it changes between missions but just searching the values doesn't seem to work). It also doesn't seem to be on the table (at least not the public one).
I know how to edit scrips via save edit but not how to get the seasonal rewards. Any tips for a CE noob?
P.s: My knowledge extends to "Not all games use 4byte"
I thought it was still working, but maybe that was just season pass exp and i updated normal exp for season 3 and forgot about it.NobleVectorMagazine wrote: ↑Sat Nov 05, 2022 2:33 pmIs there any updated table for XP after Season 3 launch? (Nov 3,2022)
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>112946</ID>
<Description>"Change PP gain on mission completion"</Description>
<Options moHideChildren="1"/>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(SeasonXPGain,$process,7E 03 44 01 3F)
aobscanmodule(SeasonXPTerminal,$process,48 8B F8 8B 28 85 ED)
registersymbol(SeasonXPGain)
registersymbol(SeasonXPTerminal)
alloc(SeasonXP,$100,SeasonXPGain)
registersymbol(SeasonXP)
label(code)
label(dump)
label(return)
label(return2)
label(flat)
label(mult)
label(min)
label(exit)
SeasonXP:
dq 0 // pointer
dd 0 // point override
dd 0 // flat bonus
dd (float)1 // multiplier
dd 0 // backup
code:
mov [SeasonXP],rdi
jle return
cmp [SeasonXP+8],0
jng short mult
mov r15d,[SeasonXP+8]
mult:
cmp [SeasonXP+10],(float)1
je short flat
movss [SeasonXP+14],xmm0 // backup
cvtsi2ss xmm0,r15d
mulss xmm0,[SeasonXP+10]
cvtss2si r15d,xmm0
movss xmm0,[SeasonXP+14] // restore
flat:
cmp [SeasonXP+C],0
jl short min
add r15d,[SeasonXP+C]
min:
cmp r15d,0
jge short exit
xor r15d,r15d
exit:
add [rdi],r15d
jmp return
dump:
mov [SeasonXP],rax
mov rdi,rax
mov ebp,[rax]
jmp return2
SeasonXPGain:
jmp SeasonXP+18
return:
SeasonXPTerminal:
jmp dump
return2:
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
SeasonXPGain:
db 7E 03 44 01 3F
SeasonXPTerminal:
db 48 8B F8 8B 28
unregistersymbol(SeasonXPGain)
unregistersymbol(SeasonXPTerminal)
unregistersymbol(SeasonXP)
dealloc(SeasonXP)
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>112947</ID>
<Description>"Gain fixed points (0 = normal gain)"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>SeasonXP+8</Address>
</CheatEntry>
<CheatEntry>
<ID>112948</ID>
<Description>"Multiplier"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>SeasonXP+10</Address>
</CheatEntry>
<CheatEntry>
<ID>112949</ID>
<Description>"Flat bonus points"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>SeasonXP+C</Address>
</CheatEntry>
<CheatEntry>
<ID>112950</ID>
<Description>"Current Performance Points"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>[SeasonXP]</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>112998</ID>
<Description>"Change Exp gain on mission completion"</Description>
<Options moHideChildren="1"/>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(MissionXPGain,$process,44 3B FD 41 0F 4E EF)
registersymbol(MissionXPGain)
alloc(MissionXP,$100,MissionXPGain)
registersymbol(MissionXP)
label(code)
label(return)
label(flat)
label(mult)
label(min)
label(exit)
MissionXP:
dq 0 // pointer
dd 0 // point override
dd 0 // flat bonus
dd (float)1 // multiplier
dd 0 // backup
code:
mov [MissionXP],r14
add qword ptr [MissionXP],10
cmp [MissionXP+8],0
jng short mult
mov r15d,[MissionXP+8]
mult:
cmp [MissionXP+10],(float)1
je short flat
movss [MissionXP+14],xmm0 // backup
cvtsi2ss xmm0,r15d
mulss xmm0,[MissionXP+10]
cvtss2si r15d,xmm0
movss xmm0,[MissionXP+14] // restore
flat:
cmp [MissionXP+C],0
jl short min
add r15d,[MissionXP+C]
min:
cmp r15d,0
jge short exit
xor r15d,r15d
exit:
cmp r15d,ebp
cmovle ebp,r15d
jmp return
MissionXPGain:
jmp MissionXP+18
db 90 90
return:
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
MissionXPGain:
db 44 3B FD 41 0F 4E EF
// cmp r15d,ebp
// cmovle ebp,r15d
unregistersymbol(MissionXPGain)
unregistersymbol(MissionXP)
dealloc(MissionXP)
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>112999</ID>
<Description>"Gain fixed Exp (0 = normal gain)"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>MissionXP+8</Address>
</CheatEntry>
<CheatEntry>
<ID>113000</ID>
<Description>"Multiplier"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>Float</VariableType>
<Address>MissionXP+10</Address>
</CheatEntry>
<CheatEntry>
<ID>113001</ID>
<Description>"Flat bonus exp"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>MissionXP+C</Address>
</CheatEntry>
<CheatEntry>
<ID>113002</ID>
<Description>"Current Experience"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>[MissionXP]</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>
Note: The amount of points you get is set the moment the mission ends, not on the post-mission screen, so you need to activate this BEFORE you end the mission.
Also note: The post mission screen won't display the right amount of points you get with this, but if you compare your points before and after a mission, you should see the difference.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>112953</ID>
<Description>"Force Machine Event (Enable Before Mission Load)"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-11
Author : HenryEx
}
[ENABLE]
aobscanmodule(SpecialEventSpawning,$process,0F 2F * 76 * E8 * * * * 4C 8B * * * * * * 48 8D)
registersymbol(SpecialEventSpawning)
SpecialEventSpawning:
db EB 03
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
SpecialEventSpawning:
db 0F 2F
unregistersymbol(SpecialEventSpawning)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>113007</ID>
<Description>"Force Meteor Event (Enable Before Mission Load)"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
Guarantee meteor impact generation on mission load
}
[ENABLE]
aobscanmodule(Season3EventSpawning,$process,0F 82 * * * * 49 8B * * 45 * * 48)
registersymbol(Season3EventSpawning)
Season3EventSpawning:
db EB 04
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
Season3EventSpawning:
db 0F 82
unregistersymbol(Season3EventSpawning)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>34219</ID>
<Description>"Unlimited Magazine Ammo"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(ClipCount,$process,8B 81 38 06 00 00 48 89)
alloc(newmem,$80,ClipCount)
label(code)
label(return)
newmem:
mov eax,[rcx+00000620] // amount of ammo spent
imul eax,2
code:
cmp [rcx+00000638],eax
jl return
mov eax,[rcx+00000638] // current ammo
jmp return
ClipCount:
jmp newmem
nop
return:
registersymbol(ClipCount)
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
ClipCount:
db 8B 81 38 06 00 00
unregistersymbol(ClipCount)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>34218</ID>
<Description>"Unlimited Reserve Ammo"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(AOBAmmoCountA,$process,89 8B 34 06 00 00 48 8D)
aobscanmodule(AOBAmmoCountB,$process,89 91 34 06 00 00 48 8D)
alloc(newmem,$80,AOBAmmoCountA)
registersymbol(AOBAmmoCountA)
registersymbol(AOBAmmoCountB)
registersymbol(AmmoCountCode2)
label(exit1)
label(return1)
label(exit2)
label(return2)
newmem:
cmp ecx,0
jg short exit1
mov ecx,[rbx+00000620]
mov eax,[rbx+0000061C]
exit1:
mov [rbx+00000634],ecx
jmp return1
AmmoCountCode2: // used on short reloads??
cmp edx,0
jg short exit2
mov edx,[rcx+00000620]
mov eax,[rcx+0000061C]
exit2:
mov [rcx+00000634],edx
jmp return2
AOBAmmoCountA:
jmp newmem
nop
return1:
AOBAmmoCountB:
jmp AmmoCountCode2
nop
return2:
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
AOBAmmoCountA:
mov [rbx+00000634],ecx
AOBAmmoCountB:
mov [rcx+00000634],edx
unregistersymbol(AOBAmmoCountA)
unregistersymbol(AOBAmmoCountB)
unregistersymbol(AmmoCountCode2)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>34229</ID>
<Description>"Unlimited Minigun Ammo"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(ClipCountMinigun,$process,89 86 38 06 00 00 89)
alloc(newmem,$40,ClipCountMinigun)
label(code)
label(return)
newmem:
cmp eax,[rsi+00000620]
jge short code
mov eax,[rsi+00000620]
code:
mov [rsi+00000638],eax
jmp return
ClipCountMinigun:
jmp newmem
nop
return:
registersymbol(ClipCountMinigun)
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
ClipCountMinigun:
db 89 86 38 06 00 00
unregistersymbol(ClipCountMinigun)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Works fine so far, thanks.HenryEx wrote: ↑Sun Nov 06, 2022 6:10 pmI thought it was still working, but maybe that was just season pass exp and i updated normal exp for season 3 and forgot about it.NobleVectorMagazine wrote: ↑Sat Nov 05, 2022 2:33 pmIs there any updated table for XP after Season 3 launch? (Nov 3,2022)
In any case, here's the updated level EXP and season EXP scripts, with better multiplier options - you can use non-integer multipliers now, like 0.5 or 3.8 or whatever.
Season XP modifiers for Season 3Level XP modifiersCode: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>112946</ID> <Description>"Change PP gain on mission completion"</Description> <Options moHideChildren="1"/> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx } [ENABLE] aobscanmodule(SeasonXPGain,$process,7E 03 44 01 3F) aobscanmodule(SeasonXPTerminal,$process,48 8B F8 8B 28 85 ED) registersymbol(SeasonXPGain) registersymbol(SeasonXPTerminal) alloc(SeasonXP,$100,SeasonXPGain) registersymbol(SeasonXP) label(code) label(dump) label(return) label(return2) label(flat) label(mult) label(min) label(exit) SeasonXP: dq 0 // pointer dd 0 // point override dd 0 // flat bonus dd (float)1 // multiplier dd 0 // backup code: mov [SeasonXP],rdi jle return cmp [SeasonXP+8],0 jng short mult mov r15d,[SeasonXP+8] mult: cmp [SeasonXP+10],(float)1 je short flat movss [SeasonXP+14],xmm0 // backup cvtsi2ss xmm0,r15d mulss xmm0,[SeasonXP+10] cvtss2si r15d,xmm0 movss xmm0,[SeasonXP+14] // restore flat: cmp [SeasonXP+C],0 jl short min add r15d,[SeasonXP+C] min: cmp r15d,0 jge short exit xor r15d,r15d exit: add [rdi],r15d jmp return dump: mov [SeasonXP],rax mov rdi,rax mov ebp,[rax] jmp return2 SeasonXPGain: jmp SeasonXP+18 return: SeasonXPTerminal: jmp dump return2: {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} SeasonXPGain: db 7E 03 44 01 3F SeasonXPTerminal: db 48 8B F8 8B 28 unregistersymbol(SeasonXPGain) unregistersymbol(SeasonXPTerminal) unregistersymbol(SeasonXP) dealloc(SeasonXP) </AssemblerScript> <CheatEntries> <CheatEntry> <ID>112947</ID> <Description>"Gain fixed points (0 = normal gain)"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>SeasonXP+8</Address> </CheatEntry> <CheatEntry> <ID>112948</ID> <Description>"Multiplier"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>SeasonXP+10</Address> </CheatEntry> <CheatEntry> <ID>112949</ID> <Description>"Flat bonus points"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>SeasonXP+C</Address> </CheatEntry> <CheatEntry> <ID>112950</ID> <Description>"Current Performance Points"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>[SeasonXP]</Address> </CheatEntry> </CheatEntries> </CheatEntry> </CheatEntries> </CheatTable>
These notes still apply:Code: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>112998</ID> <Description>"Change Exp gain on mission completion"</Description> <Options moHideChildren="1"/> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx } [ENABLE] aobscanmodule(MissionXPGain,$process,44 3B FD 41 0F 4E EF) registersymbol(MissionXPGain) alloc(MissionXP,$100,MissionXPGain) registersymbol(MissionXP) label(code) label(return) label(flat) label(mult) label(min) label(exit) MissionXP: dq 0 // pointer dd 0 // point override dd 0 // flat bonus dd (float)1 // multiplier dd 0 // backup code: mov [MissionXP],r14 add qword ptr [MissionXP],10 cmp [MissionXP+8],0 jng short mult mov r15d,[MissionXP+8] mult: cmp [MissionXP+10],(float)1 je short flat movss [MissionXP+14],xmm0 // backup cvtsi2ss xmm0,r15d mulss xmm0,[MissionXP+10] cvtss2si r15d,xmm0 movss xmm0,[MissionXP+14] // restore flat: cmp [MissionXP+C],0 jl short min add r15d,[MissionXP+C] min: cmp r15d,0 jge short exit xor r15d,r15d exit: cmp r15d,ebp cmovle ebp,r15d jmp return MissionXPGain: jmp MissionXP+18 db 90 90 return: {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} MissionXPGain: db 44 3B FD 41 0F 4E EF // cmp r15d,ebp // cmovle ebp,r15d unregistersymbol(MissionXPGain) unregistersymbol(MissionXP) dealloc(MissionXP) </AssemblerScript> <CheatEntries> <CheatEntry> <ID>112999</ID> <Description>"Gain fixed Exp (0 = normal gain)"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>MissionXP+8</Address> </CheatEntry> <CheatEntry> <ID>113000</ID> <Description>"Multiplier"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>Float</VariableType> <Address>MissionXP+10</Address> </CheatEntry> <CheatEntry> <ID>113001</ID> <Description>"Flat bonus exp"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>MissionXP+C</Address> </CheatEntry> <CheatEntry> <ID>113002</ID> <Description>"Current Experience"</Description> <ShowAsSigned>1</ShowAsSigned> <Color>FF8000</Color> <VariableType>4 Bytes</VariableType> <Address>[MissionXP]</Address> </CheatEntry> </CheatEntries> </CheatEntry> </CheatEntries> </CheatTable>
Note: The amount of points you get is set the moment the mission ends, not on the post-mission screen, so you need to activate this BEFORE you end the mission.
Also note: The post mission screen won't display the right amount of points you get with this, but if you compare your points before and after a mission, you should see the difference.
My "Guarantee machine event" script broke with season 3, so i updated it and also added a "Guarantee meteor impact" script for the new S3 event.
Force Machine EventForce Meteor EventCode: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>112953</ID> <Description>"Force Machine Event (Enable Before Mission Load)"</Description> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx } [ENABLE] aobscanmodule(SpecialEventSpawning,$process,0F 86 * * * * E8 * * * * 4* * * B*) registersymbol(SpecialEventSpawning) SpecialEventSpawning: db EB 04 {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} SpecialEventSpawning: db 0F 86 unregistersymbol(SpecialEventSpawning) </AssemblerScript> </CheatEntry> </CheatEntries> </CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>113007</ID> <Description>"Force Meteor Event (Enable Before Mission Load)"</Description> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx Guarantee meteor impact generation on mission load } [ENABLE] aobscanmodule(Season3EventSpawning,$process,0F 82 * * * * 49 8B * * 45 * * 48) registersymbol(Season3EventSpawning) Season3EventSpawning: db EB 04 {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} Season3EventSpawning: db 0F 82 unregistersymbol(Season3EventSpawning) </AssemblerScript> </CheatEntry> </CheatEntries> </CheatTable>
I'll also add my ammo scripts, since i think they also broke with the new update. In case anyone cares.
Magazine AmmoReserve AmmoCode: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>34219</ID> <Description>"Unlimited Magazine Ammo"</Description> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx } [ENABLE] aobscanmodule(ClipCount,$process,8B 81 38 06 00 00 48 89) alloc(newmem,$80,ClipCount) label(code) label(return) newmem: mov eax,[rcx+00000620] // amount of ammo spent imul eax,2 code: cmp [rcx+00000638],eax jl return mov eax,[rcx+00000638] // current ammo jmp return ClipCount: jmp newmem nop return: registersymbol(ClipCount) {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} ClipCount: db 8B 81 38 06 00 00 unregistersymbol(ClipCount) dealloc(newmem) </AssemblerScript> </CheatEntry> </CheatEntries> </CheatTable>
Minigun AmmoCode: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>34218</ID> <Description>"Unlimited Reserve Ammo"</Description> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx } [ENABLE] aobscanmodule(AOBAmmoCountA,$process,89 8B 34 06 00 00 48 8D) aobscanmodule(AOBAmmoCountB,$process,89 91 34 06 00 00 48 8D) alloc(newmem,$80,AOBAmmoCountA) registersymbol(AOBAmmoCountA) registersymbol(AOBAmmoCountB) registersymbol(AmmoCountCode2) label(exit1) label(return1) label(exit2) label(return2) newmem: cmp ecx,0 jg short exit1 mov ecx,[rbx+00000620] mov eax,[rbx+0000061C] exit1: mov [rbx+00000634],ecx jmp return1 AmmoCountCode2: // used on short reloads?? cmp edx,0 jg short exit2 mov edx,[rcx+00000620] mov eax,[rcx+0000061C] exit2: mov [rcx+00000634],edx jmp return2 AOBAmmoCountA: jmp newmem nop return1: AOBAmmoCountB: jmp AmmoCountCode2 nop return2: {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} AOBAmmoCountA: mov [rbx+00000634],ecx AOBAmmoCountB: mov [rcx+00000634],edx unregistersymbol(AOBAmmoCountA) unregistersymbol(AOBAmmoCountB) unregistersymbol(AmmoCountCode2) dealloc(newmem) </AssemblerScript> </CheatEntry> </CheatEntries> </CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>34229</ID> <Description>"Unlimited Minigun Ammo"</Description> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-11-06 Author : HenryEx } [ENABLE] aobscanmodule(ClipCountMinigun,$process,89 86 38 06 00 00 89) alloc(newmem,$40,ClipCountMinigun) label(code) label(return) newmem: cmp eax,[rsi+00000620] jge short code mov eax,[rsi+00000620] code: mov [rsi+00000638],eax jmp return ClipCountMinigun: jmp newmem nop return: registersymbol(ClipCountMinigun) {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} ClipCountMinigun: db 89 86 38 06 00 00 unregistersymbol(ClipCountMinigun) dealloc(newmem) </AssemblerScript> </CheatEntry> </CheatEntries> </CheatTable>
Here are all the 5 scripts merged, ty for your workHenryEx wrote: ↑Sun Nov 06, 2022 6:10 pm
I thought it was still working, but maybe that was just season pass exp and i updated normal exp for season 3 and forgot about it.
In any case, here's the updated level EXP and season EXP scripts, with better multiplier options - you can use non-integer multipliers now, like 0.5 or 3.8 or whatever.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>112998</ID>
<Description>"Change Exp gain on mission completion"</Description>
<Options moHideChildren="1"/>
<Color>00FF00</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(MissionXPGain,$process,44 3B FD 41 0F 4E EF)
registersymbol(MissionXPGain)
alloc(MissionXP,$100,MissionXPGain)
registersymbol(MissionXP)
label(code)
label(return)
label(flat)
label(mult)
label(min)
label(exit)
MissionXP:
dq 0 // pointer
dd 0 // point override
dd 0 // flat bonus
dd (float)1 // multiplier
dd 0 // backup
code:
mov [MissionXP],r14
add qword ptr [MissionXP],10
cmp [MissionXP+8],0
jng short mult
mov r15d,[MissionXP+8]
mult:
cmp [MissionXP+10],(float)1
je short flat
movss [MissionXP+14],xmm0 // backup
cvtsi2ss xmm0,r15d
mulss xmm0,[MissionXP+10]
cvtss2si r15d,xmm0
movss xmm0,[MissionXP+14] // restore
flat:
cmp [MissionXP+C],0
jl short min
add r15d,[MissionXP+C]
min:
cmp r15d,0
jge short exit
xor r15d,r15d
exit:
cmp r15d,ebp
cmovle ebp,r15d
jmp return
MissionXPGain:
jmp MissionXP+18
db 90 90
return:
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
MissionXPGain:
db 44 3B FD 41 0F 4E EF
// cmp r15d,ebp
// cmovle ebp,r15d
unregistersymbol(MissionXPGain)
unregistersymbol(MissionXP)
dealloc(MissionXP)
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>112999</ID>
<Description>"Gain fixed Exp (0 = normal gain)"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>MissionXP+8</Address>
</CheatEntry>
<CheatEntry>
<ID>113000</ID>
<Description>"Multiplier"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>Float</VariableType>
<Address>MissionXP+10</Address>
</CheatEntry>
<CheatEntry>
<ID>113001</ID>
<Description>"Flat bonus exp"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>MissionXP+C</Address>
</CheatEntry>
<CheatEntry>
<ID>113002</ID>
<Description>"Current Experience"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>[MissionXP]</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>112946</ID>
<Description>"Change PP gain on mission completion"</Description>
<Options moHideChildren="1"/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(SeasonXPGain,$process,7E 03 44 01 3F)
aobscanmodule(SeasonXPTerminal,$process,48 8B F8 8B 28 85 ED)
registersymbol(SeasonXPGain)
registersymbol(SeasonXPTerminal)
alloc(SeasonXP,$100,SeasonXPGain)
registersymbol(SeasonXP)
label(code)
label(dump)
label(return)
label(return2)
label(flat)
label(mult)
label(min)
label(exit)
SeasonXP:
dq 0 // pointer
dd 0 // point override
dd 0 // flat bonus
dd (float)1 // multiplier
dd 0 // backup
code:
mov [SeasonXP],rdi
jle return
cmp [SeasonXP+8],0
jng short mult
mov r15d,[SeasonXP+8]
mult:
cmp [SeasonXP+10],(float)1
je short flat
movss [SeasonXP+14],xmm0 // backup
cvtsi2ss xmm0,r15d
mulss xmm0,[SeasonXP+10]
cvtss2si r15d,xmm0
movss xmm0,[SeasonXP+14] // restore
flat:
cmp [SeasonXP+C],0
jl short min
add r15d,[SeasonXP+C]
min:
cmp r15d,0
jge short exit
xor r15d,r15d
exit:
add [rdi],r15d
jmp return
dump:
mov [SeasonXP],rax
mov rdi,rax
mov ebp,[rax]
jmp return2
SeasonXPGain:
jmp SeasonXP+18
return:
SeasonXPTerminal:
jmp dump
return2:
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
SeasonXPGain:
db 7E 03 44 01 3F
SeasonXPTerminal:
db 48 8B F8 8B 28
unregistersymbol(SeasonXPGain)
unregistersymbol(SeasonXPTerminal)
unregistersymbol(SeasonXP)
dealloc(SeasonXP)
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>112947</ID>
<Description>"Gain fixed points (0 = normal gain)"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>SeasonXP+8</Address>
</CheatEntry>
<CheatEntry>
<ID>112948</ID>
<Description>"Multiplier"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>SeasonXP+10</Address>
</CheatEntry>
<CheatEntry>
<ID>112949</ID>
<Description>"Flat bonus points"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>SeasonXP+C</Address>
</CheatEntry>
<CheatEntry>
<ID>112950</ID>
<Description>"Current Performance Points"</Description>
<ShowAsSigned>1</ShowAsSigned>
<Color>FF8000</Color>
<VariableType>4 Bytes</VariableType>
<Address>[SeasonXP]</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>34219</ID>
<Description>"Unlimited Magazine Ammo"</Description>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(ClipCount,$process,8B 81 38 06 00 00 48 89)
alloc(newmem,$80,ClipCount)
label(code)
label(return)
newmem:
mov eax,[rcx+00000620] // amount of ammo spent
imul eax,2
code:
cmp [rcx+00000638],eax
jl return
mov eax,[rcx+00000638] // current ammo
jmp return
ClipCount:
jmp newmem
nop
return:
registersymbol(ClipCount)
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
ClipCount:
db 8B 81 38 06 00 00
unregistersymbol(ClipCount)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>34218</ID>
<Description>"Unlimited Reserve Ammo"</Description>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(AOBAmmoCountA,$process,89 8B 34 06 00 00 48 8D)
aobscanmodule(AOBAmmoCountB,$process,89 91 34 06 00 00 48 8D)
alloc(newmem,$80,AOBAmmoCountA)
registersymbol(AOBAmmoCountA)
registersymbol(AOBAmmoCountB)
registersymbol(AmmoCountCode2)
label(exit1)
label(return1)
label(exit2)
label(return2)
newmem:
cmp ecx,0
jg short exit1
mov ecx,[rbx+00000620]
mov eax,[rbx+0000061C]
exit1:
mov [rbx+00000634],ecx
jmp return1
AmmoCountCode2: // used on short reloads??
cmp edx,0
jg short exit2
mov edx,[rcx+00000620]
mov eax,[rcx+0000061C]
exit2:
mov [rcx+00000634],edx
jmp return2
AOBAmmoCountA:
jmp newmem
nop
return1:
AOBAmmoCountB:
jmp AmmoCountCode2
nop
return2:
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
AOBAmmoCountA:
mov [rbx+00000634],ecx
AOBAmmoCountB:
mov [rcx+00000634],edx
unregistersymbol(AOBAmmoCountA)
unregistersymbol(AOBAmmoCountB)
unregistersymbol(AmmoCountCode2)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>34229</ID>
<Description>"Unlimited Minigun Ammo"</Description>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-06
Author : HenryEx
}
[ENABLE]
aobscanmodule(ClipCountMinigun,$process,89 86 38 06 00 00 89)
alloc(newmem,$40,ClipCountMinigun)
label(code)
label(return)
newmem:
cmp eax,[rsi+00000620]
jge short code
mov eax,[rsi+00000620]
code:
mov [rsi+00000638],eax
jmp return
ClipCountMinigun:
jmp newmem
nop
return:
registersymbol(ClipCountMinigun)
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
ClipCountMinigun:
db 89 86 38 06 00 00
unregistersymbol(ClipCountMinigun)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
<UserdefinedSymbols/>
</CheatTable>
Hi HenryEx, do you also have a 100% Cargo Crate script? I've been trying to figure that out myself but no success yet.
Just copy the whole code and paste it into the main CE window (ctrl+v or right click and paste).Pokeloose wrote: ↑Wed Nov 09, 2022 12:35 pmHi, i'm sorry, i'm new with CE, how do we use the code lines you give? I'm only use to download .CT files and i don't know how does it works, i've looking for internet and try to do ctrl+m to open the lua console to execute single scripts but i does not works.
I have one, yes. It spawns both cargo crate and a lost helmet, because the function that checks odds for crates and helmets is the same and i cba to differentiate between them, so the spawner always returns Yes for both. That way it's only a single byte change.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>113008</ID>
<Description>"Force Lost Pack / Cargo Crate (Enable Before Mission Load)"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-05-17
Author : HenryEx
}
[ENABLE]
aobscanmodule(CrateSpawning,$process,0F 2F * 77 * * * * * 74 * 85)
registersymbol(CrateSpawning)
CrateSpawning+3:
db EB
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
CrateSpawning+3:
db 77
unregistersymbol(CrateSpawning)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Hi henry, your code work well! However, I am facing issue of "Error while scanning AOB's: SpecialEventSpawning Error: Not all result found" for the forced machine code. May I know how can I solve this issue?HenryEx wrote: ↑Thu Nov 10, 2022 5:52 pmI have one, yes. It spawns both cargo crate and a lost helmet, because the function that checks odds for crates and helmets is the same and i cba to differentiate between them, so the spawner always returns Yes for both. That way it's only a single byte change.
Code: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable> <CheatEntries> <CheatEntry> <ID>113008</ID> <Description>"Force Lost Pack / Cargo Crate (Enable Before Mission Load)"</Description> <LastState/> <Color>0000FF</Color> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>{ Game : FSD-Win64-Shipping.exe Version: Date : 2022-05-17 Author : HenryEx } [ENABLE] aobscanmodule(CrateSpawning,$process,0F 2F * 77 * * * * * 74 * 85) registersymbol(CrateSpawning) CrateSpawning+3: db EB {$LUA} memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green {$ASM} [DISABLE] {$LUA} memrec.Color = 0x000000FF -- this is bright red {$ASM} CrateSpawning+3: db 77 unregistersymbol(CrateSpawning) </AssemblerScript> </CheatEntry> </CheatEntries> </CheatTable>
Yeah you're right, they changed the code and jump lengths in the last patch, had to adjust the script. Here's one that will work on Patch 3:
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>112953</ID>
<Description>"Force Machine Event (Enable Before Mission Load)"</Description>
<LastState/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : FSD-Win64-Shipping.exe
Version:
Date : 2022-11-11
Author : HenryEx
}
[ENABLE]
aobscanmodule(SpecialEventSpawning,$process,0F 2F * 76 * E8 * * * * 4C 8B * * * * * * 48 8D)
registersymbol(SpecialEventSpawning)
SpecialEventSpawning:
db EB 03
{$LUA}
memrec.Color = 0x0000FF00 --format AABBGGRR this is bright green
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000000FF -- this is bright red
{$ASM}
SpecialEventSpawning:
db 0F 2F
unregistersymbol(SpecialEventSpawning)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>