Home CPSC 305

GBA Game


Due Dates

Project description: A brief description of your project along with the names of your team members, March 28.

Final game: The code for your game (including all data files), April 18.



To gain experience writing C programs for the Game Boy Advance, by implementing a more complex game of your choosing, in a team of two to four.



You can choose any style of game you want, but you must incorporate the following:

  1. A scrolling, tiled background.
  2. At least two different sprites.
  3. You must have two functions in your game written in assembly code. Each must actually be called in the game and each must be at least eight lines of code.

The style of your game is completely up to you. It may be a clone of an existing game, or a more original game idea.



For this assignment you may work with a team of two to four. You are free to choose your team yourself. Please email me if you would like me to place you in a team, or request an additional team member.

You should use Github to coordinate the development of this project. You can refer to the 225 notes on Github if you need a refresher on how to set this up.



You will be graded according to the following criteria:

 Exceptional (A+)Very Good (A)Fair (B)Poor (C/D)
CompletenessThe program goes above and beyond and has features I would not expect. The program has what you would expect in a game like this. The program is missing some things that you would expect, but is playable. The program is not really playable.
AmbitionThe program is very ambitious (e.g. having a complexity approaching an actual GBA game). The program is ambitious (e.g. something slightly more complex than a classic arcade game, or is an arcade game with a twist). The program is reasonably ambitious given the time frame (e.g. a classic arcade game, but more than Pong). The program is not really a game at all, or is rather trivial.
GraphicsThe program uses scrolling backgrounds and sprites, to create a nice graphical experience (e.g. with parallax, animation or other effects). The program uses scrolling backgrounds and sprites. The program is missing scrolling backgrounds or sprites, but is still playable. The program has graphical problems that make it difficult to play.
AssemblyThe program contains at least two useful functions of eight lines in well-written, efficient assembly. The program contains at least two useful functions of eight lines in assembly. The assembly functions are not long enough, or contain errors. The assembly functions are missing, contain errors and/or are not actually called.

Note your game will not be judged at all on the quality of art, or the amount of "game content" such as different levels. For instance, if you make a side-scrolling game, using "programmer art" and only having one short level, it would not count against you.



You will submit the URL for your game project on Github. Make sure you commit all files that are needed to build your game (including tile maps and images) and that the repository is up to date!

Copyright © 2024 Ian Finlayson | Licensed under a Attribution-NonCommercial 4.0 International License.