libGDX 2D Platformer ninja-rabbit

A very simple desktop and OUYA 2D platform game built in JAVA with libGDX simply to demonstrate the use of various technologies and design patterns as I was learning them. This is, by no means, a complete video game and it puts no effort into being one.


Running the game

The following commands should be enough to run the game in any desktop platform with JAVA 1.6+ installed.

git clone https://github.com/nfantone/ninja-rabbit.git
cd ninja-rabbit
gradlew desktop:run

Technologies

This project was developed using the following frameworks and tools:

An artemis-odb implementation is in the making.

With the exception of TexturePacker, all of the above are free and open source projects. You might as well considered donating or contributing something back if they have managed to help you in some way or if you enjoy using them.

libGDX has its own open source texture packer, as an alternative to the CodeAndWeb application.

Design

Ideas for the architecture and design were shamelessly taken from the phenomenal Game Programming Patterns online book, by EA developer @munificentbob, following the path of Erich Gamma and cia. Honorable mentions go to the Component, State and Observer design patterns. All of them were implemented in ninja-rabbit.

Game Programming Patterns is a must read. If you think of yourself a game developer or enthusiast, you owe to yourself reading it.

Also worth mentioning, is the handy work of ForeignGuyMike who created the LibGDX Box2D Tiled video tutorial series. Great for starting out with Box2D and drawing sprites.

Let's not forget the invaluable help of the Libgdx Cross-platform Game Development Cookbook. You should give a it try.


Controls


Screenshots

At the start of the level

The rabbit character in the game is the work of graphic designer Julieta MarĂ­a Ojea (@JulietteChuu). Tiles and other assets were gracefully borrowed from the Platformer Art Complete Pack published under Creative Commons license by Kenney Vleugels