øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=2134.msg24490e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index5ac7-3.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=2134.45e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index5ac7-3.html.zxeAh^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈ àŒKOKtext/htmlISO-8859-1gzip8:ÖKÿÿÿÿÿÿÿÿWed, 11 Mar 2020 01:56:13 GMT0ó°° ®0®P®€§²ð®dAh^ÿÿÿÿÿÿÿÿÙ&K FFV Viewer

Author Topic: FFV Viewer  (Read 20104 times)

x0_000

  • Siren
  • *
  • Posts: 72
    • View Profile
Re: FFV Gear Viewer
« Reply #45 on: December 08, 2015, 05:39:32 PM »
Reverse Polarity swaps the party's rows iirc.

samurai goroh

  • FF5 Hacker
  • *
  • Posts: 221
  • Gender: Male
    • View Profile
    • My page
Re: FFV Gear Viewer
« Reply #46 on: December 09, 2015, 04:18:42 PM »
Version 3.2 is out:
- now you can see Enemy info from GBA

** There is some missing info for GBA:
- AI script for bosses (cant find it)
- Special info

One interesting thing is that GBA version uses FC the same way as FD (action group), but only when we have a group of 3 actions with 33% chance each.
What 'Mirror'/'Reverse Polarity' does?
I need more info on GBA, please share as much as you can :)

P.S. I'm moving toward formation groups so I can display proper info from F2 (Unhide). Can you give me some overview? In particular I'm interested about coordinates (my guess is battle screen is divided as grid).
Have you already looked at the GBA Algorithm FAQ?
http://www.gamefaqs.com/gba/930369-final-fantasy-v-advance/faqs/51713

For memory addresses, I have a document:
http://erick.guillen.com.mx/Codes/GBA%20Final%20Fantasy%20V%20Advance.txt

Also, if you haven't got it already, there's a GBA editor for this game:
http://www.romhacking.net/utilities/898/
I'm the best in the universe! Just remember! [F-zero X]

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Gear Viewer
« Reply #47 on: December 11, 2015, 02:09:02 AM »
Hey samurai goroh,

Quote
Have you already looked at the GBA Algorithm FAQ?
Yes it is a great source to check my parsing there for the gba exclusive content, but pretty much no info on what I need.

Quote
Also, if you haven't got it already, there's a GBA editor for this game
Interesting application I wish I knew about it earlier. The AI parsing there is quite ... unhelpful, but there are some addresses that might be exactly what I need (boss AI scripts)

Thank you very much!

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV Gear Viewer
« Reply #48 on: December 11, 2015, 04:24:49 AM »
The text will not fit into the window:
« Last Edit: December 11, 2015, 06:00:30 AM by Jorgur »

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Gear Viewer
« Reply #49 on: December 11, 2015, 05:15:51 AM »
The text will not fit into the window:
Just re-size the window vertically till all the contents pops up. BTW have you seen that there is a spliter between monster Info & AI? Personally I hate when things wrap on next line :)

Jorgur Coordinates are limited to 4 bits, which is 0..15. How that applies to the screen coordinates? Is the screen divided to MxN squares and coordinates in formation refer to a square?

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV Gear Viewer
« Reply #50 on: December 11, 2015, 06:07:04 AM »
I haven't looked into it in detail, but my guess is that the coords refer to 8x8 pixel tiles.

samurai goroh

  • FF5 Hacker
  • *
  • Posts: 221
  • Gender: Male
    • View Profile
    • My page
Re: FFV Gear Viewer
« Reply #51 on: December 11, 2015, 08:21:53 AM »
This is what I have on my Lua script regarding the enemy's coordinates:

Code: [Select]
        Position        = memory.readbyte(0x7E4000 + enemy*(0x01)) ,
        PositionY       = bit.lshift(bit.band(memory.readbyte(0x7E4000 + enemy),0x0F),3) + 1,    -- low nibble
        PositionX       = bit.rshift(bit.band(memory.readbyte(0x7E4000 + enemy),0xF0),1) + 5,    -- high nibble
I can't remember right now, but probably the +1, +5 is just for a finer display and shouldn't be taken into account. So yea, all in all they have a separation of 8 (pixels).

Is worth to mention that when you get a back-attack, X coordinates are mirrored:
Code: [Select]
        if BackAttack == 1 then
            PositionX = 240 - PositionX
        end
I'm the best in the universe! Just remember! [F-zero X]

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Gear Viewer
« Reply #52 on: December 11, 2015, 09:25:05 AM »
This is what I have on my Lua script regarding the enemy's coordinates:

Code: [Select]
        Position        = memory.readbyte(0x7E4000 + enemy*(0x01)) ,
        PositionY       = bit.lshift(bit.band(memory.readbyte(0x7E4000 + enemy),0x0F),3) + 1,    -- low nibble
        PositionX       = bit.rshift(bit.band(memory.readbyte(0x7E4000 + enemy),0xF0),1) + 5,    -- high nibble
I can't remember right now, but probably the +1, +5 is just for a finer display and shouldn't be taken into account. So yea, all in all they have a separation of 8 (pixels).

Is worth to mention that when you get a back-attack, X coordinates are mirrored:
Code: [Select]
        if BackAttack == 1 then
            PositionX = 240 - PositionX
        end

