Translation Engine
SumRndmDde
This plugin provides game developers with tools necessary to easily and effectively translate and localize all the text within their game. This is through both an in-game tool that can be used while playtesting and a powerful notetag system for translating database inputs.
这个插件提供游戏开发者并提供必要的工具,以便轻松有效地翻译和本地化游戏中的所有文本。这是通过游戏中可以在测试时使用的工具和用于翻译数据库输入的强大的notetag系统。
Installing the Plugin
Here’s a quick overview on how to properly install the plugin:
这里有一个快速概述如何正确安装插件:
-
Place this plugin at the bottom of your plugin list!
1)将此插件放在插件列表的底部! -
Fill out the [Languages] plugin parameter with all the languages the game will be translated to.
2)用游戏将翻译成的所有语言填写[语言]插件参数。 -
Set the [Source Language Name] plugin parameter to the name of the language used by the text by default.
3)默认情况下,将[源语言名称]插件参数设置为文本使用的语言的名称 -
Finally, set [Provide Option?] ON or OFF based on whether or not you wish to provide the player with the option to change the language in the options menu.
4)最后,根据您是否希望向玩家提供在选项菜单中更改语言的选项,将[提供选项]设置为开或关。
How to open the Translation App
While playtesting, press [CTRL + T] on Windows or [CMD + T] on Mac in order to open the “Translation App”. This is an app/editor that allows one to set up translations while playing the game.
虽然玩测试,在Windows上按[CTRL + T]或在Mac上按[CMD + T] 以打开“翻译应用程序”。这是一款应用/编辑器,可让您在玩游戏时设置翻译。
Once the app is open, it will act as a separate window from the game window.
一旦应用程序打开,它将作为游戏窗口的单独窗口。
Here are a few rules that apply:
以下是一些适用的规则:
-
While the app is open, the game will only show the default text. You may not view translations unless the tool is closed. This is to help avoid confusion while editing since changes will not be applied until the app window is closed.
1)当应用程序打开时,游戏只会显示默认文本。除非工具关闭,否则您不能查看翻译。这是为了避免编辑时出现混淆,因为在应用程序窗口关闭之前不会应用更改。 -
The game cannot completely shut down unless both the game window and the
editor window are both closed. If, for some reason, you cannot playtest your game, be sure the Translation App is closed!
2)游戏无法完全关闭,除非游戏窗口和编辑窗口都关闭。如果出于某种原因,您无法测试您的游戏,请确保翻译应用程序已关闭! -
The app will save its position when it is closed. If you open it again, it will appear where it left off! However, once you close or reset the game, its position will also be reset.
3)该应用程序将关闭时保存其位置。如果你再次打开它,它会出现在它离开的地方!但是,一旦你关闭或重置游戏,它的位置也将被重置。
How to use the Translation App
To start translating, first select the language you wish to translate to in the top-right corner of the app. Next, select what aspect of your game you wish to translate. All four choices appear as tabs you may select from the top of the editor. They are:
开始翻译,首先在应用的右上角选择你想翻译的语言。接下来,选择您想要翻译的游戏的哪一方面。所有四个选项都显示为您可以从编辑器顶部选择的选项卡。他们是:
~ Messages
~ Commands
~ Terms
~ Custom Translations
〜消息
〜命令
〜术语
〜自定义翻译
Here’s an explanation of each one:
以下是对每一个的解释:
Messages
This allows developers to provide translations for text within “Show Text”
events and “Show Scrolling Text” events. While the “Messages” tab is open,
the Original input will update itself to the current text displayed within
one of the aforementioned events. If neither of those events are active,
the input will remain blank.
这允许开发者在“显示文本” 事件和“显示滚动文本”事件中为文本提供翻译。当“消息”选项卡打开时,原始输入将自行更新为上述事件之一中显示的当前文本。如果这两个事件均未激活,则输入将保持空白。
While Original input box has text in it, one may create a translation for
the displayed text in the Translation input box. Simply type the text in
and it will save automatically!
当原始输入框中包含文本时,可以在翻译输入框中为显示的文本创建翻译。只需输入文本,它会自动保存!
Keep in mind the translations should include the desired text codes!
请记住,翻译应该包含所需的文本代码!
Also, this mode works great with the Event “Test” feature!
此外,这种模式与事件“测试”功能非常相称!
Commands
One may provide translations for any command windows using the “Commands”
tab. While this tab is open, all one must do is have an active cursor on a command window, and the Original input will update itself. Insert a corresponding translation into the Translation input to translate the command!
可以使用“命令” 选项卡为任何命令窗口提供翻译。当这个选项卡打开时,所有人必须做的是在命令窗口上有一个活动光标,并且原始输入将自行更新。将相应的翻译插入翻译输入以翻译命令!
Some windows that fall under the category of “command windows” include:
属于“命令窗口”类别的一些窗口包括:
- The title screen command window
- The menu command window
- Command menus in other scenes
- The options window
- The game end window
- Event choice windows
*标题画面命令窗口
*菜单命令窗口
*其他场景中的命令菜单
*选项窗口
*游戏结束窗口
*事件选择窗口
This, of course, will also work with command windows added through
external plugins. Don’t be afraid to experiment!
这当然也可以通过外部插件添加命令窗口。不要害怕尝试!
Terms
This section allows developers to translate the terms and messages from within their project’s Database’s Terms tab. All the Base Statuses,Parameters, and Messages can be translated here. First, select the “Term” from the dropdown list. Next, input a translation based upon the provided Original input that contains the current text for that term.
本部分允许开发人员在其项目的数据库的术语标签中翻译术语和消息。所有的基本状态,参数和消息都可以在这里翻译。首先,从下拉列表中选择“术语” 。接下来,根据提供的包含当前文本的原始输入输入翻译。
Similar to the previous tabs, once you insert the text into the Translation box, it will immediately be saved!
与以前的选项卡类似,一旦将文本插入翻译框,它将立即被保存!
When one begins his or her translation process, it is recommended he or she starts the process here. This tab provides the capability to make a large number of helpful base translations!
当一个人开始他或她的翻译过程时,建议他或她在这里开始这个过程。此标签提供了大量有用的基础翻译的功能!
Custom Translations
Custom translations allow for developers to set a word to phrase to specifically translate into another. This is primarily used to translate text that cannot be translated through any of the other mediums provided through this plugin. Use this as a last resort for anything you cannot
translate normally!
自定义翻译允许开发人员设置一个词,以专门翻译成另一个词。这主要用于翻译
无法通过此插件提供的任何其他介质翻译的文本。将此作为通常无法翻译的任何内容的最后手段!
In order to add a translation, simply fill out both the “Original” and“Translation” inputs, then press the “Add Translation” button. This will add the pair to a list of custom translations displayed on the lower-half of the page.
为了添加翻译,只需填写“原始”和“翻译”输入,然后按下“添加翻译”按钮。这会将该对添加到页面下半部分显示的自定义翻译列表。
In order to delete a translation, fill out the “Original” input with the original text for that translation, then press the “Delete Translation” button. This will remove that translation pair from both the list and the game itself.
为了删除翻译,请使用该翻译的原文填写“原始”输入,然后按下“删除翻译” 按钮。这将从列表和游戏本身中移除该翻译对。
RegExp Translations
Custom translations can also use Regular Expressions. As opposed to the normal custom translations which require exact matching in order to work, Regular Expressions can allow for more dynamic checks and replacements from within larger bodies of text.
自定义翻译也可以使用正则表达式。与正常的自定义翻译相比,需要精确匹配才能正常工作,
正则表达式可以允许在更大的文本体内进行更动态的检查和替换。
In order to setup a Regular Expression, simply set the Original input to
have a Regular Expression using the typical JavaScript format:
为了设置正则表达式,只需使用典型的JavaScript格式将原始输入设置为正则表达式即可:
/expression/flags
For example:
/Harold/ig
This example will check all texts for this match and apply a replacement in order to replace this with the text defined in the Translation input.
此示例将检查此匹配的所有文本并应用替换,以便将其替换为在翻译输入中定义的文本。
Translating the Database
The second part of this plugin revolves around translating Database inputs by using a notetag setup to translate specific fields. This can be done with Actors, Classes, Skills, Items, Weapons, Armors, Enemies, States, and Tilesets.
这是第二部分插件围绕翻译数据库输入,通过使用备注设置来转换特定字段。这可以通过
Actor,Classes,Skills,Items,Weapons,Armors,Enemies,States和Tilesets完成。
To do this, use the following notetag structure:
为此,请使用以下notetag结构:
[PROP]:VAL
[PROP]:VAL
</LANGUAGE Translation>
[LANGUAGE] => The name of the language this is a translation for.
[PROP] => A field name for this data object.
[VAL] => The translated value for that data object’s field.
Example
This may appear to be a little confusing, but here is an example that one
may use to translate an Actor’s fields:
这看起来有点令人困惑,但这里有个例子可以用来翻译Actor的字段:
<Spanish Translation>
[name]:Haroldo
[nickname]:Harldy
[profile]:Este es el héroe del juego.
Le gusta caminar por la playa y jugar juegos.
</Spanish Translation>
This means, when the language is set to Spanish, this Actor will have the
following changes:
这意味着,当语言设置为西班牙语时,此演员将进行以下更改:
Name will be set to “Haroldo”.
Nickname will be set to “Harldy”.
Profile will be set to “Este es el héroe del juego.
Le gusta caminar por la playa y jugar juegos.”
名称将被设置为“Haroldo”。
昵称将被设置为“哈尔迪”。
配置文件将设置为“Este es elhéroedel juego。
Le gusta caminar por la playa y jugar juegos。“
All Common Fields
Here is a list of all the common field names you may wish to use
corresponding to each Database section:
以下是您可能希望使用的与每个数据库部分对应的所有常用字段名称的列表:
[Actors]
<LANGUAGE Translation>
[name]:
[profile]:
[nickname]:
</LANGUAGE Translation>
[Classes]
<LANGUAGE Translation>
[name]:
</LANGUAGE Translation>
[Skills]
<LANGUAGE Translation>
[name]:
[description]:
[message1]:
[message2]:
</LANGUAGE Translation>
[Items, Weapons, Armors]
<LANGUAGE Translation>
[name]:
[description]:
</LANGUAGE Translation>
[Enemies]
<LANGUAGE Translation>
[name]:
</LANGUAGE Translation>
[States]
<LANGUAGE Translation>
[name]:
[message1]:
[message2]:
[message3]:
[message4]:
</LANGUAGE Translation>
[Tilesets]
<LANGUAGE Translation>
[name]:
</LANGUAGE Translation>
Different Images Based on Language
One may load alternative images based on the game’s language. To do this,one must use the following format for the image file name:
可能会加载基于游戏语言的替代图像。为此,必须使用以下格式的图像文件名称:
IMAGENAME_[LANGUAGE]
To allow the plugin to recognize that an image can be translated, first set the original image’s file name to:
要允许插件识别图像可以被翻译,首先将原始图像的文件名称设置为:
IMAGENAME_[Original]
Then set up names for all your alternative images:
然后为所有替代图像设置名称:
IMAGENAME_[Spanish] IMAGENAME_[Portuguese]
Be sure to set up images for all languages in your game!
一定要为游戏中的所有语言设置图像!
Plugin Commands
In order to force the game to use a specific language, the following plugin command must be invoked in an event. This can be different for every game file.
为了强制游戏要使用特定的语言,必须在事件中调用以下插件命令。每个游戏文件都可能有所不同。
SetTranslation LANGUAGE
For example:
SetTranslation Spanish
Once a language is forced, it cannot be changed in the options menu. In order to remove a forced translation, use the plugin command:
一旦强制使用语言,就不能在选项菜单中进行更改。要删除强制转换,请使用plugin命令:
RevertTranslation
Checking Current Language
In order to change events based on the current language, the following script condition needs to be used:
为了改变事件基于当前语言,需要使用以下脚本条件:
ConfigManager.getLanguage() === “LANGUAGE”
For example:
ConfigManager.getLanguage() === “Spanish”
End of Help Section
帮助部分结束
网友评论