Monday, September 15, 2008

Work on Carpac

With a basic, functioning engine done (in the form of the Tumbling Robots demo), I am now working on making a more complete demo with it. The plan is to make some variant of a Pacman game (hence the name, 'Carpac').
I am also exploring the idea of a component-based software architecture for the code, as described by this article on GameArchitect.net. It's quite an interesting read.
So far, my design consists of three separate worlds: rendering, physics, and game. Each object in the game can then have components in each of these worlds. For instance, a static floor would have:
  • a rendering component that draws the box representing the floor volume, and
  • a physics component that adds a solid, static body to the world in the space the floor occupies.
It won't have a game component since a floor doesn't really do anything (not at this stage atleast - maybe I will add one in the future if I find a need for it). Usually, game components are used to interact with other objects in the game world like damage players or pick-up power-ups.
So what's the point? Read the GameArchitect.net article for more information.
This is just a rough idea. I do not know if it will work or whether it is a better structure. This is an experiment after all. It will most probably change significantly by the time I am done though!
Check back in a day or so. I should have a video to show soon!
Browse the code so far: http://code.google.com/p/glutinous/source/browse/#svn/trunk/carpac/src

Tuesday, September 9, 2008

Mass Effect and Bioshock Review

A quick review of two games I played recently. Both games were awesome and are widely applauded on the Internet. To keep the content original, I will cover what I thought could have made it even better.

Mass Effect (PC)

There are certain things I am a sucker for and Mass Effect has some of them in droves. It has science-fiction and a good story. The story still pales in comparison to real story-lines in film and literature, but that's a problem with the games industry in general (fortunately, it's an improving situation with games like Heavy Rain on the horizon).

Some aspects of the game did feel unfinished though (i.e. driving the Mako rover). The features in this game go far and wide, but none have any extraordinary depth. Bioware still have my respect though in producing a good, overall result for such an ambitious project. I will definitely be keeping my eye on the sequels, and hope to see them build and expand on the foundational systems they have laid, rather than just reuse them again as-is for a quick buck.


This part of the game was really easy. Especially considering it's late in the game...

Bioshock (PC)

Another game with science-fiction and story. It's not very hard to pick out my buying habits. :)

It basically follows the same formula as System Shock 2 did, which is an older game by Irrational Games (now 2K). This is a game where you are one player against hordes of enemies. Irrational Games then add the illusion that you have at least one friend in this world in the form of a guiding voice over the radio. They then dress the story up a bit more by adding another layer of radio message pick-ups. These let you listen to audio logs and follow the lives of the various inhabitants of Rapture. Don't ask why these pick-ups are laid out such that you are picking them up in chronological order.

Some people like this. It makes story an optional thing for players (i.e. if you don't want story, don't pick up the audio logs). But I, however, do like story and I don't mind it not being optional. :p I wanted the player involved in Rapture's spiral into chaos - to actually interact with the key characters involved in its demise and influence the direction of the story. Instead, you are a mere observer of what has already happened. Of course, this would have meant Bioshock would be a completely different game. So I'm just dreaming again.

Don't get me wrong either. Bioshock is a great game. Otherwise I wouldn't have finished the game in one, long, marathon session. If I was to write about what I enjoyed about it, this review would be five times as long. Irrational might have stuck to the same, basic formula as System Shock 2, but they executed it well. It just goes to prove that you don't need great, innovative ideas to make successful games. It's all about the execution. Combat feels natural, action is constant, the AI isn't completely dumb, the enemies are varied, the art is appealing and I love the music. It has all the things gamers expect from a game and it does them well. Makes me wonder what's planned next...


Those flying turrets were really annoying. Much better to hack and control them rather than take them out!

Sunday, September 7, 2008

Tumbling Robots

Lately, I've been working on integrating the Ogre 3D Engine and Bullet Physics Engine together in order to build myself a nice, little engine for future experiments. Here's the progress so far. It is basically a bunch of robots falling from the sky. They pile up and fall off the edge. The physics is simulated by Bullet, and the rendering is done by Ogre.

I have also started using CMake to generate cross-platform build files. It basically allows me to have one build file that will work on all platforms (rather than the mix of SCons, MSVC, and XCode I had before). I've only tested it on Windows (MS Visual C++ Express '08) and Linux (GCC/Makefiles) so far and it seems to be working well. Not sure about OS X yet.

Browse source code: http://code.google.com/p/glutinous/source/browse/#svn/trunk/tumble

Download source code: http://glutinous.googlecode.com/files/tumble-src-svn8.zip

Download Windows binary: http://www.zensaki.com/tumble-windows.zip