DEdit – Database Editor

Documentation version 1.0 , 2005-03-11


Language-databases Introduction

TavernMaker can be configured for different languages. To translate the program into a new language, it is necessary to create a language database. This is done with DEdit in the Languages tab. A language database consists of a translation of all strings which might appear within the TavernMaker program interface. The database is automatically stored in a subfolder of the …/TavernMaker/Languages/…
folder with the name of the created language database. The folder holds several text files which all together form the language database.


Within TavernMaker one can choose any of the available languages. All interface buttons and dialogues are then translated according to the entries of the language database. However, it is important to know that RPS-files may overwrite some of the language settings! E.g. if an English language is chosen for TavernMaker, but a German RPS is loaded (e.g. AD&D-Deutsch), some words might be translated! (e.g. Tavern becomes Taverne and Table becomes Tisch etc.)


Therefore, the program language is only fully consistent when both the RPS file and the chosen language are the same! This is automatically true, when the option “from RPS" in TavernMaker/Language options is enabled, which is the default value.


What is translated by what and why?


Well, let me try to explain what things/settings need to be translated and what files/settings do the translation and why it is necessary to do it, as we did it.


The goal was to have a system which:

a) can be configured by anybody without codeing to allow the generation of taverns

b) has those taverns "populated" with descriptions of different roleplaying system

c) allows the reconfigure tavernmaker for other generating purposes (e.g. village generator)

d) allows mutliple languages.

e) allows further updates/changes without necessarily redoing everything!


Now, we have different "levels" of the program:

1) We have the databases which hold the actual description texts. These are of course of a certain language and for a certain roleplaying system. therefore, a RPS-file governs how databases are used. Translating the content of what TavernMaker generates means therefore translation (or recreation) of databases with the database-Editor (DEdit)


2) Depening on the purpose or roleplayingsystem, some "key"-words are differnt. E.g. the "races" are "human,elves,gnomes..." for fantasy taverns but maybe "Europeans, Americans, Asians" for a real-life based vampire game. Those words appear in the various dialogues of WinTavern (e.g. the settings-tab) and need to be different for different roleplaying-systems. Therefore, once again, the RPS-file manages these words, and to "translate" them, e.g. by creating a new language version of the some gaming system (e.g. AD&D), one has to translate these words in the according RPS-file by the RPS-Editor (RPSEdit).


3) There are a lot of buttons, dialogues, error-messges etc. in the main program TavernMaker. Those are usually english, but we do want to have them translated too. The language database does this. Unfortunately, some of the buttons/phrases etc. can depend on the purpose/RPS currently loaded. (e.g. A "create Tavern" button does not make sense for a village-generator) Therefore some of those translations need to be done by the RPS-file.


So, how is it done?

On startup, and if nothing else is found, TavernMaker loads all hardcoded strings. Those strings are in English, and for generating taverns of the high fantasy AD&D setting.

Next the program loads the chosen language from the "options/language" menu of TavernMaker. All strings which are saved in the according language database are overwritten.The language databases are by default made in a way, that they are for Any Language but for generating taverns of the high fantasy AD&D setting.

Now the program loads the RPS-file (e.g. StarWars). All keywords which are defined in the RPS-file are now overwritten. Undefined keywords stay in the chosen language. All RPS are based on a certain language database, so to not intermix them, there is the possibility to enable the "load language from RPS" settin in the "options/language" menu of TavernMaker. In this case (which is default), changing to a RPS of different language automatically changes the chosen language for TavernMaker.

Interesting, but what do I need to know?

You want to translate TavernMaker? Lets make it easy:


In a first step contact any of the project leaders! Then go to work...


step 1: check: Is there already a language database for my language available? Remember: There is only need for one such translation. If yes, skip the next paragraph an go straight to step 2.
If no, start DEdit, switch to the languages tab. Hit "create..." and enter the name of the new language. Now successively select all "Resource sections" for all "program sections". Each of them shows a list to the right, wherin each entry needs to be translated! (Click the string to edit it. In the top-right corner of the languages tab you will get some information on where this string is used and what is its English default value.) Save the database and send it to the project leaders! They will verify the database and send it back to you plus make it commonly available.


step 2: Create the RPS-file for the system you want to translate/create. If you, f.e. want to translate the AD&D-setting, create a new RPS-file "AD&D - myLanguage". More help can be found in the documentation of the RPSEdit, but basically you have to choose a language database and hit "edit" to make some system-specific translations, if necessary. Save the RPS-file and send it to the project leaders! They will verify it and send it back to you plus make it commonly available.


step 3: With the RPS-file ready, launch DEdit and select the your RPS. New start creating all the necessary databases! This is really the main work of translating/recreating and it will never stop. The bigger the databases, the better the output... However, once you have a reasonable set ready, send it to the project leaders! They will verify it and send it back to you plus make it commonly available.


step 4: If you really want to help out, also contact any of the project leaders if they need additional translation help. For example the homepage could need addtional language editons, and also the feedback-forum needs adiministrators for various languages...