2012-01-06

Procedural map generation - this time in 2D

I felt like taking a break from fixing a network related issue in our upcoming game, Xenocell to clear my head and do something rewarding and I started fooling around with HTML5 and JavaScript.

Since I really want to compete in Ludum Dare sometime soon, I thought it would be a good idea to decide on a set of tools and languages that I would use. If you are not familiar with Ludum Dare, it is a game writing competition where you have 48 hours to create a game. My primary goal was platform and 3rd party player independence, so I chose to go with JavaScript.

To get up to speed and ready to compete, I decided to make a simple game in my free time. Something simple yet fun to play (and to create!). I called my aspiring-game-designer brother, Peter, and we set out to create something fun!

This all is still a work in progress, but I think we managed to come up with something unique. For now, I won't say more - just in case this ends up dead thanks to the crazy crunch I'm doing for XC - but I'll share a few images of a 2d platformer map.

This is generated using a Cellular Automata method over randomly placed tiles onto which I unleash a brush distributing algorithm to make it less cavey and more platformy. Then ladders and details are inserted into the map. Right now all the maps that I generated seem to be walkable, but the gameplay has some safeguards combed in just in case the map is not solvable by jumping and running around. Ok, so the images I promised:

A portion of the map close-up

The entire generated map

There's still much to do, and I assume that we won't be able to work very fast on this one. I hope that - step-by-step - we'll eventually be able to finish it (perhaps before the spring even). And once we do - beware, Ludum Dare competitors! ;)

No comments:

Post a Comment