Tuesday, March 8, 2011

Introducing melonJS

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 !


  1. [...] plus profondément dans les possibilités offertes par HTML5, je vous conseille de jeter un oeil à http://olivierbiot.wordpress.com/2011/03/08/introducing-melonjs/, un projet plutôt sympa. 12 avr This entry was written by Lancelot, posted on 12 avr &Tue, 12 [...]

    1. پازل باند
      I’m very excited about this project, too.
      I hope it can support isometric map in the future.
      best luck
      رضا شیری
      I’m very excited about this project, too.
      I hope it can support isometric map in the future.
      best luck
      محسن چاوشی

  2. I’m very excited about this project, too.
    I hope it can support isometric map in the future.
    best luck

  3. I think that this site also has some valuable info that may be helpful. Make sure to check it out sometime soon

  4. I just want to thank you for this enormous read and I seriously appreciate posts which contain exciting information and which I'm always eager to study! I am Instantly amazed with all the useful information that is on it. This is the first time visit to your blog, but you have written this in a well manner. Great post, just what i was looking for and i am looking forward to reading your other posts soon!

    - Samantha Johnson
    Contact @ Custom essay writing service

  5. This site extremely instructive ! Keep on setting up! skribbl io geometry dash

  6. Great article! We will be linking to this great article on our website. Keep up the good writing.
    بازاریابی و مدیریت بازار پیشرفته بازاریابی و مدیریت بازار پیشرفته بازاریابی و مدیریت بازار پیشرفته

  7. Thanks for sharing your information it is very helpful eid mubarak messages