Deer Hunter's
Three-Month Development
Cycle

Lesson 3: Smart Scheduling

By
James Boer

Gamasutra
January 8, 1999
Vol. 3: Issue 1

 

Originally
Published in Game Developer Magazine, December 1998.

Game Developer Magazine

Deer Hunter's Three-Month Development Cycle
Introduction

Lesson 1: Don't Over-Design

Lesson 2: Don't Be Afraid to Design Dynamically & in Parallel

Lesson 3: Smart Scheduling

Lesson 4: Code Around Scheduling Delays

Lesson 5: Create Meaningful Milestones

I brought up the issue of scheduling when discussing parallel design, but it warrants more attention. Intelligent scheduling means planning to complete components so that you minimize your reliance upon incomplete code; this was one aspect of our development process that allowed us to get DEER HUNTER out the door fairly rapidly.

For instance, Figure 1 shows the task schedule from early in the DEER HUNTER project. Mike Root, our project leader and lead programmer, was responsible for creating and maintaining the general framework of the game, as well as other items such as creating the weapons and building the sound libraries. He also built a resource editor that helped us manage all the game artwork. Nate Terpstra, our trusty intern, worked on the DirectDraw graphics libraries and user interface controls. My responsibilities included game design, artificial intelligence and deer behavior, map creation, and scene generation.

You can see in Figure 1 how both my game design and AI research were scheduled for a time when it would have been difficult for me to do much else in the way of high-level coding. Much of the game design was still in flux when Mike and Nate were developing the DirectDraw libraries, resource builder, and basic program framework.

Figure 1. task schedule
Figure 1. DEER HUNTER's task schedule

None of this concerned us, however, as we knew what was required of those components regardless of game design. This freed me to continue tweaking the design and continue research even while other team members were busy coding. Note that when I was finally ready to begin coding the deer AI, the elements for allowing me to visualize the deer on screen were nearly in place.

Image 3. Snow Gunsight View
[zoom]
On to Lesson 4...  Next Page