Engine for visual novels, written in Dlang and Lua https://underlevel.ru

quantumde1 cee32891b6 fixed readme 2 mesiacov pred
conf 700f0e88be moved effects from menu.d 2 mesiacov pred
source 700f0e88be moved effects from menu.d 2 mesiacov pred
.gitignore 9ca5cca122 fix 2 mesiacov pred
LICENSE 20b91a048f first on gogs 3 mesiacov pred
build.sh cee32891b6 fixed readme 2 mesiacov pred
dub.json 20b91a048f first on gogs 3 mesiacov pred
dub.selections.json 20b91a048f first on gogs 3 mesiacov pred
image.png 48aead87dd added image to markdown 2 mesiacov pred
libhpff.def 9f513ba182 changed engine_loader to engineLoader lmfaoo 2 mesiacov pred
libhpff.lib 20b91a048f first on gogs 3 mesiacov pred
lua53.lib 20b91a048f first on gogs 3 mesiacov pred
raylib.lib 9f513ba182 changed engine_loader to engineLoader lmfaoo 2 mesiacov pred
readme.md cee32891b6 fixed readme 2 mesiacov pred
vlc.lib 20b91a048f first on gogs 3 mesiacov pred

readme.md

Himmel Engine

Himmel(equal to Heaven, but in German) is an engine for Visual Novels, written using Dlang and Lua.

image info

Getting Started

Getting needed components

Build system currently assumes POSIX like system. For building, you need first install next components on:

  1. FreeBSD:

    sudo pkg install ldc vlc dub lua53
    
  2. Alpine:

    doas apk add ldc2 dub vlc-dev vlc lua5.3-dev 
    
  3. Debian:

    sudo apt install dub ldc libvlc-dev liblua5.3-dev vlc lua5.3 build-essential
    

Next, run ./build.sh . Everything will be done automatically!

Features

Engine scripts are written in Lua with some raylib direct bindings as well as some custom functions written for visual novels

  • Drawing, loading, unloading and stop drawing character textures
  • Drawing, loading, unloading and stop drawing background textures
  • Camera zooming to specific coordinates
  • Dialog box with multiple pages and choices
  • Ability for configuring custom font using setFont()
  • Graphical effects from himmel archives(HPFF)

TODO

  • Adding lipsync
  • Adding savestates in-engine
  • Adding backlog and menus

Documentation

You can see documentation on Himmel's wiki page. It contains cheatsheet and some useful examples for getting started with development.

License

raylib(raylib.com) uses zlib/libpng license

himmel engine uses MIT license

VLC(videolan.org) uses LGPL license

lua(lua.org) uses MIT license