Presentation at HTML5 Meetup

Last week, I did a presentation at HTML5 Meetup Berlin.

I love to come to tech, development, or start-up Meetups (there’s a lot of them in Berlin!) to see what other people’s doing, get inspired, and also to meet new people. But to give a talk is totally different experience and I found it quite fun to do 🙂

Talk at HTML5 Meetup

A month before that, Rachel, friend of mine and also one of the HTML5 Meetup organizers, asked me if I wanted to give a talk at the next event. I haven’t done any presentation for a long time but I just said yes. I suggested 2 game development topics: Ash Framework, or starting game development using CreateJS. In the end, we agreed with the 2nd one with additional live coding to make it more interesting.

Fast forward to the event, I finally did it!

Continue reading

Berlin Mini Jam July 2013

Last July, I did my first Berlin Mini Jam. It’s a monthly event, usually on the 1st or 2nd Saturday of the month, where people from many backgrounds meet up at co.up and make games in just 8 hours.

I’ve been following their Facebook page since September 2012 but I never had the chance to do the game jam. So last month, while taking my vacation before starting my new job, I decided to join the July Mini Game Jam.

The event started at 12PM and I came 30 minutes late. There were like 30 people there  and they has voted for the themes which were Pixel Art, Retro Style, and Light & Darkness. I teamed up with Lothar Narnis and Adam Streck, both whom I just met on the game jam.

We sat on the same table, introduce ourselves (which skills and programming languages) and quickly brainstorm the idea. About 1 hour later, we came up with a simple game idea:

  • There’s a game character in a totally dark room.
  • There are a few of light sources (some kind of spot lights) which can be turn on and off.
  • The game character can only move within the lighted area.
  • The game character can rotate the spotlight until you can see the next spotlight so the character can walk towards it.
  • Explore the room until you see the exit door. Walk to the exit door and you win the level

I did the level editor using JavaScript, Adam did the game coding using Java and Processing library, and Lothar did all the pixel art. We worked 8 hours intensively.

Berlin MIni Game Jam July 2013.  Me on the end of the table with Lothar on the left and Adam on the right side.

Me on the end of the table with Lothar on the left and Adam on the right side. Making game is a serious business 😀

The development ended at 9PM and we managed to finish the game 🙂

Continue reading

Ashteroids JavaScript

Remember my Ashteroids demo with Flash? I managed to port it to JavaScript!

Play the game here

The Ashteroids project is an example project using the JavaScript version of Ash Framework which I’ve been playing around lately. Just like the Flash version, you can switch between 2D and 3D mode. Ash framework allows you to easily switch between renderers while using the same game logic and other game components.

For the 2D renderer, I use HTML5 Canvas and CreateJS. For the 3D/WebGL, I use Three.js. I’m planning to add more renderers for the next version, maybe PIXI.js or native DOM renderer.

Continue reading

They were 11 Clones

Checkout my latest game for #onegameamonth project: They were 11 Clones! It’s a 3D top-down twin-stick shooter with a twist: you can clone yourself (up to 11 clones!) & make scores by depositing the clones.

they were 11 clones

The game is developed using Ash Framework, Starling framework and Away3D 4. You can check the source code at GitHub. Feel free to fork & modify the project as you like 😉

Motivation

I love twin-stick shooter. I’ve played mini gore, Age of Zombies, Guerilla Bob, & many more, but my favorite is still SisPri Gauntlet. It has chibi characters, big map & levels (instead of open arena), bullet hell, and epic big boss battles.

I’ve always wanted to make one with 3D character but back then Flash didn’t have GPU-acceleration. Now we have Stage3D but there aren’t many top-down shooters yet, so I decided to make one.

What’s with the name? The title was inspired by the movie They were eleven. Why eleven, why not 10 or 8? because the game development was started on November 🙂

I love Ash Framework

This is my second attempt with Ash Framework & I’m really into this framework. It takes time to get used to entity-component-system thingy, but once you get it, your game architecture will be cleaner & easier to manage. Coding will be much fun.

So I’ve decided to convert all my existed game prototypes into this framework. And just two days before I wrote this post, Rob Bateman from Away3D has also re-written his Inawayders using Ash Framework. That’s a good sign.

Finishing is hard

This game was originally made for GitHub Game Off last Nov 2012. Unfortunately, I didn’t make it on time. Luckily, I got my seconds chance through Indie Goodbye. I keep on polishing the game & submit it as my January onegameamonth project. Even the game is still not completed 100% yet (no sound, only blocky character, no character animations, no shiny FX) but I’ve decided to publish it anyway.

It takes discipline and lots of motivation to finish. That’s why I join onegameamonth project as an exercise & also bought McFunkypants’ GameJam Survival Guide book. It’s a really good book on how to finish your game. I totally recommend to read it even if you’re not joining any game jam soon 😉

So what’s next?

onegameamonth for February and playing with Ash Framework JavaScript. Stay tuned 😉

Experiment with Ash Framework

Months ago, I was experimenting with HTML5 game development. Since it’s a fresh start, I thought, why not start with a better game architecture? So I made an experiment with Backbone.js, one of the famous JavaScript frameworks, but I don’t think MVC/MV* would fit for game development. That’s when I found  entity-component based framework.

There are many famous game engines which already use this kind of framework like Unity3D or XNA. I found some on the list of JavaScript game engines but I was surprised when I found even more for ActionScript 3:

I tried to learn more about this and found a very good article by Richard Lord. He wrote a good explanation on what entity-component framework is and why it ‘s better for game development. He also developed Ash framework for ActionScript 3. It includes a simple Asteroid game, but once I’ve read the source code, I was immediately sold to this framework.

Ash framework is simple and minimalist. It only includes the basic components which means you can combine it with your favorite 2D/3D, game or physics engines, and can be easily ported to JavaScript or Haxe (someone have already done this. See HashDS and Ash-Haxe).

So I made an experiment, extending the Asteroid game so it can support Native Flash, Starling, and Away3D. All renderers in one game!

Checkout the demo at http://abiyasa.com/lab/away3d/ashteroids/

Using Ash framework, it is easy to switch between renderers. The game logic and other components stay the same; the only difference is which renderer system is being used. Check out the GitHub page for more info about this 😉

It’s funny how I started with HTML5 game development but end up with a better ActionScript framework 🙂

Bonus: Some other articles on Entity-component framework: