His table still works
Also, I fucked up on a date and needed to redo it
This is really sloppy code, but its usable
If you want to restart a date,
1. Enable cheat, progress through dialog
2. Change Current to 1
3. Change Last to 0
4. Save the game in a NEW UNUSED slot
5. Close the Game
6. Load the 2nd save
Its still pretty buggy, because some options won't appear on the 2nd time around, but it let me fix my 3rd date with cassie
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>47</ID>
<Description>"Date Info (progress through dialog)"</Description>
<Options moHideChildren="1"/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
{$lua}
LaunchMonoDataCollector()
{$asm}
aobscanmodule(INJECT,GameAssembly.dll,38 86 88 00 00 00 75 0F) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
label(Addy)
newmem:
code:
mov [Addy],esi
cmp [esi+00000088],al
jmp return
Addy:
INJECT:
jmp newmem
nop
return:
registersymbol(INJECT)
registersymbol(Addy)
[DISABLE]
INJECT:
db 38 86 88 00 00 00
unregistersymbol(Addy)
unregistersymbol(INJECT)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+2E530E
GameAssembly.dll+2E52F6: 8B F8 - mov edi,eax
GameAssembly.dll+2E52F8: 83 C4 08 - add esp,08
GameAssembly.dll+2E52FB: 85 FF - test edi,edi
GameAssembly.dll+2E52FD: 74 39 - je GameAssembly.dll+2E5338
GameAssembly.dll+2E52FF: 6A 00 - push 00
GameAssembly.dll+2E5301: 57 - push edi
GameAssembly.dll+2E5302: E8 49 9B FE FF - call HushHush.TMP_Juicy.get_Typing
GameAssembly.dll+2E5307: 83 C4 08 - add esp,08
GameAssembly.dll+2E530A: 84 C0 - test al,al
GameAssembly.dll+2E530C: 75 1B - jne GameAssembly.dll+2E5329
// ---------- INJECTING HERE ----------
GameAssembly.dll+2E530E: 38 86 88 00 00 00 - cmp [esi+00000088],al
// ---------- DONE INJECTING ----------
GameAssembly.dll+2E5314: 75 0F - jne GameAssembly.dll+2E5325
GameAssembly.dll+2E5316: 6A 00 - push 00
GameAssembly.dll+2E5318: 6A 00 - push 00
GameAssembly.dll+2E531A: 6A 01 - push 01
GameAssembly.dll+2E531C: 56 - push esi
GameAssembly.dll+2E531D: E8 1E D2 FF FF - call HushHush.Date2.Next
GameAssembly.dll+2E5322: 83 C4 10 - add esp,10
GameAssembly.dll+2E5325: 5F - pop edi
GameAssembly.dll+2E5326: 5E - pop esi
GameAssembly.dll+2E5327: 5D - pop ebp
}
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>48</ID>
<Description>"Is End"</Description>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>Byte</VariableType>
<Address>[Addy]+4a</Address>
</CheatEntry>
<CheatEntry>
<ID>49</ID>
<Description>"Current'"</Description>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>Byte</VariableType>
<Address>[Addy]+24</Address>
</CheatEntry>
<CheatEntry>
<ID>50</ID>
<Description>"Last"</Description>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>Byte</VariableType>
<Address>[Addy]+28</Address>
</CheatEntry>
<CheatEntry>
<ID>52</ID>
<Description>"Secrets"</Description>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>Byte</VariableType>
<Address>[Addy]+3c</Address>
</CheatEntry>
<CheatEntry>
<ID>51</ID>
<Description>"Easter Eggs"</Description>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>Byte</VariableType>
<Address>[Addy]+40</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>