User:Kimbles/Medarot Navi Hacking Notes
Just somewhere to post the stuff I've figured out. :D
Knowing how to edit stats is pretty useful, since a few Medarots got (accidentally) screwed over with 0-use head parts, and it would be nice to fix that... Also makes it easier to find all the parts info for the wiki. XD
Tools and stuff
Complete text table (including kanji):
Use this to read/dump the text in a hex editor.
Parts data
Parts data is stored in 3 main sections. One contains the part names, model numbers, and some basic information (male or female, whether it's used for medachange, etc). The second contains the rest of the information including in-battle effects and all of the numeric stats. The third includes the same information as the the second, but for when the part is Medachanged (left blank for non-Medachanging Medarots).
It lists one part at a time for each Medarot in the same order as the Medarot list (all head parts, then all right parts, etc.) for each section. Addresses are as follows:
Section 1 (names, etc.) Head: 0x95B44 Right: 0x96724 Left: 0x97304 Legs: 0x97EE4 Section 2 (stats, etc.) Head: 0x98AC4 Right: 0x991E4 Left: 0x99904 Legs: 0x9A024 Section 3 (medachange stats) Head: 0x9A4E4 Right: 0x9AC04 Left: 0x9B324 Legs: 0x9BA44
Interestingly enough, the game lists both Tinpets (male and female) as Medarots internally, but most of their stats are blank so they're not actually usable. They have model numbers though! (BAS-01BH and BAS-05BH, probably from "Base", with the BH signifying they're pre-Navi Medarots designed by Horuma Rin.)
Section 1
Here, each part has 8 bytes for its model number, 8 bytes for its name, and 3 bytes of data.
Format: /M/M/M/M/M/M/M/M/N/N/N/N/N/N/N/N/ /A/B/C/D/ M: Model number (as text) N: Name A: Attribute, gender, and Medachange type B: Medachange ID? C: Unknown. D: End byte (always 00)
- The first data byte (A) decides several things:
The first digit (or "nibble") decides whether the part is for a male or female tinpet, as well as what type of Medachange it uses (shift or power).
0 = male, shift (or no Medachange) 1 = female, shift (or no Medachange) 2 = male, power 3 = female, power
The second nibble decides the part's attribute, which decides which Medals it goes best with.
Attributes: 0 = Speed 1 = Power 2 = Status 3 = Defense 4 = Set-up 5 = Recovery 6 = Cancel 7 = Transform 8 = Disrupt Higher values just give glitchy stuff.
So for example, Blazer-Multi's head part has 13, which makes it female with a shift-type Medachange and the defense attribute.
- The second data byte (B) is 00 for all non-medachanging Medarots. For Medachanging Medarots, it seems to match for all parts on the Medarot, so this might be what it uses to check if the parts are a matching set. Setting it to a matching non-00 value on all of Windclap's parts actually allows it to Medachange, although into a glitchy mess because it has no sprite and its Medachange stats are blank. (I need to mess around more with this.)
- Lastly, the third byte (C) has a fairly wide range of values, but I have no idea what it does. :/
Section 2
Here, each head/arm part has 10 bytes of data, and leg parts only have 7.
Heads/Arms
Format: /A/B/C/D/E/F/G/H/I/J/K/L/ A: Action B: Skill/pierce C: Armor value D: Success value E: Power value F: Uses (heads), AP cost (arms) G: Target(s) H: Range minimum I: Range maximim J: Unknown K: Blank (always 00) L: End byte (always 00)
- There are 77 (4C) possible actions, so I'm not going to list them all...
- The first nibble of the skill byte decides whether the part "pierces" (carries damage/healing over onto other parts). No is 0, yes is 1. The second nibble decides the skill:
Skills: 0 = Strike 1 = Shoot 2 = Berserk 3 = Snipe 4 = Protect 5 = Set-up 6 = Heal 7 = Special 8 = Support 9 = Disrupt
- Armor can go up to 255 (FF), but other numbers only display up to 99 (63). I'm not sure they work properly when they're that high, though.
- There are 8 possible target types...
Targets: 00 = Equip 01 = Field 02 = 1 Ally 03 = All Allies 04 = 1 Enemy 05 = All Enemies 06 = 1 Any 07 = All Medarots
- Like above, there's one byte that's different between Medarots that I haven't figured out the effect of.
Legs
Format: /A/B/C/D/E/F/G/H/ A: Leg type B: Armor C: Speed D: Mobility E: Defense F: Physical G: Ranged H: End byte (always 00)
- There are 7 possible leg types.
Legs types: 00 = Flying 01 = Hover 02 = Multi-leg 03 = 2-Leg 04 = Wheeled 05 = Tank 06 = Water
- The rest are numeric stats which behave like in heads/arms.
Section 3
This section has the stats for Medachanged parts, and appears to use the exact same format as section 2. Medarots that don't Medachange (which is most of them) have all of their stats set to 00 here.
That's it!