cykod / Quintus

HTML5 Game Engine
http://html5quintus.com
GNU General Public License v2.0
1.41k stars 401 forks source link

Quintus Engine

Quintus is an easy-to-learn, fun-to-use HTML5 game engine for mobile, desktop and beyond!

The Quintus engine is an HTML5 game engine designed to be modular and lightweight, with a concise JavaScript-friendly syntax. In lieu of trying to shoehorn a standard OOP-game engine structure into an HTML5 JavaScript engine, Quintus takes some cues from jQuery and provides plugins, events and a selector syntax. Instead of a deep single-inheritance-only model, Quintus provides a flexible component model in addition to traditional inheritance to make it easier to reuse functionality and share it across games and objects.

**Warning: Quintus is at a very early stage of development, use at your own risk.***

Quintus Platformer Example

Example Annotated Source

More details and documentation at HTML5Quintus.com

Read the Quintus Guide to get started on the Engine.

Online Forum / Community

For general questions, demos, etc please post to the Quintus HTML5 Game Engine G+ Community

Using Quintus

The easiest way to use Quintus is simply to use the CDN hosted version at:

<!-- Production minified ~20k gzipped -->
<script src='http://cdn.html5quintus.com/v0.2.0/quintus-all.min.js'></script>

<!-- Full Source ~40k gzipped -->
<script src='http://cdn.html5quintus.com/v0.2.0/quintus-all.js'></script>

Quintus has no dependencies.

Alternatively you can clone the repo and either use each file separately or generate a unified version:

$ git clone git://github.com/cykod/Quintus.git
$ cd Quintus
$ npm install
$ grunt

Check the dist/ directory for contatenated versions.

History of Quintus

The initial version of Quintus was built over the course of writing Professional HTML5 Mobile Game Development, although the repo code has diverged a bit from the Engine built in the book, the main philosophy and technologies used have not changed, and reading the book will give you a fairly exhaustive understanding of the internals of the Quintus Engine.

ToDo

Quintus is a young engine that has a lot of missing gaps - some of which are pretty straightforward to fill in. If you are interested in hacking on Quintus, shoot me an email pascal at cykod period com, I'm happy to help folks get hacking on the engine.

If you have suggestions for additional enhancements, please add them to the Issues queue - no guarantee all ideas will be implemented and integrated into the core of the system, but suggestions welcome.

Here's some specific pieces that need some love:

Changelog

0.2.0 Initial API Docs + Better Tiled Integration + Sloped Tiles

0.1.6 Assorted Fixes - 9/6/13

0.1.5 Assorted Fixes - 8/4/13

0.1.4 Updated Node + Grunt - 4/13/13

0.1.3 Sprite Platforms and Assorted Fixes - 4/7/13

0.1.1 UI and Web Audio fixes - 2/17/13

0.1.0 Web Audio and better Tweens - 2/16/13

Changes to your code:

0.0.5 UI Example + Bug Fixes - 2/2/13

0.0.4 GameState and MouseControls - 1/27/13

0.0.3 Move to update from step - 1/19/13

Changes to your code:

0.0.2 Reworked Sprites and Scenes - 1/1/13

0.0.1 Unrelease