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

quantumde1 723c918490 maintaince 5 dní pred
conf 723c918490 maintaince 5 dní pred
source 723c918490 maintaince 5 dní 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 b3d1491154 fixed dub.json 1 mesiac 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 59adf931d0 fixed readme 1 mesiac 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 and background textures
  • Camera zooming to specific coordinates
  • Dialog box with multiple pages and choices, with configurable design using png background 40x32 images
  • Custom fonts(PNG format from XNA, ttf, otf)
  • Very flexible API with direct bindings from raylib, which allows to create interesting UI
  • Graphical effects from multiple PNG images
  • Resolution of development, end-user resolution, fullscreen, window name, icon, menu scripts and first game script.

TODO

  • Adding lipsync as a feature
  • Adding savestates in-engine

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