For the last 3 months, I've been working on a new visual novel engine: the Embeddable Visual Novel Engine, dubbed EVEN, because it's a lot easier to say that way.
It's a visual novel engine much like Ren'py, the most significant difference is that it's written in JavaScript and uses hardware accelerated WebGL canvas to do it's rendering and animation.
It's called the "Embeddable" Visual Novel Engine because it's very versatile and can be used in many different ways: It can be used within a website (think Flash games), as it's own standalone program, or even within another game (as a cutscene engine for an RPG, for example).
Key features include:
- Very high performance (thanks to WebGL and JIT-compiled JavaScript)
- Touch-friendly, usable on ALL platforms, including every major smartphone/tablet (Android, iOS, Windows Phone
- Embeddable, can be used by itself or within another game.
- Highly programmable (if you know javascript, you can make virtually any kind of game you want with it)
- Simple and elegant animation language gives you exact and easy control over sprites and text.
- Animate multiple Progressions simultaneously; a progression is a linear timeline of Pages. This is EVEN's most powerful feature, as it in effect allows you to animate multiple scenes at the same time. These scenes don't have to be just story animation. A scene can be defined as a menu, a dialogue page, a weapons inventory, etc...
- Progressions have a feature called velocity: you can control how fast time moves in the progression. So if you want to fast forward 2x, 4x, 5.85x, 100x, whatever you want. You can also do negative velocity, to have the scene animated in reverse. Fast-forward, slow motion, reverse slow motion, rewind, do whatever you want.
- All sprites and text can have their own touch and mouse event handlers, so you can make your scenes interactive.
- Sprite and text image filters, including: tinting, multiply, screen, overlay darken, lighten, color-dodge, color-burn, hard-light, soft-light, difference, exclusion, hue, saturation, color, luminosity.
- All text letters can have individual animations applied to them.
- Simple layer hierarchy, where you can group sprites and texts into individual layers, and each sprite/text can act as a layer container for other sprites/texts. This means any animation applied to a layer, will be applied to all its children as well.
- Infinite looping animations that can be applied to individual sprite/text properties during a page animation.
- And much more...
This engine is about 80% done, I will open source it (and maybe crowdfund some money to host a website and fund this as an ongoing project) this Spring.
I will enter NaNoRenO this upcoming month and use my entry as a showcase demo for this engine. So please look forward to it.
Finally, for those who've stuck with me and are interested, what I need from you guys as fellow visual novel authors, is: what features do you want to see in this engine? What do you regard as "essential" that any visual novel engine worth its salt should be able to do? Be as specific as you want, such as volume settings, save page styles, etc... What deficiencies with Ren'py or other visual novel engines would you like to see addressed? If this were to blossom into an ongoing community project, how would you like it handled? Go ahead and put on your blue-sky caps, I'm all ears.