Um... uh... uhhh...
So... okay. One could argue that the promises made in my last post were, maybe, overly ambitious. You know, the one where I said I was going to learn three languages and make a playable demo of a visual novel engine in 31 days? Suffice it to say that this has not happened.
That said, a lot has happened. I don't exactly not have anything to show. In fact, this might be the most success-full-ly unsuccessfully I've ever met a deadline!
I expected writing this engine to be hard, but learning curve aside, all of the things I expected to get stuck on have turned out to be pretty easy. (Of course, that means everything I didn't expect was super annoying.) It's been an educational experience! And what I've learned is: this idea definitely has some legs on it.
This is all a little abstract, so let's get a fuller picture of what this engine is, how it works, and what it'll let me do when it's done.
SlideVN
First of all, a name: The engine's working title is "SlideVN." This is a garbage name, and that's fine. We just need a word.
In a nutshell, what the engine lets me do is turn this...
into this:
One screenful of information as defined by the script is called a "slide." 'Cause it's kinda like a slideshow, I guess? The real magic happens when they're chained together:
And voila:
The specifics of how slides appear, and how transitions between slides happen, are almost entirely specified outside the script. It's either extrapolated from context by the engine, or defined by hand in separate reusable templates. The script simply plugs text and images into predefined layouts. The goal of all this is to make it as easy and fast as possible to write a story that combines text, images, and sound. This is important: I think I can admit by now that I'm just one single person, so every minute I can shave off from the production of a story adds up.
The secondary goal is to make the result as accessible as possible. This thing is really lightweight. It runs great on my ancient phone, and it loads just as fast as any other simplistic webpage. If your phone can handle running Twitter, it can run ten SlideVNs. The time between clicking a link to the VN and starting to read is on the order of a couple seconds.
That this has all gone so successfully comes at kind of a surprise to me. At every turn in the development process, I've found that I can make the script format even simpler and the engine itself even faster than I ever expected starting out. My mind's buzzing with ideas for what I can make just with what parts of the engine I've already built!!
Of course, for all that it makes my heart pound with excitement, the proof of the pudding is in the eating, and I'm still not quite at the stage of development where I can put together a proper demo. I understand that these screenshots do not exactly look interesting to someone who isn't me. In one sense, that's the point: I want the engine to get out of the way and just let you experience the story. But that means that a proper demonstration requires a story, and my hands are still full with this thing's guts!
* * *hello friends. despite what i just said, it was here in this section of this post where i'd planned to include a link to a very, very simple demo containing the test script shown in the images above. sadly, at the last possible minute, i've discovered that squarespace (where my portfolio is hosted and where i intended to host these VNs) literally does not allow you to upload files to it. there is no file manager and no way to gain ftp access to a website that i own. i did not consider this possibility when i made the portfolio site years ago, because it is absurd to the point of parody. well: now that i know a thing or two about web development, i'll simply have to make my own site!! however, there's less than one hour left in the year as i write this, so i'm afraid that for the purposes of this post, a clickable demonstration has fallen through my fingers like so much desert sand. piss and bastard... sorry buds!!
* * *
What remains to be implemented? Not much, really. I need to add sound, clean up the code, and standardize some things about the script format. There's plenty of other loose ends to tie up after that -- including implementing the settings menu among other UI tweaks -- but that's all I need to build a proper demo.
But first...
I need to finish this freaking minicomic!! Of the two things I wanted to get done this month, I started working on SlideVN first, oblivious to the depth of the hole I was about to fall into. So, I'm not gonna touch this thing again until the minicomic is fully inked; it's too dangerous.
Until then... Happy new year!! Thank you dearly for your support this year. The next one's looking pretty exciting, so I'll see you again soon!