News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Help with making bugfix for Final Fantasy III (Famicom)  (Read 5149 times)

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Help with making bugfix for Final Fantasy III (Famicom)
« on: December 18, 2015, 06:47:36 pm »
Hi,

recently I decided that I want to translate the original Final Fantasy III cartridge (Famicom) to English. Fortunately there are two nice English patches already.

The first one is the best for me as the final file is the same size as the original ROM. It has some bugs though, old and new. The most annoying is the fact that when you try to equip something and that something is not equipable a little cross appears on the name of the item that covers the first letter (see the pic). This is not happening in the original Japanese version.



The second one has bugfixes and some enhacements but the resulting file is too large to be effectively used for a real PCB.

As I mentioned before the first one is the translation of my choice. I even hacked the patched ROM to replace the intro credits with the original names so it would look more authentic.

The question is - how can I fix the problem with the icon overlapping item names? Can somebody help me with it?

Do some fixes already exist? There are several bugs that could be addressed.

Thanks.
« Last Edit: December 21, 2015, 04:55:57 pm by Paar »

SunGodPortal

  • Hero Member
  • *****
  • Posts: 2921
  • 2 + 2 = 5
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #1 on: December 18, 2015, 06:54:28 pm »
Quote
The most annoying is the fact that when you try to equip something and that something is not equipable a little cross appears on the name of the item that covers the first letter (see the pic). This is not happening in the original Japanese version.

That doesn't sound like a bug. It sounds like an added feature to make it easier to tell what is equip-able and what is not.
War is Peace. Freedom is Slavery. Ignorance is Strength.

Kea

  • Jr. Member
  • **
  • Posts: 53
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #2 on: December 19, 2015, 12:40:41 am »
There is a small oversight there in that items without icons at the beginning instead have the first letter overwritten.

This is because in the original Japanese version, items that don't use an icon instead have a space placed at the start of their text string. The English translation doesn't have enough long enough strings for item names to give up one character to a space, so you end up with the first letter being overwritten. Fixing this may be possible for most items by editing the text entries to make more aggressive use of the two-letter tiles, freeing up room to add a space in; some items might need all nine characters though.

As for the other bugs, the Item Upgrade trick flows from a simple bug, which ought to be a simple fix. I may take a look at it myself.

Maeson

  • Sr. Member
  • ****
  • Posts: 278
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #3 on: December 19, 2015, 03:58:05 am »
If you really want to solve this... well...

First, take this:
https://www.dropbox.com/s/ezraca6mbfihvox/Textosinexpandir.tbl?dl=0

This is a small table I did to look at FFIII text. This one is for Alex W. Translation, the one you want. Although mind you, there are some missing things (As this translation uses some tiles for two or thre characters to save space, like "li" for example).

You could load your translated ROM in something like, I don't know, Windhex, and load afterward the table.

Press Ctrl+F and search for "MidgBread" (without quotes). You'll find a list of items.

You can press tab to write text directly, what you need to do is make the names of consumable items one character shorter.

They aren't many, and shouldn't be very hard (besides the multi-letter tiles). It starts with MidgBread and ends with White Scent.

Good luck!

Edit: I updated a little the table. Should be a little easier now.
« Last Edit: December 19, 2015, 04:08:58 am by Maeson »
I'm off for some time. If for some weird, strange, and important reason, you need to talk to me, just send me a PM and probably I'll read it whenever I come back.

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #4 on: December 19, 2015, 05:00:05 am »
Thank you all for your suggestions. I'll try to modify the item names.

As for the other bugs, the Item Upgrade trick flows from a simple bug, which ought to be a simple fix. I may take a look at it myself.

It would be great if you could make a fix for that.  :thumbsup:

Maeson

  • Sr. Member
  • ****
  • Posts: 278
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #5 on: December 19, 2015, 06:40:04 am »
You know, It may be weird to say, but I've played this thing  more times than I want to admit (and that's saying something), and I've never encountered the Item Upgrade bug at all during normal gameplay. Only when I wanted to mess with it.

Weird, lol.

By the way! If I did explain it poorly (which may be the case), what you have to do is, with one example:

Imagine you have the item "FenixDown", and you want to make it shorter.

What you have to do is put a space in the first slot always. "[space]FenixDwn". And that would be enough.

