Archive for March, 2011


Introducing melonJS

March 8, 2011

That’s it, after all these months of work, I decided to officially give a fancy name to my library : so please welcome melonJS, my javascript game engine.

melonJS is the result of my enthusiasm & my past experiments with Javascript, and currently features :

  • A fresh & lightweight 2D “sprite-based” engine (at least I hope to)
  • Standalone library (does not rely on anything else, except a HTML5 capable browser)
  • Compatible with most major browser (Chrome, Safari, Opera)
  • “Multiple” Audio Channel support
  • Basic physics & collision mechanisms (to ensure low cpu requirements)
  • A basic set (for now) of Object Entities (to be extended)
  • Manage basic animation (i’m looking into adding a proper spritesheet format to it, like TexturePacker)
  • A Game state “manager” (to easily manage loading, menu, options, in-game state)
  • Tiled map format version 0.6 integration for easy level design
    • Plain & Base64 encoded XML tilemap loading (compression not supported)
    • Orthogonal tilemap (isometric not suppported)
    • multiple tileset supported (one for regular tiled map, one for the collision engine)
    • Multiple layers (multiple background/Foreground layers, collision layer, “Parallax” layer)
    • Alpha settings (through the Opacity slider in Tiled)
    • Dynamic Entity loading (basically, the engine will instantiate JS object matching the object property name defined in the tilemap, and pass corresponding settings to it)
  • and others useful stuff like system & bitmap fonts, some basic GUI elements, a customizable loader, etc…

Although melonJS is still a big work in progress and in private beta, I wanted to share with you a small demo, designed using tiled, as you can see in the following picture :

and here is a quick video of the game running :

It’s maybe not very clear on the video, but the game is actually running at a smooth 60fps 🙂

I have no plan yet to release it, as I still have a lots of things to fix, implement or optimize, and i’m actually waiting to finish a real game as a validation/test to my framework.

I’m very excited about this project, and I hope that you will be too !

Also, anyone willing to join the project is welcome, please drop me a message at “olivier dot biot at gmx dot com” if interested 🙂

Cheers !