Localizing Unity games as an indie dev
bjmalicoat.comUnity's own localization package is actually pretty good, and one of the few Unity packages that actually seems to solve more problems than it creates: https://docs.unity3d.com/Packages/com.unity.localization@1.4...
Yes, in the past I've both rolled my own localisation system and used Unity's localization package, and the official package is really excellent. There's Google Sheets integration[0], Pseudo language generation for testing[1], and the system for templated strings/nested strings/strings that only slightly differ based on gendered words, is really deep.
[0] - https://docs.unity3d.com/Packages/com.unity.localization@1.0...
[1] - https://docs.unity3d.com/Packages/com.unity.localization@1.0...
Double extra yes to pseudo-localized builds in front of humans to catch unloc'd strings.
It's not a perfect solution, but it's an odd kind of elegant. Elegant to code up and reliant on innate human pattern-matching to find bugs! Sorta like altering CSS for testing's sake on web pages so that some things just "pop."
I wish more people used those simple tricks. We waste an amazing amount of time on "perfect" solutions when we code automation and on manual testers walking the same paths, the same ways, over and over in their scripted test cases.
> Pseudo language generation for testing
Would be fun to have it translate to gibberish elvish using ChatGPT.
I say gibberish elvish because apparently from a recent thread on Reddit, ChatGPT does not do a very good job at translating into elvish.
https://www.reddit.com/r/sindarin/comments/10gbq8z/i_asked_c...
Love that they handle images too! Something I haven't needed yet, but can see the need for. Your point about causing more problems than it solves is why I had a knee-jerk avoidance to the official loc package. Seems like I was wrong about that.
BTW Love the style of Aztez.
> BTW Love the style of Aztez.
Oh hey, thanks! I just realized my profile here was way out of date. Updated!
(Aztez was released and bombed, whoops)
Hah, sorry to hear it didn't meet expectations! I love Capy too so you've still got my support :)
Neat, thanks for releasing this tool! I've had luck with i2 loc in other projects, but will take a look at this next time. Also, to shamlessly co-opt this thread, you might be interested in a tool I wrote a while back: https://github.com/aschearer/LocWarden
It's sort of like lint for loc files, catching common translation errors I've come across as well as helping generate common loc assets e.g. Steam store markup.
Nice! I'll take a look at that. Loc is funny because there are clearly tons of tools (both paid and free), but it's not that hard of a problem so it's easy to have the "not invented here" mentality and just do it yourself! I hoped by writing it up in a very Unity-specific way, I'd save some people some time even if they use another tool or write it themselves.
> One for Japanese and Chinese
Please don't do this! Han Unification causes your Japanese text look weird when displayed with a Simplified Chinese font, likewise with a Traditional Chinese or Korean font.
https://heistak.github.io/your-code-displays-japanese-wrong/
Interesting! I never ran across this problem before despite doing a lot of i18n, but it seems like its because we're properly setting everything up with http headers.
Definitely useful knowledge for the game we're working on though.
Thanks for the tip! I've updated the article (and I'll soon update my game!).
Related, I made a tool to convert a YAML file with localizations into type safe go/typescript code. Anyone interested in it?