Skip to content

[Thoughts] Some Localisation Ramblings #96

@Sewer56

Description

@Sewer56

Random ramblings. They come up to my head every once in a while.

Binary Locale FIles?

In an ideal situation, to reduce binary size and improve load times, we should support a binary version of the localization files.

The textual version would be for development; i.e. that's what the people would edit.
The binary version would be for release; i.e. that's what the users would download.

However there's plenty of gotchas.

Distribution

The main catch still lies in signposting and distribution; how do you get the translations out to the users? This continues to be a challenge.

If we have a 'binary' version that's shipped out to users, we must have an easy way to get the textual version into the users' hands.

That would mean automatically downloading it on demand.

Issues with Some Mod Sites

Some mod sites (e.g. NexusMods) don't allow for automatic downloads of all files for non-paying users; even if a typical translation file may end up being <1KB in size. This is quite problematic.

  1. You want translation authors to be rewarded for their work.
    • Be it 'points', recognition, or any other kind of way.
  2. You want users to be able to switch translations without friction.

When the place that people upload to does not allow for automated downloads; fetching localisations becomes difficult; and no clear solution exists.

If a user needs to go to nexusmods.com 100 times, over a span of 1 hour to download 100KB of data because they changed the language in a dropdown, that's no good.

Hosting the files ourselves is an option; but it must not be rehosting of translation authors' already completed work. I would rather have the authors recognized for their work, and not upset them.

Other vendors have their own caveats, e.g. GameBanana is very unreliable; be it returning 0 byte downloads, or taking a while, even if automatic downloads were possible.

Something custom is the only viable option... but it gets tricky, especially once my contractual obligations are added into the mix too...

Something In Between?

Technically it's possible that we just have one 'repository' for translations.
i.e. A single GitHub repo or the like, where everyone contributes, and there's only 1 translation package.

That would even play nice with shipping binary translations, however that in itself has problems:

  1. Sometimes you'll need to patch actual game files
    • This would blow up the repo size, unimaginably.
  2. It's restrictive. What if you want to load alternative translations?

In the current design, anyone can ship any translation for any mod; and I'd love to keep that design if possible. Not sure if always possible though. We'd eventually need some sort of conflict resolution too.

Alternatively, the mods themselves could ship with their own translations, as opposed to relying on external ones; but I imagine many mod authors may not be too keen on that.

Ultimately

I still don't have the answers.
One day I'll need to come up with something, but I have not yet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions