ScreenPlay, a Visual Novel Engine

Posted Aug. 13, 2015, 10:35 a.m.
tags: Unity , ScreenPlay

As I transitioned from writing a Shadowrun Returns campaign, to a cyberpunk ChoiceScript game/book, to finally writing something in Twine, the question occurred to me - why aren't there any non-linear narratives that are multiplayer? Whenever I hear people talking about really good non-linear narratives like those by Telltale or Bioware, it's pretty common for them to mention that their friend/roommate/spouse loved watching the story and didn't want them to play the game without them in the room. Something about non-linear drama attracts spectators, so why not get them involved? That seemed worth taking a hack at since I've never seen it done before, and the setup was relatively simple...

But I'm not Bioware or Telltale, so I can't deliver a cinematic experience. Looking around at the different types of games with non-linear narrative, the least art-intensive genre that would still allow for multiple players to interact directly is that of visual novels. Stories are told with still images that occasionally transition and flash with some sound effects thrown in. Seemed like a realistic enough goal to write an engine in Unity for multiplayer visual novels, so I set off to do it.

A few months later, and I've got a functional prototype! Up to four players can join a game to make different choices and affect the narrative. Using some open game art, here's what it looks like...

All of the graphics are replaceable, of course, and so are the sounds. Even made a scripting language for content creators to use without having to alter the base code...

Naturally, there are 1003 features I still want to add to the thing, but the core functionality is there! Players can choose what they look like, spend stats in different ways, interrupt dialogue if they want to. When players choose different options, the content creator can resolve these differences in a variety of ways. I've got some ideas for interesting things you can do with this in narrative, but my limiting factor right now is still art availability. Even though visual novels have relatively low art requirements, people still expect those images to look good... So I'm writing a couple of stories to demonstrate what you can do with the engine (which I'm calling ScreenPlay for now), but am having to work within the constraint of what kind of art I can get my hands on.

Once I'm happy with ScreenPlay as an engine I'll probably release it into the wild, or maybe put it up on the Unity asset store.