Thank you, thank you very much!!!

If you can tell me how to distinguish who is in front/back, I think I will have all pieces of the puzzle called 'Monster Info'':D

BTW I think I have Unhide decoded around 99%. I'm sure you will be pleasantly surprised of my next version of AI parsing, but first I need to finish decoding formations.

samurai goroh

  • FF5 Hacker
  • *
  • Posts: 221
  • Gender: Male
    • View Profile
    • My page
Re: FFV Gear Viewer
« Reply #53 on: December 12, 2015, 10:21:24 AM »
The problem AFAIK is that there's no flag that tells you when the enemy is in the back, it all depends in how the enemies are positioned.

For whose on the front or back Jorgur has this info:
http://slickproductions.org/slickwiki/index.php/Jorgur:FF5_Monster_data#Coordinates

The SNES algorithm FAQ has a section that mentions who is considered in the back (section 11.5) MONSTER FORMATIONS).

I have the impression of remembering the battle with the Tonberi that only the last one you dealt more physical damage (because he's the closest one). The Algorithm FAQ doesn't mention this, but I'm not sure how accurate that part is (or maybe it could be that I remember wrong...)

I'm the best in the universe! Just remember! [F-zero X]

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV Gear Viewer
« Reply #54 on: December 13, 2015, 03:20:57 AM »
I have the impression of remembering the battle with the Tonberi that only the last one you dealt more physical damage (because he's the closest one). The Algorithm FAQ doesn't mention this, but I'm not sure how accurate that part is (or maybe it could be that I remember wrong...)
I've never noticed this. Could it be GBA only?

samurai goroh

  • FF5 Hacker
  • *
  • Posts: 221
  • Gender: Male
    • View Profile
    • My page
Re: FFV Gear Viewer
« Reply #55 on: December 13, 2015, 03:27:23 PM »
Mmm, I tried this just now on the GBA and it would seem it works as normal (no back row penalty). Maybe it was just bad damage rolls I had that coincided with the row...
I'm the best in the universe! Just remember! [F-zero X]

LightPhoenix

  • FF5 Hacker
  • *
  • Posts: 130
    • View Profile
Re: FFV Gear Viewer
« Reply #56 on: December 13, 2015, 04:23:42 PM »
The problem AFAIK is that there's no flag that tells you when the enemy is in the back, it all depends in how the enemies are positioned.

The high bit of 2000,X is set if a player or monster is considered in the back row.  See C2/839B for the major example (adjusts damage depending on attacker/target row).  For enemies, there must be some function that looks at positions and recalculates those flags... it would be pretty easy to find I think.

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Gear Viewer
« Reply #57 on: March 28, 2016, 08:42:13 AM »
It seems I spoke too soon (that I will freeze this project)  :laugh:

Well, a new version 4.0 is out. I have added a Magic tab. Now you may see properties and attributes of selected Magic. It seems that internally most of the abilities are coded as 'magic' and I need that info in order to calc the damage from various commands.

For now it works only for SNES roms. I lack the info, where to find in GBA, so please share all that you know about it. it is based on Jorgur's FF5 Common lists and combine in one list:
- D1/0B80-D1/137F: Magic data
- D1/6AB1-D1/6DF8: Ability effect data (Animals, Mix, Terrain actions).
- ??? info on where Chakra, Pray, and some other commands that I cant see in the list

I need similar info from GBA and all data on the new things: Combine, Open Fire, Oath, Predict, Condemn ( I hope they use the same 8 byte structure).

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV Gear Viewer
« Reply #58 on: March 28, 2016, 10:13:02 AM »
I found some issues.

Typo: Status effect "Pertify"
The parameters for <Dimn>Haste/Hast2 are odd. It says it adds tons of statuses and removes Haste. <Dimn>Slow/Slow2 are similar.

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Gear Viewer
« Reply #59 on: March 29, 2016, 02:43:24 AM »
Thank you very much Jorgur! I really appreciate all kind of mistakes, but typos are harder for me to spot :D

What ROM are you using? I'm using RPGe 1.1 as main, but tested it on 'Enhanced by Dark Knight Kain [h1]', results are:
Code: [Select]
Name:          <Dimn>Slow2
Index:         64
Attack Type:   Time
Hit%:          80
Spell Power:   0
Spell Element:
Status Effect: -(Haste ) +(Slow )
Num of hits:   1
MP cost:       9
Dmg formula:   22 ($16)
Learnable:     NO
Reflectable:   YES
Unavoidable:   NO
Pretty mush is the same is with Haste but reversed:
Status Effect: -(Slow ) +(Haste )
I checked even the Japanese roms -  (J) and (J)[h1], results were the same.

Code: [Select]
16: Reversing status infliction
Speed Drink
Slow, Haste, Slow2, Hast2, Thread
Haste Drink (mix), Vine Hell
1 Hit %
2 [Status 2] removed (inverted)
3 [Status 2] added

P.S. DO you have info for 5E, 5F dmg formulas?
In 0B Param2 mean % for status (Param3), not AtkPower. Also highest bit mean something, but I dont know what
« Last Edit: March 29, 2016, 05:28:11 AM by Squall »