Author Topic: Third Eye effect.  (Read 950 times)

Mauron

  • Guru of Reason Emeritus
  • Errare Explorer (+1500)
  • *
  • Posts: 1764
  • Nu-chan
    • View Profile
    • Maurtopia
Third Eye effect.
« on: December 14, 2014, 01:12:24 pm »
Despite what the menu shows you, the Third Eye does not double your Evade. In battle, it actually gives you 2.5x your Evade. There is a 2x Evade status, but as far as I can tell, it is not actually used.

Information gained from hacking the ROM.

sqykly

  • Earthbound (+15)
  • *
  • Posts: 17
    • View Profile
Re: Third Eye effect.
« Reply #1 on: April 01, 2015, 06:44:03 pm »
It sounds like you're disassembling, and starting to wonder why they keep dividing and multiplying by 1.  I haven't published what I have disassembled, and as soon as I read this post I regretted it, because you're about to go through something long and painful for no reason.

Tell me what you are interested in learning by disassembling, and I will prioritize that as I clean up my stuff to publish.  I assure you that if it has anything to do with battle mechanics, I have it.  The only thing remaining on my to-do list when I put the project aside was mapping all the NPC techs i.e. which enemies are using which entries into the NPC tech table.  I have both PC & NPC tech tables fully dumped in human-readable format, though.  As a starting point, here are the names I gave the tags in all the tagged union structures, which were cleaned up pretty good to begin with:

Tech Effects
0 healByMagic : standard healing
1 clearStatus : also used for revive depending on flags
2 inflictStatus
3 normalDamage
4 doNothing : can't find this used, they just leave the tech field 0 instead
5 absorb
6 steal
7 healByMagicAndCasterHp : haven't seen this used, and it's pretty wacky
8 repeatNormalDamage : for techs that pop damage numbers 1 at a time
0x29 healAllByMagic : from here on I'm a lot less sure that these are categorized correctly
0x2A reviveAll : don't remember them coming up in the tech tables
0x2B inflictStatusAll : but the function pointers are there
0x2C clearDead40 : clears 0x40 from the status byte that carries the dead bit

Combo/Weapon Modifiers
0 mulIfCritical : most weapons have this
1 noModifier : never used, they just leave the modifier blank instead
2 mulDiv : for re-using tech table entries with increased damage in combo tech
3 multiplyIfTargetBit : more damage against magic monsters, etc
4 mulByDeadFriendlies : DoomSickle, I believe?
5 randomBySeconds : Lucca's gun with the "random" multiplier, not really random at all
6 inflictRandomStatus : 40% lock, 25% stop, 25% sleep, 10% poison
7 inflictStatusIfTargetBit : Lucca's gun that stops robots?
8 inflictStatusWithProbability : used all over the place
9 leaveTargetWithOneHp : as it says
10 modifyDamageForElement : doesn't happen otherwise
11 mulDivAndElement : combines 2 & 10 exactly
12 setDp1AwithProbability : something to do with stealing items
13 fullHealAndOrClearStatus : a flag decides full heal or no, clears a bunch of debuff bits
14 chanceToHalveHp : there's a field for probability, but I never see it used
15 removeBitsFromTargetOffset : Lavos attack that dispels your buffs
16 mulByAttackerHpMod10 : one of Robo's weapons, I think?
17 killAttackerOrTarget : perfectly capable of killing attacker, but target is always specified
18 killTargetIfBitAndRandomOrMoveBits : I believe this is for Magus black hole
19 doubleDamageOr9999 : either doubles damage or sets it to 9999 depending on its field
20 setBitsAtTargetOffset : yet another wacky way to add status effects

Know any convenient way to map those NPC techs?  Like someone who knows where monsters store their tech lists?

Mauron

  • Guru of Reason Emeritus
  • Errare Explorer (+1500)
  • *
  • Posts: 1764
  • Nu-chan
    • View Profile
    • Maurtopia
Re: Third Eye effect.
« Reply #2 on: April 05, 2015, 11:59:34 pm »
I want to disassemble the entire ROM eventually, but that will likely not happen.

So far I've focused mostly on bank $C1, with a little from banks $C2, $FD, and $FF.

I've got a lot of AI routines disassembled, along with all the tech animations. After that it gets a little scattered in what I do and don't have.

At some point I'm going to finish the website I started for logging my disassembly. Really, I promise. >_>