Lord Generic Productions
A Crash Course
in Game Design and Production
Week 5 -
Sound and Music Specification
Welcome back! This is the fifth
installment in "A Crash Course in Game Design and Production.
Like last time, this lesson is in multiple parts. In PART ONE, we'll
talk about the basics of sound reproduction on the computer. In Part
TWO, we'll discuss computer music and sound effects, and what we need
to write the Sound and Music Specification. In PART THREE we will
write the fifth section of the Design Spec for our Course Project,
theSound and Music Specification. This is part 2 of 3
Part 2a
- Sound and Program-Related Terms We Need.
Ok, now that we know all about
sound, we'll move on to the kinds of things we need to specify in our
Sound and Music Specification. For this discussion we need to clarify
some terms:
Event - An event in this
context is anything that causes us to want to play one of our digital
samples. Things such as the beginning of the game, eating a dot,
energizer or ghost, losing a life, getting a high score, or beginning
an intermission sequence are all events. We will categorize the
sounds we play based on the events that trigger them. In the
discussion that follows, I will sometimes give sample event names. In
these I will use the nomenclature EventName, like GameOver,
HighScore, ClearLevel. From the names I give, I will assume you can
figure out what I mean.
Milestone Events - We
talked about this earlier. These are game goal related. When the
player has done something appropriately productive or inappropriately
counterproductive in his quest for the game goal, you want to play
some sound sample. Beginning the game is productive, so it is a
Milestone Event. Other Milestone Events are GameOver, Intermission,
HighScore, ClearLevel, KillBoss, Death, etc.. Milestone Events are
either Major (KillBoss) or Minor(BonusObject).
Game-Related Events -
These are anything else that would make you want to play one of your
sound samples. For Snack Attack, this would be eating a dot,
energizer, bonus object or ghost.
Priority - Since we have a
limitation that only one sample can be played at a time, we need to
plan our sounds by priority. While we can always stop a sound during
playback and start another one playing, you don't always want to do
it! Some events are more important than other events, soundwise. For
example, Packy getting "eaten" is more important than the
bonus score sound, so that sound should have priority. You don't want
to cut off important sounds by trivial ones.
"Getting Stepped On"
- This is when a lower priority sound sample is playing, and another
sample of same or higher priority is required to start NOW. The
previous sample is "stepped on," it stops playing, the
sound card is reset, and another sample is played in its place.
"The Good Part"
- The whole point to the sample. Something about the sample made you
choose it as "the sound" for a particular event. That
something is the good part. For OidZone, one sample I'm fond of is
"You SUCK!!! Try Again..." with a nice echo. The "you
SUCK!!" with the echo is the "good part" for me. I
laugh EVERY time I hear it. The good part should NEVER "get
stepped on" if you can avoid it.
Length - The duration of
the sample in seconds. If my intermission animation event lasts ten
seconds and I want some background music for it, the sound sample I
need to play must be "ten seconds long," It's over ten
seconds after it starts.
Music vs SFX
I've used the term "sound
sample" until now, because I wanted to make an important
distinction between different "types of sounds" we use for
our games. These distinctions also apply to FM and Wavetable
synthesized sounds too, so if and when we have those capabilities in
Euphoria, this material will also apply to them as well. From here on
out I will use the terms "Music" and "SFX."
Music
Generally only plays at milestone
events, and is not affected by any other game-related events.
"Music" is kind of a misnomer, as not everything that falls
into this category needs to be "musical" in any way. This
distinction goes back to the 1980's arcades, before we had digital
samples. Most of these things were signaled with music, because music
synthesis is easy, and voice synthesis is hard. Music falls into
Three categories, based on the type of milestone event that triggers
them. They are:
Theme Music
- These are sounds that set the tone of the game. They are generally
five to ten or more seconds in length, and they play at and during
major milestone events. Theme Music events are TitleSequence,
StartNewGame,NewLevel, YouDie, YouSuckTryAgain, etc.
Note that these don't have to be
musical at all. You can sample yourself saying "The Force will
be with you...always" and call it Theme Music. It sets the tone
as to how the player feels about the game and his play. Theme music
generally has the highest priority. You don't want to cut off
"you are really a great player" with a farting sound. It
sends the wrong message. Any player alert message, like "Green
Elf is about to die..." is Theme Music. It sounds weird, and it
is, really, but that's how it is.
Background Music or Ambience Tracks
- These generally begin at Milestone Events, like StartGame, or
Intermission, and continue to play throughout the event. In our
course project we will be experimenting with playing background
sounds "around" the game-related event sounds. While we can
only play one sound at a time, we can create some alternate versions
of the sound effects to sound "like" we're mixing them with
the background. It's tricky to do right, but we'll give it a go.
These ARE usually musical samples, but you can have your background
music be obscenities shouted at the player all through the game if
you want to. That would be an "ambience track" Background
music has the absolutely lowest priority, as it's played constantly.
All other sounds must be able to play over it.
Musical Tag
- These are VERY short samples, usually 2 seconds or less. They occur
at Minor Milestone events, like EatingBonusObject, HitHighScore, etc.
These could be a short fanfare or Ding-Ding-Ding-Ding, or
"WOW!" It doesn't matter.
SFX
This is an acronym (sorta) for
Sound Effects, and describes pretty much any other sound you want to
play. SFX are game-event related - something happens in the course of
your game that isn't really milestone related, but is important
enough that you want to play a sound effect for it. Things like
shooting, htperspacing to another location, eating a dot, an oid
breaking, ghosts bumping heads, etc. are all things you may want to
play a sampled sound for. Aural feedback is as important as visual
feedback in games. Things that make noise are more interesting than
things that are silent.
BE CAREFUL NOT TO OVERDO SFX!!!
Like Creeping Featurism, SFXitis should be avoided at all costs. Just
because you CAN make each key pressed sound like a different dog
barking, doesn't mean you SHOULD. Try and keep your SFX to less than
20 unless absolutely necessary. Only things that affect how you are
doing should have sound effects, like thrusting your ship or shooting.
Some don't need SFX, specifically, things you do a LOT, like
maneuvering packy around the maze, or rotating your ship. These
things get annoying VERY QUICKLY.
KEEP YOUR SFX AS SHORT AS POSSIBLE!!
When sampling sounds, often you have some quiet time at the beginning
and end of your sample. You should edit this out, and trim your sound
effect so it's as short as you can make it, especially if it is
something that will be heard frequently, or will be "stepped
on" by another (or the same) sound effect. Too long effects
sound bad if they are cut off before "the good part." If
you trim your SFX to bare minimum, you hear more of the good part
before it's stepped on.
Part 2b - The Sound and Music Specification
Finally, we're to the point where
we can talk about what we need to specify for the Sound and Music
Specification. This part of the Design Spec is very similar to the
Art Spec we talked about last week, in that for each Sample we
describe what it is, what we're calling it, how big it is, and where
it goes.
Anatomy of the Sound and
Music Specification
Here we go, into another anatomy.
The Sound and Music Specification consists of:
Sound Requirements List
This is the system requirements
for our game, and the sound parameters we need to adhere to.
According to Ecstacy.e our sound drivers have the following
requirements and limitations:
Minimum system requirements:
A copy of the latest version of
the Euphoria Programming Language(V2.1+).
A 486/66Mhz+ CPU.
A Sound Blaster or compatible
sound card with a DSP version 2.0 or higher.
2MB+ RAM.
FEATUREZ:
Mix up to 64 sounds at one time.
Mixing rate from 8000Hz - 44100Hz.
8-Bit, Mono output only.
Each sound can have a seperate
volume from 0 - 255.
Each sound can have a seperate
playback rate from 1Hz - 88200Hz.
Each sound can optionaly be
looped to the begining when it reaches the end.
Global volume-level from 0 - 255
affects all sounds.
Load 8-Bit or 16-Bit Mono or
Stereo ".WAV" files.
Save and load multiple wave files
to/from a single ".PAK" file.
Auto-detect sound card, or set
BASE_PORT, IRQ and DMA manualy.
Optionaly write debuging
information to a debug file.
KNOWN BUGZ:
Doesn't work with Windows 2000.
May not work on windows NT.
All sound samples we intend to
use MUST meet these requirements.
End of
Week 5 - Sound and Music Specification
Part 2 -
Terminology and The Sound and Music Spec
If you have any questions for
group discussion or have any other questions, comments or
suggestions, email them to me to Pastor@BeRighteous.com
Mail monetary donations large or
small to
Lord Generic Productions
1218 Karen Ave Santa Ana, Ca 92704
A
Crash Course in Game Design and Production - Euphoria Edition
(C) Copyright 1996,2001 Lord
Generic Productions - All Rights Reserved