Engine for visual novels, written in Dlang and Lua

quantumde1 7f07acc831 fixed readme lmao 5 天之前
conf 9e5a6ef6f6 moved menu from dlang to lua 1 周之前
source 46de4d1222 changed background drawing logic 6 天之前
.gitignore 34b1a548c7 fix 1 周之前
LICENSE 20b91a048f first on gogs 1 周之前
build.sh 9693668283 configured debug output for exceptions, fixed readme 1 周之前
dub.json 20b91a048f first on gogs 1 周之前
dub.selections.json 20b91a048f first on gogs 1 周之前
libhpff.lib 20b91a048f first on gogs 1 周之前
lua53.lib 20b91a048f first on gogs 1 周之前
raylib.lib 20b91a048f first on gogs 1 周之前
readme.md 7f07acc831 fixed readme lmao 5 天之前
vlc.lib 20b91a048f first on gogs 1 周之前

readme.md

Himmel Engine

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

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 vlc-dev liblua5.3-dev vlc lua
    

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

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

Features

  • 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