I have just finished an actual working prototype of the engine.
It includes a 'transpiler' that can turn a Ren'py-like script into a C file plus some includes.
That is, it can turn this:
Code: Select all
image bg uni = "uni.jpg"
image sylvie normal = "sylvie_normal.png"
label start:
scene bg uni
"When we came out of the university, I saw her."
show sylvie normal
"She was a wonderful person."
"I've known her ever since we were children."
"And she's always been a good friend."
"But..."
"Recently..."
"I think..."
"... that I wanted more."
"More just talking... more than just walking home together when our classes ended."
"And I decided..."
menu:
"... to ask her right away.":
jump rightaway
"... to ask her later.":
jump later
Code: Select all
#include "script.h"
extern uint16 vg_uni[];
extern uint16 vg_sylvie_normal[];
const uint16 *vi_bg_uni = vg_uni;
const uint16 *vi_sylvie_normal = vg_sylvie_normal;
void *vn_start() {
int mn_choice, mn_option_1, mn_option_2;
vnScene(vi_bg_uni);
vnText("When we came out of the university, I saw her.");
vnShow(vi_sylvie_normal);
vnText("She was a wonderful person.");
vnText("I've known her ever since we were children.");
vnText("And she's always been a good friend.");
vnText("But...");
vnText("Recently...");
vnText("I think...");
vnText("... that I wanted more.");
vnText("More just talking... more than just walking home together when our classes ended.");
vnText("And I decided...");
initMenu();
mn_option_1 = addMenuItem("... to ask her right away.");
mn_option_2 = addMenuItem("... to ask her later.");
mn_choice = vnMenu();
if (mn_choice == mn_option_1) {
return vn_rightaway;
} else if (mn_choice == mn_option_2) {
return vn_later;
}
return vn_start;
}
Later, I intend to make an installer so that the tools can be installed without any hassle.
Also, for programmers, it should be possible to semi-easily adapt this tool to target other hardware platforms, as long as there's a C compiler for them.
GitHub repo: https://github.com/haroldo-ok/vn32x