256 THE GAME PRODUCTION HANDBOOK, 2/E
Documentation on the coding standards includes specifics on coding
conventions, hardware and software specifications, naming conventions, tech-
nologies used (including middleware), file types, data layout, and any other tech-
nical information that is necessary for developing the game. The documentation
should also provide an overview of what all the functions and data do and how
they interact with each other.
Technical design documentation is the counterpart to design documentation.
The engineers will read through the design documents and provide technical in-
formation on how the features will be coded for the game. This documentation is
disseminated to the appropriate engineers on the team for implementation.
Tools instructions provide information on how to use the tools. For example,
an engineer and designer will work together to document how the scripting tools
work. These tools instructions must be updated when any changes are made to
the tool functionality; otherwise, the documentation will quickly become un-
helpful and even obsolete.
CREATING TECHNICAL DOCUMENTATION
Tobi Saulnier, President
1st Playable
Part of the lead engineer’s responsibility on a project is to put together a tech-
nical design document (TDD) that describes the software systems that are needed
to produce the game, both existing systems and systems that need to be developed.
They are usually working on this document in parallel with the game design docu-
ments (GDD) being written by designers.
A detailed GDD is extremely useful for the engineers when they start working
on the TDD, as it assists them in identifying the list of in-game features and the
needs of the art and design pipelines required to develop those assets and integrate
them into the game. If some areas are missing from the GDD, this can cause prob-
lems for engineering, either resulting in an important feature not being included
in the upfront software planning or the engineers not fully understanding how a
feature is expected to work. For example, if one of the bosses (the enemy at the end
of a level or mission) does not have a detailed description of his expected behavior,
the engineers will not know how much time to plan for implementing his AI, or the
boss once implemented will not behave as the designer envisioned.
Detailed examples and mock-ups should be included in all documentation,
as words alone often can’t fully define what the desired functionality is. Use of