I personally never had problems with it. I always found useful to know that I can't wear otions in my head.
I'm off for some time. If for some weird, strange, and important reason, you need to talk to me, just send me a PM and probably I'll read it whenever I come back.

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #6 on: December 19, 2015, 07:53:38 am »
That's excatly how I understood it. I already looked it up and it should be an easy fix. Maybe some pointers will have to be adjusted but that's no problem for me. Luckily, almost all item names don't use DTE so there's a lot of room for experimentation.
« Last Edit: December 19, 2015, 07:59:06 am by Paar »

Chaos Rush

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #7 on: December 19, 2015, 05:58:21 pm »
If I may ask, how exactly are you going about retranslating the game? Are you fluent in Japanese? Or are you cross referencing from previous translations as well as the DS remake?

Also if you're going to do an extensive rewrite, I think you would have to write a specialized program to handle the text editing. I'm working on a FFII text recompiler right now (the goal being that you can make changes to any of the game text and it will automatically repoint every text string in the selected bank, almost as if it was compiled that way to begin with, which would make the most efficient use of free space). When that tool is ready I could add FFIII support (as I already planned on doing so), perhaps that might be of use to you?

Also this is random, but if you're going to make the job and item names as close as possible to the modern releases, you could call the Onion Knight job as, "OñnKnight" (w/ squish tile for 'ni')


Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #8 on: December 20, 2015, 06:39:01 am »
I would like to emphasise that I'm not going to retranslate the whole game. That's not my goal, I just want to edit the item names so the bug pictured in my firts post is not happening.

Unfortunately I have problems implementing DTE in the item names as the information in the battle screen gets displaced when using it. See the picture below.



It is entirely possible that the specific routine handeling the names would have to be rewritten but that's not something I can do. Maybe somebody can help? Something in similar fashion as Lenophis' Battle DTE fixer upper.

For example when you use a single hex value that stands for two letter, an additional space is being rendered. And that single space will corrupt the text.

December 21, 2015, 04:55:00 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Ok, I've made some progress. I rewrote entire section of item names in the ROM file and adjusted all of the pointers. You can see result of my work on the screenshots below.




Changed names (original/shortened):

Time Gear/TimeGear
EurekaKey/EurekKey
Wind Fang/WindFng
Fire Fang/FireFng
WaterFang/WaterFng
EarthFang/EarthFng
Sylx Key/SylxKey
MidgBread/MdgBread
FenixDown/FenixDwn
LuckMallet/LckMallet
OtterHead/OttrHead
BombShard/BmbShard
SouthWind/SthWind
Zeus'Rage/ZeusRage
BombR.Arm/BmbRArm
NorthWind/NrthWind
Gods'Rage/GodsRage
EarthDrum/EarthDrm
LamiaScl./LamiaScl
Gods'Wine/GodsWine
TurtlShell/TurtShell
Devil'sSigh/DevilSigh
DarkScent/DarkScnt
LilithKiss/LilitKiss
Paralyzer/Paralyze
MuteCharm/MuteChrm
BombHead/BmbHead
ChocoRage/ChocRage
WhiteScent/WhiteScnt

What do you think? Some changes may be controversial but it was hard to limit some text to eight characters of pure text. Please mind that "'s", li", "ll" and "il" count as a single character (the combination of those characters occupy only a single tile).

Could someone test it? I'll do some tests myself but it would be nice to have more feedback.

EDIT: I did some testing and found some typos and bad pointers. That's fixed now.

ff3e_short_item_names_1.2.ips

And patch for the original intro:

ff3e_original_intro.ips

You can use both patches at the same time.

Next thing I would like to do is the ending narratory which is badly formatted in my opinion. I need some save file before final boss so I can properly test it. Do you have any that you can share?

EDIT2:

My hacking session continues. What I've done now is that I modified ending narratory to be more readable and overall better looking. The original was just bad and rushed. I had to change the text heavily to make it fit but I think the result is good. I took an inspiration from official DS translation.




At the same time I changed casing in the intro narratory (after credits in the beginning) so it would look better too.

ffe3_centered_ending1.0.ips

EDIT3:

I've made my last hack for the game.

The creators of the original translation created new icons for the items so they could save some space. I.e. in Japanese version, rings and gauntlets had the same icon of a hand and were differentiated by their name (Diamond Ring vs. Diamond Gauntlet). There was no room for such lenghty names so icon for rings were created and the item name was changed to O Diamond, were O stands for the ring icon. That's understandable. But I don't get why they changed icons that were perfectly fine, i.e. for shields or helmets.

