Monday 7 November 2011

Final Game Design Project: Swarm

Hi everyone, so here is Swarm!

For my third year Computer Games Design course ( CSC3020H ) at the University of Cape Town ( UCT ) we had to make a fully functional game using XNA 3.1. I teamed up with Bilo Lwabona and David Cohen. After a couple of days bouncing around ideas we came up with and decided to make Swarm!

The criteria for the project was that the game had to work on pc as well as Xbox360 and that it had to be 2 player compatible.

We were given a semester to make the game, however Computer Game Design weren't our only course. Some of us still had to do Computer Science, Maths and Statistics.. We therefore had to manage our time carefully, especially during test weeks and Computer Science assignment hand-ins.

Here is a brief description of Swarm with some gameplay images and a short video. Let me know what you think or have questions..

aargh.. die!!!

Swarm is a co-op third-person / first person / isometric shooter game.
Basically we attempted to make a game that resembles COD zombies, except that its giant spiders and not zombies.
You start in a house / maze and spiders break their way into the house via certain positions on the wall. Once the spiders are inside you have to shoot them, simple right?

co-op in action
When you start you have an option of being an offensive or defensive player and have different leveling up capabilities depending on which character you chose. When playing co-op it worked out quite nicely when one player was defensive and the other offensive.

During the game you can rebuild the walls to prevent the spiders from entering to rapidly, the defensive player has a power-up that speeds up the building process.

getting ready for action
Naturally as the game progresses the spiders get stronger and faster until eventually it is impossible for the player(s) to survive.

Once one player dies, the game ends. If you are awesome enough (killed enough spiders) you enter your name for the high-score list.

spiders breaking through the wall
For me the most unique aspect of our game is that you have 3 camera options, first-person, isometric and third person.
You can change your camera by pressing Y on the Xbox controller, eg. if you run away from spiders its often easier to switch to isometric mode.
What this enables is that when playing 2 player co-op, you can choose 2 different camera modes for the each player. Thus if you are into FPS games but your friend likes isometric games, then its a win-win as you can both get your wish and still play together.
health aura power-up for defensive player in action 

re-build the wall to stop spiders coming in
Our game had some really nice animated models. We used the models from the code examples included with the book 'Beginning XNA Game Programming from Novice to Professional' [Alexandre Santos Lobão, Bruno Evangelista, José Antonio Leal de Farias, and Riemer Grootjans] published by Apress. It was a really useful textbook as it explained skeletal animation using a very well thought out top-down approach. The models can be downloaded at Apress.com.

We underestimated the amount of work that goes into such a project and near the end I had my doubts on weather we were going to finish it on time.
We had some killer bugs when putting our project on the Xbox360. First shader compatibility problems, then optimization problems (the Xbox is quite old now so even though our game ran at 120 fps on my laptop, it ran at 5-6 fps on the Xbox) and finally high-score list problems (Xbox has no file system).
But luckily somehow we pulled it off. We ended up submitting 30 minutes before the extended due hand-in date (like true students do) with the frames rate back to where is should be (90 - 110).

This was the most challenging assignment of my undergraduate degree but at the same time the most rewarding. I was pleased with our final game that we handed in, even though it had some minor bugs. I'm very proud of my team-mates who stayed awake with me during crunch-time in the early hours of the morning.

Here is a short video showing the menu and some gameplay:


4 comments:

  1. We entered this game to the Microsoft Imagine Cup competition and we went through to the regional finals held December 12 - 14 in Joburg.

    Wish us luck :D

    ReplyDelete
  2. Hey Henk. Kewl Blog spot.. Ons hoop om eendag games soos Resident Evil 6 (wat jy gaan maak) verniet van jou website af te kan download.

    Keep up with the good work.
    Stephan

    ReplyDelete
  3. This comment has been removed by the author.

    ReplyDelete
  4. http://pubs.cs.uct.ac.za/gamesproj/cgi-bin/view/2011/cohen_lwabona_vanjaarsveld.zip/Web/

    ReplyDelete