I210: Information Infrastructure
I (Intro to Programming) — Final Game Project
Instead of a Final Exam, students are required to submit a Final Game project. 30% of the Final Game grade will come from the design and pseudocode phase, 70% from the code phase. The two phases each has its own deliverable that should be submitted to the corresponding Oncourse assignment in the usual combined lecture section. All together the Final Game project comprises 20% of your overall semester grade in I210.
Your assignment is to design, write pseudocode for, and develop software for a computer game. The game must be of a level of complexity similar to (or greater than) the projects at the end of Chapters 11 and 12 of the textbook. This probably means a graphical game is required, but text-only games may be permissible if they are complex enough and you obtain permission in advance. (Examples of text-only games that would satisfy the complexity requirement are multi-player card games, such as Euchre, Hearts, Spades, or Poker, that provide reasonably competent AI opponents, a reasonably sophisticated multi-player board game, such as Scrabble, or a reasonably complex adventure or role-playing game.) No matter what the nature of the game, the code must be entirely your own (except for standard modules provided by the textbook, your instructor, or other suitable sources—if in doubt, ask).
Your game should employ object classes and should provide reasonable exception handling. Both turn-based and real-time games are acceptable. Though you may look at games on the web for design inspiration and are welcome to copy their game play, the pseudocode and code must be entirely your own. Games based on code developed for the lab assignments (textbook projects) or based on textbook sample code are not acceptable, so no slightly tweaked Pong, Pizza Panic, or Astrocrash games will be accepted. Games judged to be too close to these programs will receive a zero for at least the code portion of the project, even if you managed to fool us with your descriptions in the design and pseudocode phases. However, again, you are allowed to use modules provided by the textbook and/or developed for the lab assignments. It is expected that you will use the Pygame module obtained from the web (or class web site) and the LiveWires module obtained from the class web site to implement your game, though this is not strictly necessary. In addition, you may implement and import your own modules, if you choose.
Since some of the game design must take place before you learn all of the techniques for doing graphical programming in Python (using LiveWires), here are some notes on what you need to know (and will learn) about graphical programming.
Remember, this is
basically a Òtake-homeÓ Final Exam, so you are not allowed to work on this with
anyone else. All work must be your
own.
Design & Pseudocode Phase:
Design your game and write a description of the game play and how you intend to implement it. Provide instructions for how to play the game. Graphics are not strictly required, but may be a big help organizing your thinking and communicating your ideas to others (including the AIs doing the grading!). Write pseudocode for your game. The pseudocode should capture in English the basic flow of logic in your intended game program. Though it is understood that the specifics may change between this design document and the final code, you must include your best estimate of what software objects and methods you intend to use to implement your game.
Submit
your .txt, .rtf, .doc, .docx,
or .pdf file to the Oncourse > combined lecture section > Assignments
> Final Game Design assignment by the assignment due date given on Oncourse.
Implement your game in Python. The game should be playable and the program should run without error. In addition to the main source code file, be sure to turn in all graphics files and modules needed to run your game (except for Pygame, LiveWires, and PythonÕs built-in modules). Provide instructions for how to play the game (preferably embedded in the game, but a separate document is acceptable).
Submit
your .py file(s), supporting graphics files, and game
instructions (either embedded in the game or in .txt, .rtf, .doc, or .pdf format) to the Oncourse > combined
lecture section > Assignments > Final Game Code assignment by the
assignment due date given on Oncourse.
|
|
For more information, contact: |