Function Repository Resource:


Source Notebook

Translate a string from Al Bhed, the cipher language from the game Final Fantasy X, to Latin or hiragana

Contributed by: Nick Zitzmann


translates a string from Al Bhed to Latin or hiragana.

Details and Options

Al Bhed is a cipher that is spoken by the Al Bhed people in the popular game Final Fantasy X. The cipher works by substituting Latin letters with other letters, or hiragana letters with completely different katakana letters, in such a way that the results can still be pronounced by a human.
Latin letters retain their case during translation.
This translator will translate proper nouns and titles, even though Al Bhed, as it is spoken in Final Fantasy X, does not translate proper nouns or titles. So, for example, "Al Bhed" in Al Bhed is actually "Al Bhed" and not "Ym Prat".
Latin accented letters are not handled by Al Bhed, and will be ignored. Also, Al Bhed does not recognize the characters þ or ß, so those characters will be ignored.
Characters in scripts other than Latin and katakana will be ignored. Also, Al Bhed does not recognize the obsolete katakana letters ヰ and ヱ, so those characters will be ignored. The modern katakana character ヴ is also ignored.


Basic Examples (2) 

Translate from Al Bhed to English:

ResourceFunction["FromAlBhedString"]["Kuut sunhehk funmt!"]

Translate from Al Bhed to Japanese:


Neat Examples (1) 

While playing Final Fantasy X, you can use this function to see what the characters speaking Al Bhed are saying to each other, like this line from early in the game:

 "FromAlBhedString"]["E vunpet ed! Fa pnehk ed fedr ic."]


Nick Zitzmann

Version History

  • 2.0.0 – 12 December 2019
  • 1.0.0 – 14 November 2019

Source Metadata

Related Resources

Author Notes

Al Bhed, as it is spoken in Final Fantasy X, ignores proper nouns and titles. This translator does not discriminate based on whether the word is a proper noun or not. Humans are really good at parsing language and figuring out the proper noun, but it’s really difficult for machines to do the same. I once wrote a variation of this function that left nouns untranslated, but it had so many false positives in it that it was useless.

License Information