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

quantumde1 fb94e8ea63 improved output 1 개월 전
conf e5bd7d228f added config point for changing menu script path 1 개월 전
source fb94e8ea63 improved output 1 개월 전
.gitignore 9ca5cca122 fix 2 달 전
LICENSE 20b91a048f first on gogs 3 달 전
build.sh cee32891b6 fixed readme 2 달 전
dub.json f0e8359f69 fixed reprod.builds on Windows 1 개월 전
dub.selections.json 20b91a048f first on gogs 3 달 전
image.png 48aead87dd added image to markdown 2 달 전
libhpff.def 9f513ba182 changed engine_loader to engineLoader lmfaoo 2 달 전
libhpff.lib 20b91a048f first on gogs 3 달 전
lua53.lib 20b91a048f first on gogs 3 달 전
raylib.lib 9f513ba182 changed engine_loader to engineLoader lmfaoo 2 달 전
readme.md cee32891b6 fixed readme 2 달 전
vlc.lib 20b91a048f first on gogs 3 달 전

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