How did Final Fantasy VI do a non-fixed-width font?

Discussion of hardware and software development for Super NES and Super Famicom. See the SNESdev wiki for more information.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by tokumaru »

tepples wrote:You don't have permission to access /hacks/snes/patches/18readme.txt on this server.
You do if you use the link in the page instead of the direct link posted here.
snarfblam
Posts: 143
Joined: Fri May 13, 2011 7:36 pm

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by snarfblam »

You can copy/paste the URL into the address bar (or do like I did and click on the address bar and hit enter when the 403 comes up). I think that's just hotlinking protection.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by tepples »

Then let me rephrase:

I find it not quite useful to add a link that does not work to your post. Sure, the reader can circumvent Referer protection, but the author ought to mark each such link as one whose Referer protection needs to be circumvented. Not getting the link right the first time causes a cached response that leads to four wastes of time:
  1. Click the link and get 403 Forbidden.
  2. Copy and paste the link and get 403 Forbidden because the original 403 Forbidden response has not expired out of the browser's cache.
  3. Press Ctrl+R and get 403 Forbidden because normal Ctrl+R does not bypass the browser's cache.
  4. Google for a while and discover that you have to press Ctrl+Shift+R to bypass the browser's cache. Then find that this doesn't work because an upstream transparent proxy has cached the 403 response, and the server isn't sending the Vary: Referer HTTP header with the response like it should.
psycopathicteen
Posts: 3140
Joined: Wed May 19, 2010 6:12 pm

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by psycopathicteen »

If your doing a screen of items, can't you turn off the screen for a couple of frames to render the screen?
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by tokumaru »

tepples wrote:I find it not quite useful to add a link that does not work to your post.
Most of the time people don't know they're posting such links though, since they usually reach the URLs through the intended means. I imagine that because of this you felt the need to warn others about the link, but since your message was just a transcription of the error, it may not have been clear.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by tepples »

psycopathicteen wrote:can't you turn off the screen for a couple of frames
Not if player 1 and player 2 have separate lists of items, or if there are several levels of menus and you want the player to traverse them without triggering a seizure. Then you need to update part of the screen every vblank.
93143
Posts: 1717
Joined: Fri Jul 04, 2014 9:31 pm

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by 93143 »

I believe it was byuu that pointed out that it's entirely reasonable in some cases to prerender this sort of text and simply load it whole from ROM when needed. But it was a while back and I wasn't as well versed in classic console jargon as I am now, so maybe I'm misrepresenting what he said...?

As for me, myself, personally... I have a Super FX chip and I intend to use it.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by tepples »

Prerendering proportional text and storing it in the ROM works for a small number of constant strings. You see this, for example, in the credit screen of Tetris 2 and for short strings used in menus and HUDs. It doesn't work so well for A. numbers, B. user-entered names, or C. a very large number of strings, as might be found in dialogue or a help file. RHDE includes both A and C, and RPGs tend to include at least B and C even if they use a fixed 8x8 or 8x16 font for numbers.
93143
Posts: 1717
Joined: Fri Jul 04, 2014 9:31 pm

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by 93143 »

IIRC the case being examined was an inventory list.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by tepples »

Whether precomposed text is practical for an inventory list depends on how many unique items there are. Something with thousands of different items, like Animal Crossing series, will have a lot harder time than something with only a dozen. This goes double if the game is multilingual, such as the PAL versions. And even with fewer items, there's still a space-time tradeoff; RHDE has fewer than 20 items but they're all rendered in real time because the game is only 32K.
Near
Founder of higan project
Posts: 1553
Joined: Mon Mar 27, 2006 5:23 pm

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by Near »

> Then let me rephrase

Yes, we know. And for that matter, referer checking is stupid, anyway.
Everyone knows about it, so when people see 403, they just try the link again. All you're doing is annoying people trying to access your site.
The net result is going to be more people using things like Javascript to suppress referers.

I'm frankly surprised browsers don't already feature a privacy option to suppress cross-domain referers.
I'm also surprised we have "nofollow" but not "norefer" yet.

> Prerendering proportional text and storing it in the ROM works for a small number of constant strings

At 2bpp, it's 16 bytes per tile. Given each name is a different length, we'll average on 8 tiles per item name. So expand the game by 1MiB* and you have room for 8,192 items. Bahamut Lagoon has 128 items (so you'd need 16KiB of space for it), and I'd bet a game like FF6 probably has 256 - 512.

(* yes, expansion like this wouldn't be practical in 1996 for a commercial cart; but today that isn't a concern.)

I guess most people don't care. But I'm kind of hopeful that once we finally run out of SNES games to translate, people will start going back and redoing old fan hacks (and commercial releases) to be of much higher quality.
User avatar
mcmillen
Posts: 11
Joined: Fri May 22, 2015 5:41 am
Location: Boston, MA

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by mcmillen »

Thanks to everyone for all the super-detailed replies; it's been fascinating to follow along. In my real job I'm a software engineer, but have done a lot of data visualization stuff, so noone has to convince me that variable-width fonts are worthwhile (for information density *and* for looking good).

My intent here is mostly to understand how things are (& were) programmed so that I can improve my own understanding and ideas of things to try... not looking as much into translation / ROM hacking so much as learning to be an effective from-scratch homebrewer :) Anyways, thanks again for all the replies, it's been really educational.
User avatar
mcmillen
Posts: 11
Joined: Fri May 22, 2015 5:41 am
Location: Boston, MA

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by mcmillen »

Re: sites that do dumb things with Referer: you can get around this by wrapping it Google's link redirector, like so:

https://www.google.com/url?sa=t&url=htt ... readme.txt

(You do need the "sa=t" parameter.)
Sik
Posts: 1589
Joined: Thu Aug 12, 2010 3:43 am

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by Sik »

byuu wrote:Anyway, the one thing that stands out in my mind is that Lunar: Silver Star (the good one, not the shitty remakes) was all 8x16 fixed-width all-caps. Yeah, all-caps. And to tell you the truth, I never noticed that as being an issue until after I started ROM hacking. But today, it's a really big negative to me to play games with fixed-width fonts and heavily abbreviated item names. I guess we all get pickier with age. Exposure to so many games competing for our attention gives us the luxury of seeking out and appreciating those with extra attention to detail put into them.
I think it also depends entirely on the font, some fonts are really better off being monospaced and all-caps (the latter is especially true if the lower case characters would end up squished, I hate how many fantranslations have 7×5 lowercase characters that make them a pain to read). Also all-caps tends to make monospace more tolerable, incidentally (since there I think only the I letter becomes a big issue in terms of spacing).

Looking at Lunar's screenshots though, that font looks like it's horrible for reading in the long term (particularly the line spacing), and this is from somebody who's OK with monospaced all-caps fonts...
byuu wrote:> You don't have permission to access /hacks/snes/patches/18readme.txt on this server.

Come on, you of all people should know how to bypass an anti-leech script.
My first thought too =P Maybe it's just a warning to others?
Asaki
Posts: 81
Joined: Sat Jun 16, 2007 11:55 pm

Re: How did Final Fantasy VI do a non-fixed-width font?

Post by Asaki »

koitsu wrote:
Asaki wrote:Is that actually a retranslation? Or did they invent the extra dialogue themselves?
http://www.romhacking.net/hacks/18/
http://www.romhacking.net/hacks/snes/pa ... readme.txt

You can decide for yourself...
Hmm...it doesn't look like it says. "Text has been rewritten" could mean either way, really.
Post Reply