Introduction

PixelPie is an open-source, cross-platform (works on regular Processing and Android) game framework built for Processing.

You can see an older version of the framework at work in this video.

It was originally written entirely in Processing 2.2.1, for what was supposed to be a "simple" game that grew grossly out of proportion. I've since separated the framework from the game code and re-written the framework in Java to be used as a Processing library.

Downloads

Source: https://github.com/AliasBlack/pixelpie

Example: https://github.com/AliasBlack/pixelpie-example

Rough idea of the framework

Unfortunately, there's a severe lack of documentation, aside from the Javadoc annotations inside the code, and the example linked above. This will hopefully be remedied eventually - in the meantime, here's a rough explanation that will help the more adventurous folks get started.

PixelPie is an event driven framework centered around the GameObject class.

Nearly everything you can interact with in the game is an extension of the GameObject class: Characters, platforms, NPCs, traps, powerups, and so on.

The GameObject class works by having several functions that are triggered when certain conditions are met. Overriding these functions, such as mousePressed() and collide() will allow your object to react to mouse clicks and collisions respectively.

Levels are created using the Tiled open-source level editor.

Use "Tile" layers to decorate the level. Tiles placed in tile layers have no interactivity in the game and are purely for decoration.

GameObjects can be placed in a level by creating an "Object" layer, name it the same name as your GameObject class, and place copies of the object in the level using the Rectangle tool (uses the top left corner coordinates) or the Ellipse tool (uses center coordinates).

Lastly, to add sprites and levels to the game, use the included pp_assets.ods in the "tools" folder, you'll need LibreOffice Calc to open it. It should be self explanatory. After you are done, head to the "Master" tab, key in the absolute filepath to your game's "data" folder, and click Export to generate the required .json files.

Contribute!

Evidently, the framework badly needs some proper documentation. If you would like to help out creating documentation and examples, please send me a PM, or reply to this thread, I would really appreciate the help. Alternatively, if you'd like to contribute to the code, please do not hesitate to ask me about anything related to the framework - I'm not a particularly good coder, and the framework needs all the help it can get.

And that's it, hope this helps someone out there. :)