It seems some offsets are mainly the differences in the code from the first game. I'm novice when it comes to creating tables, but I modified Cielos script from the first game for Inf MP and it's working for me in this second game.
I haven't figured out the new offsets for calculating the Player list and current player, so this script probably gives Infinite MP to everyone. Maybe pox or Cielos can modify it better than I can. I'm attaching a modified CT file and the code I added in case anyone wants it.
Code: Select all
<CheatEntry>
<ID>19</ID>
<Description>"Inf. MP"</Description>
<Options moHideChildren="1"/>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(MPWriteOnCastAOB,DQH2.exe,F3 0F 11 91 30 02 00 00 F3 0F 2C C2)
registersymbol(MPWriteOnCastAOB)
///
registersymbol(bInfMP)
alloc(bInfMP,1)
///
alloc(newmem,2048,MPWriteOnCastAOB) //"DQH.exe"+242D46)
label(returnhere)
label(originalcode)
label(exit)
label(doinfmp)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
push rbx
doinfmp:
movss xmm2,[rcx+230]
originalcode:
pop rbx
pop rax
movss [rcx+00000230],xmm2
exit:
jmp returnhere
///
///
MPWriteOnCastAOB: //"DQH.exe"+242D46:
jmp newmem
nop
nop
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
dealloc(bInfMP)
MPWriteOnCastAOB: //"DQH.exe"+242D46:
db F3 0F 11 91 30 02 00 00
//Alt: movss [rcx+00000208],xmm2
unregistersymbol(MPWriteOnCastAOB)
unregistersymbol(bInfMP)
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>251</ID>
<Description>"Apply to"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:Player
1:Party
</DropDownList>
<LastState Value="0" RealAddress="13FFF0000"/>
<VariableType>Byte</VariableType>
<Address>bInfMP</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
EDIT1: I figured out how to get CPlayer and Player list by modifying Cielos code for this game. I've updated the Inf MP script to only affect current player or whole party.
EDIT2: I found an Infinite Yggdrasil Leaves Cheat.
EDIT3: I added an Infinite Skill Point cheat.
EDIT4: I added a Set Ingredient Quantity To 80 cheat. You enable it and view your ingredients and they get set to 80. The script now contains a LUA script similar to Cielos first Dragon Quest Heroes script. Say YES to run the LUA when you open the cheat table as this cheat depends on it.
EDIT5: I found some codes to help with Monster Defeated battle stats and also a Quest Monster defeated multipliers. This helps complete things faster. You don't have to kill all the monsters it says when you use these multipliers. I tested the Quest multiplier and it works well for me.
EDIT6: It appears Infinite Skill Points didn't work for anyone except the 2 main characters. I fixed this. Not sure anyone is using much of it since I hear no complaints. No worries, I'm enjoying learning to make cheats. I also updated pox911's Damage script to give the option for a damage multiplier instead of one hit kill. You set it to something other than 0 and it multiplies all your damage (your party's too). Don't turn on one hit kill option or that will override things.
EDIT7: Found another issue with Infinite Skill Points. If you kept it activated, you didn't earn any skill points leveling up. I fixed this issue also. I'm removing my previous edit file.
EDIT8: Fixed the Monster Defeated Multiplier (it now works with rewards) and added an Infinite Mini Medals (they won't decrease when turning them in)
EDIT9: By popular demand, I took another stab at Proficiency Multiplier and found something that works for me. Give it a try.
EDIT10: Forgot to check other characters. I fixed Proficiency Multiplier to work for others besides hero or heroine.
EDIT11: Added in a code to always have 50 Party Power Points. I think you can enable everything with that many, but I haven't played to the end of the game to be honest. Anyway, the maximum you can normally get in game is 14, so 50 might be enough.
EDIT12: Added in some Pointers to the Characters Level, EXP, Skill Points. You enable the Pointers option and it's under the Camp option. You have to view the Attributes of the characters at least once. I borrowed code from Cielos table on the first Dragon Quest Heroes, but had to modify it mostly for this game. I've learned much since doing this table as this was my first major table. Offsets are different if not Lazarel and Teresa, so use the right option depending on which character you select.
EDIT13: Tried picking this game back up for a few. Came up with Base Stats pointers and option to change them to a minimum value when viewing attributes. The base stats seem to point to a table based on current level. The heroes Teresa and Lazarel share same table. The pointers update when you view the character in the attributes screen (I would choose to view one at a time or pointer may be unstable).
EDIT14: Found Party Pointers due to popular demand. You can choose the first Dragon Quest Heroes players, but they won't show up in town as in your party, but they load up when in the field fighting. I did some limited testing and it appeared to work fine for me controlling Yangus in the field.
EDIT15: Made Enemy Damage Multiplier accept floating point values (So you can choose 2.5 multiplier for example) per request.