Romhacking.net

Romhacking => Personal Projects => Topic started by: Squall_FF8 on September 10, 2016, 03:17:10 am

Title: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on September 10, 2016, 03:17:10 am
Hello FF-fans,

It's been almost a year since I started FFV_Viewer. It started as expression of accumulated knowledge of how FF5 works from inside. But then rapidly grew to a comprehensive tool that can 'dissect' game ROM and show many of the great features the game holds.

Who can use the tool:
 - FF5 Players veterans or new - if you wanna know 'how this works' or 'what are the attributes of that boss'
 - Document writers - for each feature, there is a section that represent the info in a textual form for easy copy/paste
 - Hackers - do you want to change something in the game? You can see where the info stands and how its represented in the memory
 - FF-fans - I bet we share the same passion: to learn more about FF

Downloads:
 - Main program and needed files: Version 7.1 (http://www.romhacking.net/utilities/1230/)
 - Latest exe: Version 7.2 (https://drive.google.com/file/d/0B9eDezdHI7RWazdsQ2VGSzdFVUk/view?usp=sharing)
 - Music used in battles: MP3 (https://drive.google.com/file/d/0B9eDezdHI7RWdE5VUHRWeF9oSDA/view?usp=sharing)

(http://www.bwass.org/bucket/FFV_Viewer - Screen1.png)(http://www.bwass.org/bucket/FFV_Viewer - Screen2.png)
(http://www.bwass.org/bucket/FFV_Viewer - Screen3.png)(http://www.bwass.org/bucket/FFV_Viewer - Screen4.png)
(http://www.bwass.org/bucket/FFV_Viewer - Screen5.png)

Version Changes:
 7.2 Added Font section. GBA only (for now)!!!

Credits:
 - Great icon artwork from Alforata (http://alforata.deviantart.com/art/Super-Nintendo-Rom-Icons-119694994)
 - Sprites extracted from FF1&3 by The Spriters Resource (http://www.spriters-resource.com/)
 - Folks from Slick (http://slickproductions.org/forum/index.php?board=17.0), especially Jorgur, noisecross, samurai goroh & x0_000

P.S. I would love to hear your opinion about the Viewer, your suggestions for improvements, new features and even your personal experience with it  :beer:
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: samurai goroh on September 10, 2016, 10:04:26 am
Hey Squall, it's great to see your viewer finally released! Congrats :)

Some considerations I would recommend is to reorganize the tabs so that the more interesting stuff for anyone appears at the top (e.g. "Monsters" first & "Text" and "Compress" at the end).
Also a README file explaining what you can do in each section, for those who aren't that familiar with the tool or the game.

Another thing to consider (not really needed, but a plus) is to reorder the info in the Monsters tab to match with the Algorithm FAQ, that way is easier to compare them (the program and the FAQ)
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on September 10, 2016, 07:45:45 pm
hehe finally, yeah  :laugh:

Since the number of tabs grew on 2 columns, its hard to control what to position and where. I'm seriously thinking of redesign the main layout, but no good ideas so far ...
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Chronosplit on September 11, 2016, 06:23:03 pm
Does this contain the mobile/PC version's graphics inside the package?

Anyway, that aside this is great.  It's about time FFV got a tool that's as complete as FFVI's main editor. :D
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Bahamut ZERO on September 11, 2016, 07:15:57 pm
Quote
Anyway, that aside this is great.  It's about time FFV got a tool that's as complete as FFVI's main editor. :D

I agree! It's high time FFV had a kickass tool like FFIV and FFVI do! Good work!


Exclamation points! (couldn't help myself)
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on September 12, 2016, 02:50:35 am
Does this contain the mobile/PC version's graphics inside the package?
Yes it contain PC(Steam) rip of monsters. Some of the screenshots contain these pictures. However in the program you have the option to see original (in ROM) graphics or PC ones. The background shows the in game GBA contents.

Quote
Anyway, that aside this is great.  It's about time FFV got a tool that's as complete as FFVI's main editor. :D
...
I agree! It's high time FFV had a kickass tool like FFIV and FFVI do! Good work!
Thank you guys. I too get the same feeling that FF5 is a little bit neglected. TBH when I first played it was good game, but nothing WHOAH. But since I started to look under the hood ... the battle engine is so great, that the game barely scratched the surface to show it to players. It needs like FFV-2 or even completely different approach (crafting of items maybe) to really display that.

EDIT: A new screenshot added with the in ROM graphics added.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Rodimus Primal on September 12, 2016, 08:39:50 pm
I'd place the tabs on the top for readability. Is this an actual editor or just an information giver?

I'd love to see the SNES version with a modernized translation, even more so than what Spooniest did with Legends of the Crystals.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on September 13, 2016, 09:56:40 am
Quote
I'd place the tabs on the top for readability.
I will try that. If all tabs fit in one row I will use it. Thank you!

Quote
Is this an actual editor or just an information giver?
Unfortunately its not an editor. Initially I had other name in mind but somehow it always give wrong impression (or there maybe there is a real need for a new comprehensive editor for FF5) so I choose 'Viewer'. Since I started there were many points where I was thinking to redo it as an editor ... but it will be extremely hard to keep both SNES & GBA. On top of that while SNES version is fairly known, GBA has almost zero documentation.

Quote
I'd love to see the SNES version with a modernized translation
I think RPGe made a good translation. Not only that but they incorporated VWF, which I see is the most wanted feature in re-translations. What I really like about their work is that they laid a frame, so you can do a new translation on other languages with zero ASM code.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Rodimus Primal on September 13, 2016, 12:33:53 pm
I will try that. If all tabs fit in one row I will use it. Thank you!
Unfortunately its not an editor. Initially I had other name in mind but somehow it always give wrong impression (or there maybe there is a real need for a new comprehensive editor for FF5) so I choose 'Viewer'. Since I started there were many points where I was thinking to redo it as an editor ... but it will be extremely hard to keep both SNES & GBA. On top of that while SNES version is fairly known, GBA has almost zero documentation.
 I think RPGe made a good translation. Not only that but they incorporated VWF, which I see is the most wanted feature in re-translations. What I really like about their work is that they laid a frame, so you can do a new translation on other languages with zero ASM code.

I like their translation too, but the item and spell names still use the older style names that were used all the way up to FFVII.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on January 25, 2018, 04:05:15 am
Hey guys, I'm back in business  :beer:

Recently I found a good document about fonts in GBA version. Since then I want to add a new feature to my Viewer - Fonts. So finally it is done in version 7.2. For now it works for GBA only! I'm researching the internals of SNES version, RPGe based ones. So if you have info on that please share even if its a tiny bit.

Here is preview of the new feature (tab). You may see all 3 fonts, you may see their metric. You can experiment to see how a text is rendered in the game - ANSI or native for GBA. You can click on the font to see it character metric and also preview it in the native part.
(http://www.bwass.org/bucket/FFV_Viewer - Fonts.png)

P.S. If you have any suggestions please don't hesitate to share!
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: MaverickZero on February 09, 2018, 05:02:41 pm
just to calrify, this is for the european gba version of FFV but here are the locations of the job spritesheets.
since the whole game is lz77 compressed you will need help of tools like gba graphics editor to see them, the used tool will also need a deep scan feature, or no animations can be found.
(deep scan has to be done manually)
the adress of the first job is
21F040
it's bartz as knight.
the following jobs are listed like in the game.
knight, monk, thief etc. the freelancer is the last one.
the caracters are listed sequential.
bartz, lenna, galuf, faris and krile. directly after those come the ko'd sheets, they are all separated, and after that comes the monk kick sprite (they separated those for some reason)
i wasn't able to find out the palettes offset yet, i just used visual boy advance for the palettes.
and i also found the weapon sprites location if you want.
well, i hope i was of some help :-\
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on February 10, 2018, 09:23:38 am
Thank you MaverickZero! Every bit of info helps!

So far I have discovered that both version contain a table with reference to compressed job sprites. Actually not one but two tables are there starting at offset in the ROM at $13148C and $856A50. Both table contain only references to compressed tiles, but no palette or tile-map info. And that is bad because I don't know how to find palette and the map  :(

BTW any chance you have kept somewhere the palette's value from VBA? I can try to find them in the ROM if I know few consecutive values ...
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: MaverickZero on February 10, 2018, 09:51:34 am
ok first, the two sprite tables use the same sheet, the only difference is that one is for the job selection screen/pause menu and the other one is for battle.
and now to the palettes,
the offset of bartz knight palette is at 240CBC, if you use the palette editing tool APE, you can type in the offset of the first palette and then scroll through them, i'm not sure if they are sequential as well but you could try.
i would do it for you since ffV is my most fav title of the series and i'm glad to see people still working on it, but i have other projects going on right now and i want to finish one of them soon.
and if you are interested in it, the weapon and slashing animations of the weapons are also listed right after the characters, so you're quite lucky that it's all together.
one last thing, there are a few weopon duplicates in the sprite files, because even if for example the broadsword and the brave blade use the same sword sprite, they have put the sprite two times in there for both instead of programming that one picture that is loaded at both swords.
if there is anything i could help, let me know ;)

February 10, 2018, 10:02:32 am - (Auto Merged - Double Posts are not allowed before 7 days.)
hmmm :-\
i see on your reply on my thread that you still have problems finding the jobs...
would it be of help if i send you the offsets of every single job?
can you work better with that?
or maybe i misunderstood you...
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on February 10, 2018, 10:27:36 am
Sorry I wasn't sure will you check here, that's why I kind of added the same info on both places. From now I will wright  only here!

The palette address is working! I found it in the ROMs (both versions). Now I will search for a table that reference it!

The other part of question was about tile-maps. SNES uses 49 tiles to compose 12 frames (attacking, defending,...) I wonder is it the same in GBA, since it uses 57 tiles ...

P.S. I'm very, very interested in weapon animations!!! It is my personal goal to be able to 'play' all the animations of FF5 the same way the game does. But it is a long road - to understand the animation scripts, to find master-table that contain the data for all of them ...
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: MaverickZero on February 10, 2018, 10:32:44 am
i don't want to get spammy here, but i found their portraits.
bartz is at 33A5E4,33A834 and 33AA7C everyone has 3 pictures for some reason,everytime in another palette it seems
lenna:33AD44,33AF80,33B1BC
galuf:33B46C,33B6D0,33B930
faris:33BC04,33BE5C,33C0A0
krile:33C35C,33C5A4,33C7EC
boko:33CAA8,33CD0C,33CF70
cid:33D248,33D4B0,33D718
mid:33D9F8,33DC34,33DE70
dorgann:33E120,33E388,33E5F0
kelger:33E8CC,33EB54,33EDDC
xezat:33F0DC,33F348,33F5A4
king tycoon:33F874,33FAD4,33FD34
gilgamesh:34000C,340268,3404C4
exdeath:340798,3409EC,340C3C
phew...
ok, those are all portrait offsets, you have my full Support at you project  :beer:
p.s. i don't know how the snes spritesheets are looking like so i can't compare, but if you want i can send you a gba one.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on February 11, 2018, 11:49:23 am
Thank you MaverickZero, thanks to your info now job sprites are 67% deciphered  :thumbsup:
Quote
Job Tiles:
  Tiles: $21F040 - knight, monk,.. Bartz, Lenna,... (4 byte aligned???), LZ10 compression
  Table: $13148C - 4 bytes each, absolute address (in memory: $08000000 + file offset)
  Tabl2: $856A50 - same as above

Job Palettes:
  Pals: $240CB4 - 8 byte header (4 bytes type (03) + 4 bytes Pal Mums) + 32 bytes pal entries
  Table: $1316BC - 4 bytes each, absolute address
  Tabl2: $856C58 - same as above

* This is for European version
* Table is used for menu, Table2 is used for battle


The last pieces of the puzzle are:
 - Job Tile-Maps
 - Master table - a table that contain indexes in the 3 tables - tile, palette and tile-map

If you guys know something about the missing pieces or anything GBA related please share!

P.S. MaverickZero, spam me with all the info you have, I love such spam  :laugh:
Since you know the asm, you may try to find a code that uses Table1 or Table2 tile&pal addresses. There you will find the missing Map table and more important - the Master Table for job sprites!
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: MaverickZero on February 11, 2018, 03:33:44 pm
i'm really sorry that i have to tell you that but...
i don't know anything about asm/arm  :huh:
i searched for everything i found manually, i don't know anything about programming at all, all i do is improving graphics.
but i hope i can help you somehow anyway :-\
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on February 12, 2018, 03:46:14 am
Sorry MaverickZero! I don't know why I got the wrong impression that you are familiar with asm. But thats ok. Similar to you I know 0 of arm asm yet 90% of what I had implemented is thanks to manual searches  :laugh:

You already had help a lot, so cheer up my friend  :beer:

Quote
and if you are interested in it, the weapon and slashing animations of the weapons are also listed right after the characters, so you're quite lucky that it's all together....
p.s. i don't know how the snes spritesheets are looking like so i can't compare, but if you want i can send you a gba one.
YES, bring it on!
Also if you know the palette address (or pal values) of at least 1 portrait, I will be able to find the tables containing them.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: MaverickZero on February 12, 2018, 11:30:03 am
the offset of lennas portrait palette is at 33B3FC and faris is at 33C2EC the others must be close around, and don't forget it's for the european rom
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: Squall_FF8 on February 12, 2018, 03:11:15 pm
Great, thanks to your data another mistery solved  :laugh:
Quote
Portrait Table: $1465A0, 24 bytes per entries
  Portrait 1 tiles - 4 bytes (absolute memory address), LZ10 compressed, 4B aligned, shape 4x5
  Portrait 2 tiles - (same as above)
  Portrait 3 tiles - (same as above)
  Portrait 1 Palette - 4 bytes (absolute memory address). 40 bytes. 8byte header (4B type(03) + 4B PalNums)+ 32 bytes PalEntries
  Portrait 2 Palette - (same as above)
  Portrait 3 Palette - (same as above)
* Physically data is stored in the same order: Portrait1, Portrait2, Portrait3, Pal1, Pal2, Pal3

almost solved ...
I don't know what the 3 portrait are used and which pal is applied. Pal1 is 16 color. Pal2 is 16 shades of blue. Pal3 is 16 shades of gray.
Title: Re: [SNES][GBA] Final Fantasy V - Viewer
Post by: MaverickZero on February 13, 2018, 03:45:54 pm
sadly, i have no clue as well  :\...