øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=2134.msg25456e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexefa1-3.htmllayedslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=2134.75e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/indexefa1-3.html.zxÔAh^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÀK‰OKtext/htmlISO-8859-1gzip8:Ö‰ÿÿÿÿÿÿÿÿÑHWed, 11 Mar 2020 01:58:05 GMT0ó°° ®0®P®€§²ð®ÔAh^ÿÿÿÿÿÿÿÿ (‰ FFV Viewer

Author Topic: FFV Viewer  (Read 20106 times)

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #75 on: May 25, 2016, 09:18:26 AM »
The ROM address for the table in the SNES version is in the link I just posted.
Found it! It seems I'm still in party mood if I cant see something so obvious :D
Thank you very much, Jorgur & x0_000!

It is strange that I missed that table (& info) when I was parsing Items ...  anyway it is interesting how Square develop systems that has billions of possibilities, yet implement just a fraction of it (in this case 232 possibilities for item types, yet only 32 used).
 When they allow users to utilize it they make an awesome game - like materia system in FF7 trough it you can define huge amount of customized gear (and that is why considered the best FF). While in other cases they kind-a 'missed the mark' like FFV ... in the past I didnt think its whoah game (just good one), but now that I know it from inside I see what a great engine it has but a regular player will never touch even the surface of it ...

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #76 on: May 27, 2016, 08:17:34 AM »
Version 5.1 is out!!! It should have all the info for Job/Ability.

I need to do the same for GBA version. If you have any info on where in GBA ROM to find:
Code: [Select]
Job data
D1/52C0-52E9: 1st ability pointer table      [Job]
D1/52EA-52FF: Number of abilities per job    [Job]
D1/5300-542B: Job levels                     Joblevel
D1/56B0-5707: Base [Stats]                   [Job]
D1/5708-575F: [Equipment type] compatibility [Job]
D1/5760-57B7: Native abilities               [Job]
D1/57B8-57FF: Innate abilities               [Job]
Code: [Select]
Ability data
D1/59E0-5CDF: Actions                        [Ability] (00-5F)
D1/5CE0-5D9F: ?                              [Ability] (00-51)
D1/5DA0-5DFF: Action delays                  [Ability] (00-5F)
D1/5E00-61FF: Command ability [Stat] bonuses [Ability] (00-7F)
D1/6308-638B: Support ability [Stat] bonuses [Ability] (80-A0)
D1/638C-63CD: Innate ability  effects        [Ability] (80-A0)
D1/63CE-6451: [Equipment type] compat. added [Ability] (80-A0)

please share, that would greatly speed up GBA part. Personally I have 0 knowledge on GBA asm so I use some statistical methods to search in the ROM, which may work well only if the GBA uses same data structures. As we have discussed already ... many times it doesnt (byte order,  byte padding, extra GBA content, ...) so things may get quite rough :D

x0_000

  • Siren
  • *
  • Posts: 72
    • View Profile
Re: FFV Viewer
« Reply #77 on: May 27, 2016, 02:22:16 PM »
# of abilities per job is at 0814b1fc
Base stats are at 08156e04
Native abilities are at 0815616c
Innates are at 08156138
Command ability stats are at 08155fac
Support ability stats are at 08155e10

Not sure what 1st ability pointer table, Job levels, Actions, Innate ability effects are supposed to be. Don't know where Action delays and Equipment compatibility are.

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #78 on: May 28, 2016, 06:32:55 AM »
1st ability pointer table - table to 'Job Levels' (not important)

Job Levels:
Code: [Select]
Job levels: 3 bytes
0 ABP low
1 ABP high
2 [Ability]
That is a table that has ABP requirement & Ability that can be learned for different jobs

Actions:
That is one of the beauty of FFV (from dev perspective). Instead of hardcoding what to do in each situation, FFV uses actions (8 byte structure) that have parameterize couple of pre-coded possibilities. Here and in most resources on the net these possibilities are called 'Damage Formula' ... wrong name because these 'formulas' are not used just for damage, but healing and other non-dmg actions (like change row, inflicting status, ...).
If you check my FFV Viewer they are under 'Magic' tab (wrong name I know, but it started with parsing actions, inflicted by magic).
Some of the command abilities are implemented with Actions (not all). There is a table that say what action (8 byte) will be used on specific command (ability). For example, when you choose 'Row' command, there is acttion for it and instead of hardcoding, the action contain reference to 'Row' formula, which has params to swap, to make you in front, in back,.... You may observe it in my Viewer - command actions are at the end of the list (Magic).

Innate ability effects:
That is similar to Job Innates. When you set a Job, you receive jobs innates. When you add support ability you add it innate too. For example a 'Knight' comes with Cover & Dbl Grip. If you put Counter on its free slot, the knight will get Counter innate too. From dev perspective innates are just set of bits that are checked in specific situations :)

x0_000

  • Siren
  • *
  • Posts: 72
    • View Profile
