Adds simple way to add multilingual support to your game backed by a SQLite database. We could also use the same idea to feed more data into RPG Maker VX instead of the default database.
- See dependencies
- Run this command to combine core scripts source into one file.
ruby build.rb
- Copy the resulting file into your RPG Maker VX project
- Copy the
lib/rexml
folder and its content into theExternal Scripts
folder of your project - Copy all of the
lib/*.dll
files next to your.exe
of your project
OR
- There is an already pre-compiled demo with the classic sample project.
The dependencies must be inserted, in the below order, before the script of this repo :
- Depends on EBJB_Core : https://github.com/chaoshades/rmvx-ebjb-core/
CREATE TABLE LANGUAGES (
lang_id integer,
lang_desc nvarchar(20),
Primary Key (lang_id)
)
CREATE TABLE LOCALES (
locale_id nvarchar(100),
lang_id integer,
locale_text nvarchar(1000),
Primary Key (locale_id,lang_id),
Foreign Key (lang_id) references LANGUAGES(lang_id)
)
You need to add the tag \dbt[ID]
in the Show Text
event where ID
represents the unique identifier of the locale in the database.
To change the language, you can do so with a Show Choices
event or any custom script that change the value of the @@lang_id
global variable.
There are clearly newest versions available for these. However, the old ones still works :O.
I put the source code I had that was used to generate the wrapper to be called by RPG Maker VX. Sorry, I didn't found more details on how it was compiled though.
It's a wrapper, hence the name, on a library in C# that uses the ADO.NET provider for SQLite and return results in XML. It is loaded with a Win32API
call.
A Ruby library with a simple API to parse the XML returned by the SQLiteDBAccess library. It is loaded dynamically with the require method, which isn't available by default in RGSS2, so it was custom-made.
For more info, the source is there : https://github.com/chaoshades/rmvx-ebjb-core/blob/master/src/Other%20Scripts/RequireDefinition.rb
Still in development...