Dragon Quest IX change hero starting class using a hex editor ?

Lluffy

Member
OP
Newcomer
Joined
May 19, 2022
Messages
15
Trophies
0
Age
50
Location
London
XP
95
Country
United Kingdom
Hi,

As written in title i would like to change the "hero" starting class from minstrel to whatever i want (for exemple, armamentalist)
I think it's possible with an hex editor but i don't have any clue on how to find the good data.

Thank you in advance for your help, it will be appreciated.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,411
Country
United Kingdom
Hex editors are remarkably basic tools. If you see such a guide it is usually only the how to do something after a whole bunch of research and calculation has happened that you did not see.

Two main approaches, though both start by finding cheats.

Class value will typically be like any other stat, health/mana value, inventory item or the like and found much the same way with cheats. Get to the point the in the game where you can change* class and do that repeatedly for a single character (do it for different and they might well use different areas to note class), searching each time you change and maybe also a round or two of leave it alone, allow the game to idle a bit and then search for things that remained the same to hopefully cause any background animations/timers/whatever to also be eliminated. https://web.archive.org/web/20080309104350/http://etk.scener.org/?op=tutorial is for the GBA but the principle is the same regardless of system https://doc.kodewerx.org/hacking_nds.html if you need to know how DS cheat codes are encoded.
Once you found location then try all the various numbers you can think to put in there, this is also how hidden classes, play as boss classes and other such things are found.
I mentioned other characters, it might be in the same value you just found, it might be separate for each party member or separate party member.

*some games might change class when merely hovering over the option, others will have to have you press accept. Assume it is the latter until proven otherwise.

Anyway once this location is found you have two main options.
1) Make a cheat (which you can hardcode with stuff like DSATM) to select whatever you want, and start a new game with it forcing whatever you want in there, disabling when you want to start shifting to something else. You could also edit a savestate but that is just a means of doing a cheat.

2) Figure out where the data is seeded from. This would also be the how you do it with a hex editor eventually. If you are lucky you find the data after a new game is started, search the ROM and a savestate for it and then find it there. If you are not lucky then you have to do an activity called tracing to find what file or part of the code set those values to be what they are initially. https://www.romhacking.net/documents/361/ is for an old command line GBA emulator and for both GBA and DS we are probably suggesting no$gba debug which is freeware these days but the principle is much the same. That is to say reset everything and go to start a new game, you know where the character stats will land in RAM courtesy of your cheat so set a break on write to that area. Hopefully the break on write (bpw) is copied from another area of the binary (would be my bet but not a large one), or a file that started out in the file system somewhere (less likely on an RPG than it is for a more static class approach) and thus you can edit the starting values/stats/whatever.

3) would be you attack the save game. Principle is much like cheating except you will also want to recreate or bypass the hashing options which is a fairly difficult project if you are starting from the position you are presumably in right now. If there is already a save editor (don't know offhand if there is by Dragon Quest would be a better bet for one) or you read tracing above and reckon it is not so bad (whatever reads the hash will have a "is correct/is not correct?" check you can easily replace to always take the is good path, and then probably have the game do the hash properly next time you save such that you can go back to even a stock game).

Edit. I see save game editors already exist. You could use that to see a cheat if you have several identical saves and swap between them to see what changes and where the data lands in RAM. Same general idea of change what you can minimally and move from there, that or give up having it from the very start and instead the very first option to save.
 
  • Like
Reactions: Coolsonickirby

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    SylverReZ @ SylverReZ: https://www.youtube.com/watch?v=tDJhdhkd0w0