Vinora Engine

The simple and portable visual novel engine

English | Русский | Translate...

One day, we got tired.

It's time to say enough!

As a VN developer:
  • I want to download a single binary without any
    "Please download Visual C++ Framework" or
    "Please setup Python interpter"
  • I want to make a game even on my "potato" PC, without any troubles.
  • I want to write screenplay once and one-click port it to Windows/Linux/MacOS/Android/Web.
  • I want my games to be able to run on any hardware, including old and future PC's.
  • I want my screenplay to be readable, human format, which can be easily explained to my editor or beta-reader.

  • I DON'T want to have any kind of "coder" in my team. If I want to make a RPG, I will hire an actual programmer.
As a VN reader:
  • I want to download an archive, extract and run it on any hardware or OS.
  • I want to be able to read a game as a website or ebook.
  • I want to be able to easily modify or translate a game, without developer's help or support.
  • I want to have basic features: rollback, dialog history, gallery, flowchart, even if developer didn't implement it.
  • I want to have ability to customize or uniform all VNs made in Vinora Engine, as I like.

  • I DON'T want my saves to break with another engine/game update in any way.
  • I DON'T want game to have any DRM, copy-protection or any other type of malware.

So, how do we do this?

Vinora Engine (VIsual NOvel RAylib) is designed with KISS principle in mind.

It's not made as IDE, but rather as a viewer. Visual novel on this engine is just a bunch of .vnrs text files (Vinora Screenplay/Scene), media files and Vinora Engine binary to view/play this files.

Vinora Screenplay itself is just a modified Markdown markup.
It's not in any way a programming language, just a simple, widely used markup. If you ever used **this** syntax for bold, *this* for italic or ~~this~~ for striketrough, you already knew the basics.

So, with having this simple format, any programmer can make an engine, capable of working with this format and any user can write it's own visual novels without programming.
We also choose simple, low-level technologies to write Vinora Engine, so it will be fast and portable.


Technical details

Vinora Engine is made in C99, with only OpenGL and libc as runtime dependency. It's also possible we will make a completely static version with OS as only runtime dependency, if Raylib's devs implement software renderer properly.

Raylib (framework which Vinora uses) is runnable on dozens of platforms, including BSDs, Raspberry Pi and portable consoles.
We can also expect that future PCs will have the ability to compile C99 code (since C/C++ are THE languages of OS and all critical software)

And if somehow they wouldn't, Markdown will stay. Even if Markdown will become forgotten, text files aren't going anywhere: Vinora Specfication is so simple, that even newbie programmers can write a capable Engine (well, we wrote one :)
And even if people completely forgot C, .vnrs files are human-readable (in contrast to Python/XML-like files). So, at least, user can read them as a play.

Key features

Markup example

		# Prologue

		![](bg/park_evening.png)

		> Scene seems kinda forced, maybe rewrite it completely?

		@NARRATOR  
		The sun sets slowly behind the trees.

		@ALICE  
		Hello, stranger.

		@BOB  
		Hi, Alice! Long time no see.

		+ [Tell her about the secret](secret.vnrs)
		+ [Just smile and wave](end.vnrs)
		

Links