This page is out of date

You've reached a page on the Ren'Py wiki. Due to massive spam, the wiki hasn't been updated in over 5 years, and much of the information here is very out of date. We've kept it because some of it is of historic interest, but all the information relevant to modern versions of Ren'Py has been moved elsewhere.

Some places to look are:

Please do not create new links to this page.


Inputting information in a language other than English

Due to a limitation in the current Pygame SDL, renpy.input() does not currently support the input from an IME (used to input Chinese, Japanese, and many other languages); it is also impossible to enter characters that appear in Latin-alphabet-based languages like Spanish and French.

One way to circumvent this limitation is to use the SoftKeyboard framework, which provides a software keyboard that allows the inputting of special characters, symbols, and characters from other languages. There are also Cookbook pages for a Kana Converter (romaji to hiragana/katakana) and a Korean Inputter.

Another way is to have the user edit a text file and then to read the contents of that file in Ren'Py. The procedure is outlined below.

Reading a text file (Renpy 6.1.0+)

First, make a small text file containing the name of your character and nothing else. Make sure that the name is the only line, then save the file as UTF-8 in the game directory (where the script would be.) Mark it clearly so that prospective players can easily find it.

Next, insert this code into the init statement of your script:

$ nameVar = file(config.gamedir + "/Your name.txt").read().decode("utf-8")

Declare the named character like so, placing the name as the variable nameVar:

$ a = Character(nameVar, color="#c8ffc8")

If you need to insert the name into someone's dialogue, use %(nameVar)s to do it.

Also, include simple instructions telling the player how to alter the text file.

Of course, this procedure is not only limited to character names. It can be used to put in any kind of text.