This patch reverts back the icons to their original state. The icons that were created additionaly by creators of the translation were kept intact (rings, staffs, robes). One exception was made to bow and arrows. Original icon was bow and arrow combined so for bow I erased the arrow. But for arrow I had to use unofficial icon introduced by the translation as the resulting icon after removal of the bow was too similar to the spear icon and would just be confusing.

Changed icons:

Shield
Body armor
Helmet
Gauntlet
Book
Rod
Hammer
Spear
Knife
Axe
Long sword
Music instrument
Bow
Bell
Boomerang
Shuriken
White/Black/Summon spell



ff3e_item_icons_patch1.0.ips

So now with those patches the game is much closet to the original Japanese version than before. Enjoy if you're intered.
« Last Edit: December 27, 2015, 12:04:59 pm by Paar »

KillerBob

  • Full Member
  • ***
  • Posts: 144
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #9 on: December 28, 2015, 02:53:54 pm »
Could someone test it? I'll do some tests myself but it would be nice to have more feedback.
Nice work! The bugfix seems to work fine, the only shortcoming is that you'll get an awkward double space in the item get messages. The Japanese game doesn't show any equipment icons for these text boxes, but both item and equipment names are written on the second line with an indent. You could perhaps move item and equipment names to appear on the second line for the treasure chests to avoid it?





I noticed a typo in your intro text.

Translation Patch:

The Crystal will shine
With the light of Hope...


Yours:

te Crystal will shine
with the light of Hope...


Another thing you might want to fix is how the summon magic is displayed in battle messages. For example, when you cast Icen in the Japanese original, the battle message says:
"[white icon]Shiva" for Hypnosis Ray
"[black icon]Shiva" for Cold Gaze
"Shiva" only for Diamond Dust

The translation patch doesn't display the white/black magic icons that distinguish the magic from the full force summon.

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #10 on: December 29, 2015, 09:08:17 am »
Thanks for the input. You were right, there indeed was a typo. It's fixed now.

ffe3_centered_ending1.1.ips

About the summon text... Could you please share with me a save file where you have a summoner? So I could test it properly.

About the double spacing - there is a significant difference between original Japanese item names and translated ones. In the original version items have their full name displayed (i.e. Diamond Ring) and the icon is only informative. You can display the name without icon and you still know what that item is.

Whereas in the translated game the icon is a part of the name because otherwise the names would just be too long. So you cannot easily remove the icon from the dialog boxes without confusing the player.

Of course it is possible to show the item name on a new row but I don't like it very much. I'd rather fix the problem properly so the text would look like "Found [icon]Leather" or "Found Potion" with just single space. Unfortunately that involves some ASM hacking. I'm not very skilled at it but I can imagine that you have to ask if the first character is empty and if so tell the program to skip it. I'll look into it but cannot make any promises.
« Last Edit: December 29, 2015, 09:15:55 am by Paar »

KillerBob

  • Full Member
  • ***
  • Posts: 144
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #11 on: December 29, 2015, 10:46:44 am »
About the summon text... Could you please share with me a save file where you have a summoner? So I could test it properly.
Sure, try this (nestopia) one: https://www.sendspace.com/file/ccghd6
I recommend the second savefile where one is a Conjurer so you can try out all three effects of Summons...

EDIT: It also appears that the translation omits the command chosen - message in battle as well as some additional stats for the Jobs menu present in the Japanese original, but it's fully understandable with the limited screen space available, if you don't want to have "Att." and "Def." displayed for Attack and Defend. I guess another alternative for the conditions displayed next to the character names in battle could be symbols instead of "Petr" and "Conf" etc.
« Last Edit: December 29, 2015, 12:39:49 pm by KillerBob »

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #12 on: December 30, 2015, 11:39:20 am »
It also appears that the translation omits the command chosen - message in battle as well as some additional stats for the Jobs menu present in the Japanese original, but it's fully understandable with the limited screen space available, if you don't want to have "Att." and "Def." displayed for Attack and Defend. I guess another alternative for the conditions displayed next to the character names in battle could be symbols instead of "Petr" and "Conf" etc.

I don't understand what you mean very well. Could you please post some comparison screenshots?

KillerBob

  • Full Member
  • ***
  • Posts: 144
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #13 on: December 30, 2015, 02:40:26 pm »
I don't understand what you mean very well. Could you please post some comparison screenshots?
Sorry for my poor explanation. In the Japanese original, the battle commands you have selected with each character are displayed until the first character take action. It may seem redundant but it's a nice feature that makes it easy to keep track of what choices you have made with the other characters in more strategic battles. This space is also occupied by status conditions.



