Code Monkey home page Code Monkey logo

iris-engine's Introduction

Iris Engine

Iris Engine is a visual novel engine that will help you tell interactive stories.

Its scripting language, Lua, is really easy to learn, so you will be able to express your ideas even if you don't know anything about programming. Here is an example of a conversation between two characters:

-- First, give a name to your characters
h = Character.new("Haru")
s = Character.new("Sakura")

-- And let them speak
h "Hi there!"
s "This is all you need to do to display dialogue on the screen."
h "Easy, right?"

Please note that Iris Engine is still in development and some important features have not been implemented yet. Using it for production is not recommended.

Getting Started

System requirements

  • Visual C++ Redistributable 2015

iris-engine's People

Contributors

diegodan1893 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

iris-engine's Issues

Random crash

Some beta testers have reported the game crashing randomly after playing for a while. All of them encountered the crash in their first playthrough. Neither I nor other beta testers have been able to reproduce the crash.
It might be a hardware-specific issue, but I suspect it can be a problem with the Lua garbage collector.

A crash report utility would be helpful for these cases.

Lua garbage collector can destroy objects that are currently visible

If there are no references to an object in Lua (for example, a local variable that goes out of scope), that object will be destroyed by the garbage collector. If that object was a Sprite and it was visible, the player will be able to see how it disappears from the screen.
The destruction is done safely, so the game won't crash or anything, but I don't think this should be the intended behavior.

This is the reason why the "openScript" Lua function hides all the objects in the scene except for the background.

Allow backgrounds and character bases to have different resolutions

Currently, all background images must have the same resolution, otherwise, during transitions one of the backgrounds will be scaled to match the resolution of the other. The same goes for any other object that supports dissolve transitions, including character sprites.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.