Rhythos RPG Builder
Java Haxe
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Rhythos RPG Game and Editor

Currently, Rythos is a Haxe/NME action battle game which you can play and read about here: http://fancyfishgames.com/rhythos/

However, my plan is to create a full-featured, easy to use RPG Maker-like game editor that will eventually allow you to create and customize entire RPGs on top of the Rhythos battle system, and export the game in Flash, HTML5, and Native targets. Future battle systems are also possible. There's a long way to go, but I have included and open-sourced a map editing and project management application I wrote a few years back, and am currently in the process of converting and updating to be the full game editor I envisioned.

Stay tuned for updates, and if you want to support the project, feel free to contact me!

Building and running

First, make sure you have Java 1.6 or later installed and Haxe/NME 3.5.5 installed: http://www.nme.io/ (follow the download link there, it will include Haxe, NME and Neko).

Next, compile and run mrpg.editor.MapEditor in editor/src. Once open, you can create a new project, which will copy resources from editor/project, including a subset of the client code that loads a map and allows you to walk around. The full client code can be found in the game folder, but most of it will cause compile errors until I properly merge it into the project folder (at which point I'll delete the game folder).

Since there are no database entries yet, the map and character loading is hard coded and need to be changed if you wish to load a different map or character. In com.rhythos.core.game.Game (in your new project, not in the project folder), find function new(). There, the map is loaded with Map.get("285cd0f1dd5f85bf"); 285cd0f1dd5f85bf is the ID of the one map initially added to the project (you can view the id by right clicking maps/Test and opening the properties window). Assets are referenced by Id and not name so that you can move and rename assets without breaking any code. Similarly, the character layer image Ids can be found in two places. In com.rhythos.core.Character, the skin, eyes and hair ids can be found as static variables. You can change this to change the appearance of the character. Finally, in the function init(e) in com.rhythos.core.Main, the shirt and pants are added to the character. player.equip[0] sets the pants (and the id in the Equipment constructor is the image for the pants layer), and similarly player.equip[1] sets the shirt. This is very hacky for now, but once I get the character/equipment/layer database management in, it will be a lot cleaner. For now, the default project will compile and run on all targets.

This will be a lot easier in the future when I add a jar release file and the database management, but if you follow the above steps, you should be able to get it to compile, run and edit maps.

The output executables will appear in your project folder/__haxe/platform/bin. To run the flash swf, simply open it in a flash player. To run the windows exe, just double click it. To run the mac version, double click the .command file (which will set the proper working directory and launch the executable). To run the linux version, make sure you have libgc installed, set LD_LIBRARY_PATH to the directory with the executable and then run the executable (I should probably simplify this, and maybe the mac version too). The program will launch projects compiling to other operating systems by running the compiled neko bytes obj/ApplicationMain.n, and not the actual executable.


The Editor code is licensed under the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This requires any plugins or modifications to the editor to also be open source.

The Client code is licensed under the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This allows games generated by the editor to be closed source, as they link with the Client code, and not the Editor code.

The Art and Music assets included are dual licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported and the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This requires any modifications of the art or music to also be open source, and this includes game maps, tilesets, and any project elements that reference that art and music.

While we allow games generated to be closed source, we encourage users to open source their games and project files and join the open source community. Additionally, use of the great base art and music assets require most of your project to be open source.