Sponsored By

Introduction 4

An introduction to me and the game I've recently started working on.

Brent Gulanowski, Blogger

June 23, 2012

3 Min Read

Hi, I'm Brent. I am not your typical game developer. I'm in my early forties. I got my start in software development a bit later than average. A former English student at the University of Toronto, I didn't get my career into focus until my late twenties. In 1996 I wasn't making any progress towards being a writer, because all I seemed to think about were computers. I learned how to program in C and simultaneously got a job in computer retail.

In 2000, I went back to school for computer science, because I felt that I had to have the fundamentals down. After that I did some consulting, then worked as a systems support consultant for a couple of years, before finally landing my first real programming job in 2007. All that time, I was slowly learning about games development and graphics programming.

 A few months ago, I left my well-paying iOS development job, and began a self-funded project to bootstrap myself as a game developer. Together with a graphic designer partner, I'm making a new game for the iPad. I don't expect it to be a million-seller, but I do expect to learn the ropes of game design and programming.

To that end, I've been working with Cocos2D for iOS and Erin Catto's Box2D physics engine. My first real programming success was an algorithm to generate collision boundaries for a tile-based map, made with the Tiled open-source editor. By associating tiles in a tile set with pre-determined simple geometry which defines the open space in a tile, my software calculate a series of closed line loops. It then converts those into Box2D chain shapes, and adds them to the level's static geometry body.

The algorithm is pretty fast, but it could be a lot faster. I'll also be making it more sophisticated by adding support for destructible tiles. I think I'll use some form of quadtree approach to divide the levels up and process different map sections separately. It should be possible update the collision geometry efficiently at runtime in response to dynamic changes to the level layout.

Nevertheless, progress on the game has been slow to date. As a newly inpendent developer--recently moved to a new city of which I'm not overly fond--adapting is a challenge. The game we're making is a platformer, a style of game with which I have limited experience: mostly Amiga games from the late '80's. I'm more of an RPG- and old-school FPS player. My favourite all-time game is Dungeon Master. (Yes, I've got Legend of Grimrock—it's great, too!)

I've put a lot of thinking, in the past, into creating and simulating open game worlds. Very little of that is useful in a platformer. And thanks to having pre-existing animation and physics libraries, I don't have to worry about that, either. I need to invent interesting and fun challenges and mechanics that work in the context and limitations of the side-scrolling platformer. And another limitation, which is that our PC can't jump (in the Mario sense—he can sort of skip in order to get over holes in the ground).

So while there will be programming work and unique technical challenges, they haven't been defined in enough detail. I have to put away the coding mentality and become a game designer. I'm not hopeless in that arena, having been a pen-and-paper RPG player and designer a long time ago. I have some meagre drawing and illustration skills. But I have to figure out how to make an environment to explore and puzzles to solve.

Assuming I keep this blog up, I'll write more about my design efforts in a week or two. 

Read more about:

2012Blogs
Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like