Due September 16 CS 4455 - Video Game Design & Programming
Fall 2003

Assignment 2: Hack Quake 2

Team assignment


For this assignment, you should hack the game
Quake 2 to:

  1. Hack at least one of the preexisting monsters or player models and modify its behaviour.
    eg. Make a zombie sing Oh Canada when it gets shot instead of falling over. This will require editting the source code.
    You must create four separate behaviors for the monster or player model you hack. Please make the behavior easy to provoke.
  1. Provide a textfile "readme.txt" describing what you did, some of the problems that you encountered, and how to compile and run though the program.
    Keep in mind that we will be running this on a machine in the states cluster.
    Be especially clear about the compiling and run-time instructions.
    If these are not clear, the TA will not be appreciative.
    You will have a chance to demo your changes to the TA in the states cluster, but please provide instrusctions for the TA in case you cannot make it to the demo sessions.

Be Creative!!!

Necessary Files:

Quake 2 Demo:  q2-314-demo-x86.exe
Source Code:  q2source-3.21.zip


Opening and Editting the pak0.pak file:

pak0.pak contains the data files, such as models, skins, sounds, etc. for Quake 2. To edit these files, you will need to download Pak Explorer. Extract all the files from pak0.pak into the directory pak0.pak is in. You can then move or rename pak0.pak so the game will not look there for data. You can now edit the data files for the game. Note, it is not necessary to put your edited files back into the pak file for the game to find them.

Modeling/skinning tools:

NST is a good tool to start with.

http://www.quake2.com/modeling/
http://www.quake2.com/fear/ed_model.htm

Skinning can also be done with any paint program that can edit .PCX files.

Editting the source code:

In order to change monster behaviors, etc, you will need to edit and rebuild the source code. To do this, open the main workspace file in Visual C++ 6. Once you've made your changes, you will need to overwrite the relevant files from the demo with your new versions. For most changes you make to game elements, this means overwriting gamex86.dll. Any other changes will likely require overwriting quake2.exe. Just make note of what the compiler rebuilds after you make a change, and copy any library or executable that was altered.

Comments:

See the swiki for additional help (tell your classmates to put their experiences up there. It will help everyone out).

Every team is expected to do their own work.

What to Turn In

Grading:
Grading for this assignment:

20% Subjective analysis. How pretty or neat does it look/sound? This hack should be interesting.
A singing/dancing zombie (including 4 variants thereon) would probably get the full credit on this part. Be creative!

30% Compiles and runs without intervention on the part of the TA.
(i.e. Please give the TA some good instructions!)

50% Follows requirements: Did you do what the assignment asked you to do?



Please start on this assignment early. It is not very difficult, but it may take some time to get up to speed on how to edit the code and data files.