Games

iconOneGameAMonth

One Game A Month Challenge

0

What is the ‘one game a month’ challenge ?

The goal is to publish at least one game by month for a year (so 12 games … if the calendar has not changed since the last time I checked).

ONE-GAME-A-MONTH-384px

Why ?

In my (short) indie developper’s life, finishing games is like the most difficult thing to do, mainly because of the lack of motivation. On my computer, I have a lot of prototypes … but not a real game (by real, I mean finished).
So I hope this challenge will help motivating me, by showing my work to the whole community, and will allow me to improve my skills.

I’m not really a good 2D artist, but I’m really trying to upgrade this skill, so that I can make games without being limited by the design. I am aware that I’m not going to become a real artist, but if I can make basic pixel assets, it will be a fantastic move !

Earn XP for doing what you love: making games!

This challenge has an XP system based on the achievements you won. All this system is juste for fun, there is no gain, just motivation and pride (at least if games are published ^^).

To show you all of my progress, I will post updates about my games on this page : http://revolugame.com/one-game-a-month/. Don’t hesitate to comment the games !

My profile page : onegameamonth.com/RevoluGame.

Let’s start with the first game !!

Box2D_logo

AGE – Box2D support

1

Since Box2D is one of the most used physics engine, I’ve started to implement it into the AGE game engine.

I’ve used the box2d version from haxelib, so don’t forget to add the following to your nmml file :

<haxelib name="box2d"></haxelib>

I’ve implemented it with the behaviors system. So now we have a Box2dEntity that has a special Behavior (Box2dMovementBehavior) which initialize and update all the Box2D stuff.

For example, to define an entity :

import com.revolugame.age.display.Box2dEntity;
 
class Block extends Box2dEntity
{
    public function new (pX: Int, pY: Int)
    {
        super(pX, pY);
        makeGraphic(32, 32, 0xFF000000);
        initBox2dStuff(30, true, 0, 0, 0);
//                                     ^ friction
//                                  ^ restitution
//                               ^ density
//                          ^ if the entity is dynamic
//                     ^ conversion meters to pixels
    }
}
add(new Block(10, 50));

And that’s it !

The Box2D support works with Flash and C++ but needs some optimization for now.
(more…)

Go to Top