VN32X - A tool to make visual novels for the 32X

Ask anything your want about the 32X Mushroom programming.

Moderator: BigEvilCorporation

haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

This is my new project; once done, it should allow anyone to make visual novels for the 32X.

For now, it's just a graphics test, testing image rendering, translucency and antialiased font rendering.
Later, I intend to make a library to actually make a graphical novel, but the user, at this point, will still need some C knowledge.
Even later, I intend to create a tool that will convert Ren'Py scripts to C code, therefore making the tool much easier to use.
If I get enough time, I may also implement a visual editor for Ren'Py scripts, to make the tool even easier to use.

GitHub repo: https://github.com/haroldo-ok/vn32x

Compiled demo:
vn32x-v0.0.1-proto.zip
(65.19 KiB) Downloaded 1560 times
SegaTim
Very interested
Posts: 180
Joined: Thu Nov 19, 2015 1:59 pm
Location: East Prussia
Contact:

Re: VN32X - A tool to make visual novels for the 32X

Post by SegaTim »

Like GINCS... :?:

Keep it going!
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Hello, again!

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
Into this:

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;
}
The generated C code can be linked alongside the included library, generating a 32X-compatible ROM.

Later, I intend to make an installer so that the tools can be installed without any hassle.

If anyone wants a precompiled sample ROM, here is a partial conversion of "The Question":
https://dl.dropboxusercontent.com/u/123 ... -proto.zip
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

BTW, I have started creating a visual editor: https://github.com/haroldo-ok/BlocklyVN32X
It's based on Blocklyduino.
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Also, I have made a 'portable' distribution, that includes the library itself, plus the tools plus the C compiler:
https://github.com/haroldo-ok/vn32x/rel ... e-0.2.0.7z

You can double-click build.bat to just generate the ROM, or run GNU_SH_elf.bat to have a shell session with all the required environment variables preconfigured.
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Good news: I am still working on its visual editor.

GitHub: https://github.com/haroldo-ok/BlocklyVN32X
YouTube: https://www.youtube.com/watch?v=dh5M_RHXBfg

Image
themrcul
Very interested
Posts: 119
Joined: Fri Apr 15, 2016 2:21 pm

Re: VN32X - A tool to make visual novels for the 32X

Post by themrcul »

That looks awesome.
I am most of the way through writing a scripting engine in my Mega Drive engine in C and the designer for Windows in C#.
Yours looks far more elegant than mine! Great job.
Chilly Willy
Very interested
Posts: 2993
Joined: Fri Aug 17, 2007 9:33 pm

Re: VN32X - A tool to make visual novels for the 32X

Post by Chilly Willy »

That really is cool. Should make it pretty easy to make visual novels for the 32X. :D
Muzzy
Interested
Posts: 24
Joined: Mon Jun 19, 2017 5:06 pm

Re: VN32X - A tool to make visual novels for the 32X

Post by Muzzy »

Good news indeed! Looks very promising. Just one little question - Is it possible to make a small animation, say, by setting the display time of the picture (1/30 second on one picture)?
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Muzzy wrote: Thu Aug 24, 2017 5:07 pm Good news indeed! Looks very promising. Just one little question - Is it possible to make a small animation, say, by setting the display time of the picture (1/30 second on one picture)?
Right now, no, but that may be implemented in a future version, though it may take some time to reach this point. :P
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Hello, again;

Version 0.4.0 of BlocklyVN32X has been released!

Release page: https://github.com/haroldo-ok/BlocklyVN ... tag/v0.4.0

The simplest way of running this preview release is by downloading the portable version:
https://github.com/haroldo-ok/vn32x/rel ... e-0.2.0.7z

Once downloaded, decompress the .7z file to some folder, and execute 'run.bat'.
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

A little warning about the portable version, as reported by Muzzy: WinRAR seems to be failing to deal with the really long node.js paths, causing the extraction to fail.

7-Zip, on the other hand, seems to be extracting the files correctly; I would recommend using it, instead.
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Version 0.5.0 now available!
  • Corrected some bugs on variable creation/renaming;
  • Fixed saving/loading of image blocks;
  • Added progress bars.
Release page: https://github.com/haroldo-ok/BlocklyVN ... tag/v0.5.0
Portable version: https://github.com/haroldo-ok/BlocklyVN ... -0.6.0.exe
Muzzy
Interested
Posts: 24
Joined: Mon Jun 19, 2017 5:06 pm

Re: VN32X - A tool to make visual novels for the 32X

Post by Muzzy »

Does the "delay" (in the section "control") work in this version (Portable 0.6.0) ? Maybe I'm using this function incorrectly...
haroldoop
Very interested
Posts: 160
Joined: Sun Apr 29, 2007 10:04 pm
Location: Belo Horizonte, MG, Brazil

Re: VN32X - A tool to make visual novels for the 32X

Post by haroldoop »

Muzzy wrote: Wed Sep 06, 2017 7:04 pm Does the "delay" (in the section "control") work in this version (Portable 0.6.0) ? Maybe I'm using this function incorrectly...
Unfortunately, the delay function hasn't been implemented, yet.
Post Reply