Both battle commands and status conditions are limited to only four letters in the Japanese original, so it becomes problematic in English when you have command names like Terrain and status conditions like Silenced. The translation made necessary abbreviations for status conditions but omitted the selected command feature.

The job menu in the original Japanese game display the Skill Level you have earned for each job in addition to the Capacity Points needed. The translation got rid of the skill level display due to limited screen space.



Job Name[Skill]: Capacity Points
« Last Edit: December 30, 2015, 03:05:15 pm by KillerBob »

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #14 on: December 31, 2015, 04:31:54 am »
There is definitely a problem with space when displaying job levels together with capacity requirements. See the picture below.



Jobs in the original are 7 bytes long but in the translation they're 8 bytes long. There is just no room left. I'll try to think about it and come up with some solution but until then l'll just leave it the way it is.

KillerBob

  • Full Member
  • ***
  • Posts: 144
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #15 on: December 31, 2015, 10:10:55 am »
There is definitely a problem with space when displaying job levels together with capacity requirements. See the picture below.



Jobs in the original are 7 bytes long but in the translation they're 8 bytes long. There is just no room left. I'll try to think about it and come up with some solution but until then l'll just leave it the way it is.
Yeah, definitely a problem with space. An example how it could be dealt with:



Geomancer would obviously need some attention in my example. Squish tiles of "nigh" to make Knight fit, and squish tiles of "njurer" to make Conjurer fit but you could of course go with some other equivalent name for it. But this is only a quick mockup of mine, in reality there might not even be enough space to make those squish tiles. Geomancer already uses some. I can understand if you leave it as is as some class names needs to be changed otherwise. Summoner and Geomancer are simply too long to fit, and I don't know any good equivalent name for the latter. I believe it's something like Feng shui Master in the Japanese original.
« Last Edit: December 31, 2015, 11:31:33 am by KillerBob »

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 6882
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #16 on: December 31, 2015, 03:01:59 pm »
There is definitely a problem with space when displaying job levels together with capacity requirements. See the picture below.



Jobs in the original are 7 bytes long but in the translation they're 8 bytes long. There is just no room left. I'll try to think about it and come up with some solution but until then l'll just leave it the way it is.
Could it be possible to move the classes up one line (so the rank/cost are printed underneath)? (my guess is probably not without rewriting the text printing engine)
"My watch says 30 chickens" Google, 2018

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #17 on: January 01, 2016, 06:02:15 am »
That't not impossible but the scrolling would have to be implemented. I'm still in the process of learning how the program works so at this time I am not able to do it.

Another option is to display job levels only and show capacity cost in a prompt when you're trying to change it. So instead "Change a job? A..yes B..no" there would be "Change for x CP? A..yes B..no".

KillerBob

  • Full Member
  • ***
  • Posts: 144
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #18 on: January 05, 2016, 01:08:13 am »
Another option is to display job levels only and show capacity cost in a prompt when you're trying to change it. So instead "Change a job? A..yes B..no" there would be "Change for x CP? A..yes B..no".
Yeah, that's not a bad idea.

A minor nitpick after another look at your intro text. I suggest repositioning the text "the crystal will shine with the light of hope…" up in frame one step, so that it show up in the same position as the rest of the intro text. Why it appears lower in frame than the rest of the text is probably a result of the Japanese original writing that text on a single row instead of three.

I noticed that the translation reduced the character window/expanded the enemy window, but never moved the command window:


If possible, perhaps the command window could be repositioned to make things more aesthetically pleasing:


Or even better, reduce the character window/expanding the enemy window further, since the space at the far right of the character window is unused anyway, and it would allow even more screen space for enemy names:


Don't know if my examples are even possible, and I guess it would take a lot of hard work as other battle windows would also have to follow suit. Just some observations of mine.
« Last Edit: January 05, 2016, 01:29:36 am by KillerBob »

Paar

  • Jr. Member
  • **
  • Posts: 10
    • View Profile
Re: Help with making bugfix for Final Fantasy III (Famicom)
« Reply #19 on: January 05, 2016, 08:31:21 am »
Actually resizing and repositioning should be an easy job.

I managed to modify the rom so job classes take only 7 bytes but I'm still having hard time restoring the job levels. But I've made some progress. I'm sure I will make it happen though, eventually.
« Last Edit: January 05, 2016, 08:44:46 am by Paar »