Re: FFV Viewer
« Reply #79 on: May 28, 2016, 05:14:00 PM »
Job levels is at 0880E6C0
It sounds like you probably want 081478d0 for Actions

No idea for Innates right now.

x0_000

  • Siren
  • *
  • Posts: 72
    • View Profile
Re: FFV Viewer
« Reply #80 on: May 29, 2016, 07:21:53 PM »
Alright, had a look at the ROM and found two more tables:

08155F48 - Ability innates
08155EAC - Ability equipment flags

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #81 on: May 30, 2016, 06:40:09 AM »
Version 5.2 is out!!! Now the new features work for GBA too!

Thank you very much x0_000 for the info!

*GBA Notes:
Ability Actions Delay table - 147CB0
Job Level table - 1554E8. It uses 4 bytes - 2 for ABP and 2 for Ability.

Pretty much data structure is word-aligned. I guess thats important for GBA as double-word for PC - there is penalty in extra processors cycles reading non-aligned memory.

P.S. I dont like very much the info layout for jobs/ability. If you have in mind something better just give an example :)

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #82 on: June 10, 2016, 09:39:52 AM »
Version 5.3 is out!!!

- New Items (usable) tab. It was long time missing, that's the reason for releasing it as 5.3 instead of 6.0
- New filters added in various tabs. I plan for few more to add :)
- Exports were moved from Weapon to Text tab. They needed a separate space, but adding a new tab wasn't ok for me. Luckily the Text tab had vast empty space. Now exports have an option to be saved in a file.
- Removed '???' from unused bits.

More?
We will see. I have few details in Mobs to finish and add finally add so needed Battle Formation. Maybe adding Shops when I really have nothing else to do :D

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV Viewer
« Reply #83 on: June 11, 2016, 03:29:17 PM »
Typo: Descrtiption
Typo: Can be Drinked -> Can be Drunk (or is it intended?)
Issue: The list goes to index 259 when it should end at 255
Inconsistency: I see Index and Name for usables, but not for Weapons and Armor
« Last Edit: June 11, 2016, 03:40:36 PM by Jorgur »

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #84 on: June 11, 2016, 04:54:16 PM »
Quote
Inconsistency: I see Index and Name for usables, but not for Weapons and Armor
They will all have Name and Index in next version. I liked your idea to add the Name in the info. Also I need the Index in cross-references (wherever I get raw data).

Quote
Issue: The list goes to index 259 when it should end at 255
Because GBA had 4 extra items

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #85 on: June 16, 2016, 12:38:29 PM »
Hey guys, I'm trying to parse all possible info about monsters. So I wonder, is there a table that has an index of the mob's pictures? (SNES & GBA)

While SNES has almost 1:1 mob index to mob picture, GBA has 700+ defined mobs and only 330 pictures. I doubt they keep different copy for each ...

 :edit:
Also I'm interested in some technical info about FFV:
- what graphic mode it use?
- what memory mode?
- was there an extra hardware in the cartridge? Does it uses SA-1 or any other extra hardware?
« Last Edit: June 16, 2016, 12:49:15 PM by Squall »

samurai goroh

  • FF5 Hacker
  • *
  • Posts: 221
  • Gender: Male
    • View Profile
    • My page
Re: FFV Viewer
« Reply #86 on: June 16, 2016, 10:37:57 PM »
Most graphics are 4bpp (bits per pixel). There seem to be some 3bpp, 2bpp & 1bpp... It's mentioned on the wiki which graphics are which & there's also some mention about the compression used on them.

Bits per pixel --> Number of colors
1 bpp = 2 colors
2 bpp = 4 colors
3 bpp = 8 colors
4 bpp = 16 colors

This document should help you out to understand how it works.
http://mrclick.zophar.net/TilEd/download/consolegfx.txt
I'm the best in the universe! Just remember! [F-zero X]

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #87 on: June 17, 2016, 09:48:58 AM »
Version 5.4 is out!!!

It is mainly adding missing info.
 - In 'Monsters' tab - Release data, Special data, Drop/Steal data.
 - Internal structures were rewritten so they could accommodate GBA items with index >= $100
 - Adding Name & Index in the info of all tabs (that were missing it)

I need the info that link a mob with its picture, so I can display them correctly!!! I can approximate them by hand, but thats not good (every small change may distort the order)

Jorgur

  • Moderator
  • *
  • Posts: 437
  • Gender: Male
    • View Profile
Re: FFV Viewer
« Reply #88 on: June 17, 2016, 01:16:54 PM »
Is there any chance you will make it extract graphics from the ROM instead of relying on external images? It would be useful for examining ROM hacks with customized monsters.

Squall

  • Dark Dragon
  • *
  • Posts: 486
    • View Profile
Re: FFV Viewer
« Reply #89 on: June 17, 2016, 03:28:33 PM »
Sure I can do that as far as I have all the info:
- where the tiles are stored (for monster with ID)
- pallete for it
- map of the image (which tiles in what order make the image)

I still dont know how to draw a tile, but that shouldn't be so hard. Now if things are compressed that might be a difficult task.