Translating Genesis and rule plugins
Genesis is always open for community contributions. This includes translations into other languages.
If you are willing to contribute a new translation, we are happy to include it.
Technical details
File Format
Genesis uses Java Property files (text files with ISO-8859-15 encoding). Each line is interpreted as a key/value pair like this
attribute.strength = StƤrke
You can include line breaks using ā\nā
attribute.helptext = This is the first line.\nThis is the second line.
You can also write multiline descriptions. This is done by ending a line with ā\ā and starting the next line with a space.
attribute.helptext = This is the first line.\n\
This is the second line.
You only need to translate the values, not the keys.
File Names
With the exception of a german only roleplaying game, we consider English the default language of the application. That means
a file some_name.properties is an default (english) language file
a file some_name_de.properties is a german language file
You can create your own language file by taking the default filename and intruduce a <languagecode> before the dot - e.h. some_name_fr.properties for french
If a key is not found in the translated language file, it is taken from the default language file.
Tools
The translation is stored along with the source code in a Git Repository. You can fork our repositories and create pull requests when you want us to include your changes. For more details consult our https://rpgframework.atlassian.net/wiki/spaces/GD/pages/502136833 section.
Translating the main application
All the source code and language files of the main application are stored on GitHub. You need to have an account there, to make a fork. There are two relevant repositories:
https://github.com/taranion/genesis/ (The main application)
Especially the language files here:
https://github.com/taranion/genesis/tree/master/Genesis/src/main/resources/org/prelle/genesishttps://github.com/taranion/rpgframework (The underlying framework)
All language files found here:
https://github.com/taranion/rpgframework/tree/master/RPGFramework_Core/src/main/resources
You need to translate all .properties
files found inside the repositories.
Translating a roleplaying plugin
Most of the translation work most likely goes into the roleplaying plugins. We use Bitbucket as a Git repository to store them, so you also need an account here.
There are several repositories for role playing systems:
Coriolis (also requires work on YearZeroEngine)
Space 1889 (also requires work on UbiquityEngine)
Splittermond (a german only RPG)
Shadowrun 5 (deprecated, since work on it has stopped years ago)
The layout of the repositories is usually that of several subprojects, each of which has a directory labeled src/main/resources where the language/properties files are located below.