After having looked around this forum and seeing so many threads about people wondering how to do this as well as myself having wondered how to do this, I figure I would let you know how its done. I have done this and have it completely working on a w810i, so I would figure it would work similarly on other phones as well.
NOTE: Its always smart to keep a copy of all the files that you will be changing someplace on your pc so that you can undo everything if you encountered a problem.
1) you will need to break into the phone using FAR. If you don't know how to do this, there are tuts for this everywhere.
2) you will need to navigate to tpa/preset/system/language on your phone using FAR.
3) you will need to copy over your .t9 and .lng files for the language(s) that you wish to add.
4) you will then need to delete the lng.lst and lng.dat files that are also in the tpa/preset/system/language directory. (the phone should rewrite these with the new languages when you restart it)
5) you will need to find and edit the allowed_language.txt to allow your desired languages.
eg. if you wanted to add english, you would start with a list of languages like "zs, zh," in the file, and you would just need to edit english in like so "zs, zh, en,"
6) Next would be to now find and edit the customize.xml file which can be found in tpa/preset/custom. Here you will again need to be adding the language.
eg:<?xml version="1.0" encoding="UTF-8"?>
<customization>
<info>
<cda-number>CDA102494/100</cda-number>
<cda-revision>R1A</cda-revision>
<model>W810i</model>
<country>Indonesia</country>
<operator>Generic Trade</operator>
<language-variant-name>APAC</language-variant-name>
<allowed-language>zs</allowed-language>
<allowed-language>zh</allowed-language>
<allowed-language>en</allowed-language>
</info>
7) last step is the easiest, restart your phone and enjoy!
I have noticed that sometimes the phone will be quite picky, so make sure that the .t9 and .lng files of the language you are trying to add are from the same phone. I have only used them from the same firmware version so I cannot say if it will or willnot work from other versions. I have heard some say that the .t9 is the only that is firmware dependent and others say both are, I cannot say as I have not tried either from different firmwares. Also the .t9 and .lng filenames should be in lowercase letters. The phone may have issues if there not, so for example it should be en.t9 rather than EN.T9, EN.t9, or en.T9
If your looking for the language files, you can either find them on this site in the download section, or you can do it manually if you can get a hold of the MAIN not the FS and extract it from that.