Skip to content

How to contribute a language

子悦解说 edited this page Oct 6, 2024 · 10 revisions

In Ultimate Edition, the localization task was divided into two parts. The first part is Major Translation, and the second is Minor Translation.

Besides this, you also need to do some preparation.

Preparation

Language

Choose a language, better not a language that already exists.

Fonts

Blitz3D TSS (an engine that UE mod is using) will render a non-existent character in font with space. In order to make your translation display normally, you need to choose some fonts for your translation.

The fonts must contain the characters that your translation uses, and making every file's size below 2MB is recommended.

Work Directory

Create a directory for your localization. This will be helpful for management, and easier for packing.

When you make the localization, you should keep the localized file in the same directory path as the game.

For example, if the game directory is C:\GameDirectory\Data\local.ini, the localized file should be saved in C:\WorkDirectory\Data\local.ini.

You can also create a GitHub repository, see TransRepo™.

Major Translation

Major Translation means contents in the Data\local.ini. This part is required for all languages.

This part can be finished in the Weblate project, see Weblate Project.

Weblate Project

Ultimate Edition has a localization project on ZiYue Weblate: https://weblate.ziyuesinicization.site/engage/scpcb-ue/

Current Progress

Why not Crowdin?

Crowdin requires pay-to-use, we don't have money.

Fonts Configuration

Data\fonts.ini is the fonts’ configuration file.

If your localization uses the same font for different font files, then you can edit the configuration to let the game load the same font file for the different fonts.

This configuration can help you to reduce the size of the localization.

This is a sample of the configuration:

[Default]
File = Courier New.ttf
Size = 16
Offset = 0
  • File is the font's file name.

  • Size is the size of the text.

  • Offset is the offset when rendering.

    For example, if the text position is 100, and the Offset is 3, then the text will render at 103.

Minor Translation

Minor Translation is the contents except Major Translation in Files List.

Although this part of localization is also important, the localization can be published without minor translation.

Publish

See also: TransRepo™

When you finish your localization, you should pack your work directory.

The localizations of Ultimate Edition are all managed by ZiYueCommentary, therefore you need to contact ZiYueCommentary to publish your localization. You can join ZiYue Weblate Discord server or Ultimate Edition Discord server to contact with ZiYueCommentary.

Players need to download the localization that they need so this step may take a lot of time. If your localization removes all redundancy things, players will spend less time on this. You should ensure every image file size is below 1MB, and remove all unnecessary files.

Perfect translation

Perfect translation means the localization contains all files in Files List.

All localization should be a perfect translation.

Files List

This table will list files that localization should contain.

Path File or Directory Description Require
Data\local.ini File See Major Translation. ✔️
Data\fonts.ini File See Fonts Configuration.
Data\achievements.jsonc File Achievement of the game. See ZiYue Weblate.
Data\SCP-294.jsonc File Drinks of SCP-294.
Data\subtitles.jsonc File Subtitles. It can be instead with SFX.
Data\loading_screens.jsonc File Loading screens.
GFX Directory Textures of the game.
SFX Directory Sounds. It can be instead with Data\subtitles.jsonc.

Language List

This is the list of languages that the game currently has.

See Language List of Ultimate Edition.