A topdown 2D RPG game engine written in C++ built using minimal dependencies for the purpose of learning.
This is a fairly old project now, but it does represent a lot of learning in terms of C++, integrating a scripting language, handling modding, dealing with complex UI and handling an audio system.
- Tile based 2D graphics with a tile overlapping system for blending between tiles.
- Sound system that supports streaming OGG and WAV files.
- Lua Bindings for controlling just about every aspect of the game. From how a new game is created and loaded to how a door should behave when interacted with.
- Maps are created through Lua and has a mechanism for determining if the map is being played new or loaded from disk, allowing for map scripts to upgrade old save files.
- A dialogue system based on The Elder Scrolls: Morrowind with topics, keywords and actions bound to those keywords.
- HTML documentation taken from the C++ comments using a Python script.
- In game text uses a simplistic CSS and HTML system for rich text.
- An in game map editor for creating new levels.