Monday, June 29, 2009

A Dog's Job


This game was created as part of a course on multimedia programming. It's about the life of a sheep dog, dutifully herding his flock and protecting them from predators. The player's task is to drive a group of idly wandering sheep into a den, while keeping wolves away from them, his presense and voice his only tools.

The Team

A team of three was involved in making A Dog's Job:
  • Riku Bj√∂rklund programmed the game logic, using my basecode for arcade games (first used in Lemmings Remake).
  • Jukka Larja programmed the AI of the animals, using e.g. flock AI algorithms to make the sheep move nicely as a group when not disturbed.
  • I created the graphics and animations.

Technologies I Used

  • GIMP (open source drawing software) to draw the terrain and animations
  • Java-based animation viewer to run the animations


The gameplay is simple: The player moves the dog around and barks as necessary. When not disturbed, the sheep wonder around as a flock (using flock AI), looking for grass to eat, while the wolves try to make a meal of them. If the dog approaches, both the sheep and the volves move away from them - by barking he can chase them faster and from longer distance. If he can drive the sheep into a den without getting them eaten, the dog wins. Terrain considerations add some complexity - the sheep can't go into water or forest, while the dog and the wolves can.

The Animation

I used the same, simple animation method that I'd used in Lemmings Remake, to create the different animals: frame by frame, arranged in a grid in an image file. I find I enjoy doing pixel animation in the old-fashioned way quite a lot. Fiddling with the minute details is relaxing, but since the characters are small and the animations short, it doesn't take too long to make. (As a side note, I modeled the running animations of the dog and the wolf on the closing theme of the anime series Wolf's Rain.)

No comments:

Post a Comment