So, I have NO IDEA how to properly AOBscan this for gamepass. I leave it to whoever handles those.
In the mean time, here's a script to force the bobber in the fishing minigame to be dead in the center. You know. To give the fish a sporting chance.
The guardian can go screw itself.
I actually set it up with a hotkey and flicked it on and off while fishing: Heads up that the thing tends to ROCKET to one side once you turn it off, so watch it.
Code: Select all
{ Game : P5R.exe
Version: 1.02
Date : 2022-12-06
Author : ShaRose
This script forces the bobber during the fishing minigame to stay DEAD CENTER
}
[ENABLE]
aobscanmodule(superfish,P5R.exe,F3 44 0F 11 9E D0 12 00 00) // should be unique
alloc(newmem,$1000,superfish)
label(code)
label(return)
newmem:
mov [newmem+FF],3F000000
movss xmm11,[newmem+FF]
code:
movss [rsi+000012D0],xmm11
jmp return
superfish:
jmp newmem
nop 4
return:
registersymbol(superfish)
[DISABLE]
superfish:
db F3 44 0F 11 9E D0 12 00 00
unregistersymbol(superfish)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: P5R.exe+15BFDAE
P5R.exe+15BFD73: 0F 57 C9 - xorps xmm1,xmm1
P5R.exe+15BFD76: F2 0F 5A C8 - cvtsd2ss xmm1,xmm0
P5R.exe+15BFD7A: F3 44 0F 5C DA - subss xmm11,xmm2
P5R.exe+15BFD7F: 41 0F 28 C2 - movaps xmm0,xmm10
P5R.exe+15BFD83: F3 0F 59 86 0C 1C 00 00 - mulss xmm0,[rsi+00001C0C]
P5R.exe+15BFD8B: F3 0F 58 86 F8 1B 00 00 - addss xmm0,[rsi+00001BF8]
P5R.exe+15BFD93: F3 44 0F 59 D9 - mulss xmm11,xmm1
P5R.exe+15BFD98: F3 44 0F 59 1D AF 21 58 00 - mulss xmm11,[P5R.exe+1B41F50]
P5R.exe+15BFDA1: F3 0F 11 86 F8 1B 00 00 - movss [rsi+00001BF8],xmm0
P5R.exe+15BFDA9: F3 44 0F 58 DA - addss xmm11,xmm2
// ---------- INJECTING HERE ----------
P5R.exe+15BFDAE: F3 44 0F 11 9E D0 12 00 00 - movss [rsi+000012D0],xmm11
// ---------- DONE INJECTING ----------
P5R.exe+15BFDB7: 48 8B 82 B0 00 00 00 - mov rax,[rdx+000000B0]
P5R.exe+15BFDBE: 0F 2F 40 1C - comiss xmm0,[rax+1C]
P5R.exe+15BFDC2: 76 27 - jna P5R.exe+15BFDEB
P5R.exe+15BFDC4: 41 B1 01 - mov r9l,01
P5R.exe+15BFDC7: 48 81 C2 90 00 00 00 - add rdx,00000090
P5R.exe+15BFDCE: 45 0F B6 C1 - movzx r8d,r9l
P5R.exe+15BFDD2: 48 8B CE - mov rcx,rsi
P5R.exe+15BFDD5: E8 F6 7A 00 00 - call P5R.exe+15C78D0
P5R.exe+15BFDDA: C7 86 0C 1C 00 00 00 00 80 3F - mov [rsi+00001C0C],3F800000
P5R.exe+15BFDE4: 44 89 AE F8 1B 00 00 - mov [rsi+00001BF8],r13d
}
Edit:
Also found the 4 byte variable that keeps track of how many fish you've caught. Freeze to anything below 7 to just keep fishing. It doesn't stop you from having to go back to cash in or Morgana saying it's late, but you can just keep going back without having to leave unless you want to.
Also, while you can set to to 6 to get the guardian first time, you can't keep respawning him, and each time you'll have to go back to cash in.