Free/Libre Action Roleplaying Engine (engine only)
C++ Java CMake Makefile Python XSLT Other
Latest commit 8f9fe32 Jul 19, 2017 @sang-froid sang-froid committed with dorkster Update
Adding translations
Failed to load latest commit information.
cmake Fix problems building with CodeBlocks/MinGW May 22, 2014
distribution Add load-slot and load-script command line arguments Apr 7, 2017
docs Add "movement_type" property to Power definitions Jun 9, 2017
flare-android-project Update Android build system Jul 12, 2017
flare-ios-project 17 of 34 files optimized, 1274359 bytes reduced to 806769 bytes; -467… Dec 26, 2016
mods Update Jul 19, 2017
src Optimize EnemyManager::enemyFocus() Jul 11, 2017
.gitattributes Add a script to regenerate the Attributes reference wiki page Jun 20, 2014
.gitignore Don't store app.iml in git Jul 8, 2016
.mailmap .mailmap: switch to Stefan Beller's personal address Oct 18, 2014
.travis.yml Run travis build using SDL2 Apr 3, 2015
CMakeLists.txt Use normal Animation system for GameStateLoad previews Jun 2, 2017
COPYING GNU guidelines applied for GPL notices Sep 27, 2011
CREDITS.txt Update credits and release notes Dec 2, 2013
Codingstyle.txt Codingstyle: Use the wiki entry, add examples, talk about brackets Apr 27, 2013 Fix building without CMake May 16, 2017 Suffixid .md to *.engine for github to render correctly and ln -s *.e… Apr 9, 2015
Launch Flare OSX.command Import from svn r385 Jun 4, 2011
Launch Flare Windows.bat Import from svn r385 Jun 4, 2011 Add load-slot and load-script command line arguments Apr 7, 2017 Suffixid .md to *.engine for github to render correctly and ln -s *.e… Apr 9, 2015
RELEASE_NOTES.txt Add previous release notes to RELEASE_NOTES.txt Apr 18, 2015 Make indentation script work on header files. Feb 2, 2014 Update attribute doc generation May 11, 2016
qt.xml Add codingstyle file for development with QtCreator. Nov 11, 2012 Update to use separate file for header Nov 20, 2016
wiki.xslt Update attribute doc generation May 11, 2016


Flare (Free Libre Action Roleplaying Engine) is a simple game engine built to handle a very specific kind of game: single-player 2D action RPGs. Flare is not a reimplementation of an existing game or engine. It is a tribute to and exploration of the action RPG genre.

Rather than building a very abstract, robust game engine, the goal of this project is to build several real games and harvest an engine from the common, reusable code.

Flare uses simple file formats (INI style config files) for most of the game data, allowing anyone to easily modify game contents. Open formats are preferred (png, ogg). The game code is C++.

Originally the first game to be developed using this engine was part of this repository. As the engine became mature, the game content was moved to an extra repository and is now called flare-game. (happened around sept. 2012)

Copyright and License

Most of Flare is Copyright © 2010-2013 Clint Bellanger. Contributors retain copyrights to their original contributions.

Flare's source code is released under the GNU GPL v3. Later versions are permitted.

Flare's default mod (includes engine translations) is released under GNU GPL v3 and CC-BY-SA 3.0. Later versions are permitted.

The default mod contains the Liberation Sans font which is released under the SIL Open Font License, Version 1.1.


The following links are specific to the engine

Games made with flare

  • flare-game A medival fantasy game. In the first days of the engine this game influenced most design decisions a lot. The art is 3d rendered 64x32 px isometric perspective.
  • polymorphable A game made for "The Liberated Pixel cup", which was a competition about game art and making a game thereof. The pixel art is 32x32 orthogonal perspective featuring a medival setting. The development has finished.
  • concordia Another game using the art created during "The liberated pixel cup". While this started without stress regarding the timeline for the pixel cup, this story is more thought through and the content is more organized.

Building from Source

Flare uses SDL2, SDL2_image, SDL2_mixer, and SDL2_ttf. Please see the file for instructions.


Settings are stored in one of these places:

Linux/Mac OS X/Unix




Here you can enable fullscreen, change the game resolution, enable mouse-move, and change keybindings. The settings files are created the first time you run Flare.

Save Files

Save files are stored in one of these places:

Linux/Mac OS X/Unix




If permissions are correct, the game is automatically saved when you exit. In addition, there is a mods directory in this location, which can be used to override system-wide mods.

Command-line Flags

Flag Description
--help Prints the list of command-line flags.
--version Prints the release version.
--data-path Specifies an exact path to look for mod data.
--debug-event Prints verbose hardware input information.
--renderer Specifies the rendering backend to use. The default is 'sdl'. Also available is 'sdl_hardware', which is a GPU-based renderer.
--no-audio Disables sound effects and music.
--mods Starts the game with only these mods enabled.
--load-slot Loads a save slot by numerical index.
--load-script Execute's a script upon loading a saved game. The script path is mod-relative.