made a table for DRAGON QUEST HEROES™ Slime Edition.
Updates:
Update6.5
- updated Enable, fixed the potential crash some of you were having. thanks to predprey for the report and fix.
Update6.4
- updated Ignore MP, fixed the AOB, and changed the functionality a little bit.
Update6.3
- forgot to actually upload the table on the last update...
- updated Undead, you may make it cover Monster Minions now.
- added Ignore MP into [Battle] scripts
Update6.2
- updated the item ID's dorpdown list with Jessen's findings.
- updated the Add Item option to include Orbs and Accessories.
Update6.1
- added Cam Zoom Alt (Battle Only)
Update6
- added Ignore Ingredients into Misc. script category.
Update5.1
- updated Cam Zoom, it should work in battle now.
Update5
- added a Cam Zoom script based on the info mausi125 shared with me. many thanks!
Update4.1
- updated EXP Multiplier, you should retain the EXP after battle now.
- updated 2 of the Battle pointers (Gold Earned in Battle and Yggdrasil Leaves, they were using an outdated pointer base, they should display properly.
Update4
- updated Undead, Inf. MP, Instant Tension (name changed to Ignore Tension Bar), and Inf. Tension Duration (name changed to Inf. High Tension Duration), they should work properly after you can change characters now.
- also the functionality of some of the scripts mentioned above are slightly changed, check the description below for details.
- updated Item Zero Cost, it should work in Orb Shop now.
- changed the table layout a bit, scripts and pointers are categorized now.
- added Ignore Yggdrasil Leaves, Inf. Spellcaster, EXP Multiplier, and Gold Multiplier into Battle script category.
- added Ignore Gold and Ignore Mini Medals into Misc. script category.
- added an option that allows you to add items easily, see descriptions below for details.
- added some pointers, they are quite messy though, check the table for details.
Update3
- updated Undead, fixed a careless mistake, it won't crash the game now.
- added Instant Tension, Inf. Tension Duration, and Game Speed Mod
Update2.1
- added pointers to EXP and Lv.
Update2
- added Ignore Skill Points
Update1
- added 2 options: Inf. MP, and Item Zero Cost
///
Options:
//
[Battle] scripts:
Undead
- character's HP still decrease when being hit, but won't be killed.
- you can choose to apply it to the (controlling) Player only, the whole Party, or the whole Party + Monster Minions.
Inf. MP
- character's MP won't decrease at all.
- you can choose to apply it to the (controlling) Player only, or the whole Party.
- I personally prefer Ignore MP instead.
Ignore MP
- character may cast spells / use abilities with zero MP (MP still decrease when casting spells / using abilities).
Ignore Tension Bar
- controlling character may enter high tension mode any time, even if the tension bar is empty.
Inf. High Tension Duration
- character's tension bar won't decrease once enter high tension mode, you won't be forced to exit the mode until you use coup de grâce manually.
- you can choose to apply it to the (controlling) Player only, or the whole Party.
Ignore Yggdrasil Leaves
- allows you to revive allies without Yggdrasil Leaf (quantity would still decrease when you use it).
Inf. Spellcaster
- bullet won't decrease.
EXP Multiplier
- default multiplier: x2
Gold Multiplier
- default multiplier: x2
//
[Misc.] scripts:
Item Zero Cost
- all items' price are 0. works in both Orbs Shop and Equipment Shop.
- Ignore Gold may be a better choice though.
Ignore Gold
- allows you to buy items in shops without any Gold (Gold would still decrease when you do a purchase).
Ignore Mini Medals
- allows you to exchange any items without any Mini Medal (Mini Medal's quantity would still decrease when you exchange something).
Ignore Ingredients
- allows you to create any items without any ingredients (ingredients' quantity would still decrease when you create something).
Ignore Skill Points
- allows you to learn skills with zero Skill Points (Skill Points would still decrease when learning skills).
Cam Zoom:
- when activated, press numpad- to zoom in, numpad+ to zoom out, numpad. to back to default zoom. hold shift to zoom faster.
- Zoom Speed base can be changed via the table.
- can't use together with Cam Zoom Alt (Battle Only).
Cam Zoom Alt (Battle Only)
- when activated, press numpad- to zoom in, numpad+ to zoom out, numpad. to back to default zoom. hold shift to zoom faster.
- Zoom Speed base can be changed via the table.
- works in battle only.
- can't use together with Cam Zoom.
Game Speed Mod
- the speed hack version I'm using doesn't work on this game, made this script to achieve slow-mo instead.
- when the script is activated, edit the value of "x?" to manipulate the game speed, or press the following keys to change the speed in-game. (they are just CE hot-keys, you may change them if you don't like them, or add new hot-keys to speed up the game if you want.)
-- R > 0.4
-- T > 0.6
-- F > Disable (follow the game's own speed again.)
//
[Inventory] pointers:
- Gold, Mini Medals, Ingredient Bag Size, and Equipment Bag Size.
-- Ingredient Bag Size should not exceed 150.
-- forgot to check the codes for Equipment Bag Size, if you know what the max size is, please let me know and I'll edit this post.
- Highlighted Item's ID and Quantity.
-- you need a custom value type for ID to work properly. see the end of the post for details on how to add the custom type.
-- you may "transform" the item by changing the ID, you should not change an ingredient into an equipment though (and vice-versa).
-- there's a dropdown list added for the ID, but it's far (far far far) from complete though, feel free to share your findings and I'll add them to the table later.
- you can add a new item easily under the [Inventory] pointers too, here's the instruction:
Quote:
1. activate/freeze all these scripts/header: "Enable>[Pointers]>[Inventory]>[Add Item]".
2. access the Inventory menu in-game.
3. select an item from the ID's dropdown list.
4. enter the quantity of the item you want to add in the Quantity. (note that Quantity doesn't matter if you're adding Equipments, the table would always add only 1 for Equipments.)
5. change Status to "Adding...".
6. the Status should change back to "Waiting..." almost instantly (depends on how much item you own).
7. table should have added the item to a new slots if it's an equipment, or if you don't currently own the ingredient. if you have the ingredient already, the table would just add to its quantity. the table would also limit the quantity after adding under 99.
8. now enter (or re-enter depends on where you are in the menu) the sub-menu depends on the item type to see the changes.
- you may only add/edit ingredients and equipments (weapons/shields/orbs/accessories) for now, may add support to other item types later.
//
[SP/EXP/Lv./Skills] pointers:
- change the value of Character to view the info of different character.
- you can enter the "ID" manually or choose from the dropdown list.
- check the table yourself if you're interested.
//
[Battle] pointers:
- too lazy to type more, check the table yourself if you're interested.
///
Notes:
- table made with AOB scans.
- table used vng21092's aobscan lua script for some of the injection points. so, when asked "This table contains a lua script. Do you want to run it?", CLICK YES.
- almost all of the item IDs are found by Jessen.
- you need a custom type for Highlighted Item's ID to work properly. here's how:
Quote:
1. hook CE to the game first, but don't load the table yet.
2. on the upper part of the CE window, the scan value part, you should see a dropdown box next to the "Value Type", right click on that dropdown box, and click "Define new custom type (Auto Assembler).
3. on the pop-up window, copy and paste the following onto it:
Code:
alloc(ConvertRoutine,1024)
alloc(ConvertBackRoutine,1024)
alloc(TypeName,256)
alloc(ByteSize,4)
alloc(UsesFloat,1)
TypeName:
db 'DQH_IID',0
ByteSize:
dd 4
UsesFloat:
db 0 //Change to 1 if this custom type should be treated as a float
//The convert routine should hold a routine that converts the data to an integer (in eax)
//function declared as: stdcall int ConvertRoutine(unsigned char *input);
//Note: Keep in mind that this routine can be called by multiple threads at the same time.
ConvertRoutine:
//jmp dllname.functionname
[64-bit]
//or manual:
//parameters: (64-bit)
//rcx=address of input
mov eax,[rcx] //eax now contains the bytes 'input' pointed to
shr eax,18
shl eax,18
xor eax,[rcx]
ret
[/64-bit]
[32-bit]
//jmp dllname.functionname
//or manual:
//parameters: (32-bit)
push ebp
mov ebp,esp
//[ebp+8]=input
//example:
mov eax,[ebp+8] //place the address that contains the bytes into eax
mov eax,[eax] //place the bytes into eax so it's handled as a normal 4 byte value
pop ebp
ret 4
[/32-bit]
//The convert back routine should hold a routine that converts the given integer back to a row of bytes (e.g when the user wats to write a new value)
//function declared as: stdcall void ConvertBackRoutine(int i, unsigned char *output);
ConvertBackRoutine:
//jmp dllname.functionname
//or manual:
[64-bit]
//parameters: (64-bit)
//ecx=input
//rdx=address of output
//example:
//mov [rdx],ecx //place the integer the 4 bytes pointed to by rdx
or [rdx],ecx
ret
[/64-bit]
[32-bit]
//parameters: (32-bit)
push ebp
mov ebp,esp
//[ebp+8]=input
//[ebp+c]=address of output
//example:
push eax
push ebx
mov eax,[ebp+8] //load the value into eax
mov ebx,[ebp+c] //load the address into ebx
mov [ebx],eax //write the value into the address
pop ebx
pop eax
pop ebp
ret 8
[/32-bit]
4. click OK. now the custom type should have been added to your CE, you won't need to add it again next time.
5. load the CT. enjoy~
How to use this cheat table?
- Install Cheat Engine
- Double-click the .CT file in order to open it.
- Click the PC icon in Cheat Engine in order to select the game process.
- Keep the list.
- Activate the trainer options by checking boxes or setting values from 0 to 1