Difference between revisions of "Anatomy of a Pattern"

From SoundInGames.com - Sound Design in Games
Jump to: navigation, search
m
m
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{DraftNotice}}
+
{{DraftNotice}}<br />
When in this circumstances (context), if faced with this challenge (problem),
+
 
[[Anatomy of a Pattern#styleguide|should reflect the solution]]
+
 
== Network of patterns ==
 
== Network of patterns ==
Patterns are by definition related. The specification of those relationships defines the language (of which the pattern names are the words of the vocabulary).
+
In a Pattern Language, patterns relate to each other, by definition<ref name="Alexander79"/><ref name="Alexander77"/>. The specification of those relationships defines the language (of which the pattern names are the words of the vocabulary).
 
The nature of such relationships varies:
 
The nature of such relationships varies:
 
* Patterns may contain (non-exclusive) '''alternative''' solutions to a problem
 
* Patterns may contain (non-exclusive) '''alternative''' solutions to a problem
** e.g. [[Sound Decoys]] and [[Sound Suppressing]] are both usable when willing to design low profile interaction with opponent characters
+
** e.g., [[Sound Decoys]] and [[Sound Suppressing]] are both usable when willing to design low profile interaction with opponent characters
 
* Patterns may contain '''contrasting''' solutions to a problem
 
* Patterns may contain '''contrasting''' solutions to a problem
** e.g. [[Make sound not War]] and [[Sonic Weapons]] suggest to different approaches to design conflicts
+
** e.g., [[Make Sound not War]] and [[Sonic Weapon]] suggest to different approaches to design conflicts
 
* A pattern may contribute to solve a specific case of a context/problem (i.e. in an included context)
 
* A pattern may contribute to solve a specific case of a context/problem (i.e. in an included context)
** e.g. [[Sound Effects]] may be used to present an [[Achievement]]  
+
** e.g., [[Sound Effects]] may be used to present an [[Achievement]]  
 
* A pattern may present a solution that may integrate solutions to different problems
 
* A pattern may present a solution that may integrate solutions to different problems
** e.g. [[Heartbeat]] may used to signal [[Imminent Death]] but may also serve as [[Beacon Locator]] in a [[Echolocation]] approach.
+
** e.g., [[Heartbeat]] may used to signal [[Imminent Death]] but may also serve as [[Beacon Locator]] in a [[Echolocation]] approach.
** e.g. [[Grunts]] may signal damage during an interaction ([[Ouch!]]) as they may be used to present an [[Unaware NPC]], or to provide auditory feedback on the magnitude of the effort the PC applies in some physical movement, amongst others
+
** e.g., [[Grunts]] may signal damage during an interaction ([[Ouch!]]) as they may be used to present an [[Unaware NPC]], or to provide auditory feedback on the magnitude of the effort the PC applies in some physical movement, amongst others
 
* Patterns may be exhibit solutions for possible '''parts''' of a "more complex" solution
 
* Patterns may be exhibit solutions for possible '''parts''' of a "more complex" solution
** e.g. [[Relaxation]], [[Anticipation]], [[Engagement]] and [[Decay]], though being usable in isolation, may be used to create [[R-A-E-D Iterations]]
+
** e.g., [[Relaxation]], [[Anticipation]], [[Engagement]] and [[Decay]], though being usable in isolation, may be used to create [[R-A-E-D Iterations]]
 
* Complementarity alternative solutions to a problem
 
* Complementarity alternative solutions to a problem
  
Line 21: Line 20:
 
Subjectivity added to the objectivity of rare (but relevant) exceptions make every setting of relationships potentially arguable. The expression of the set of relationships for a pattern is invariably the outcome of a compromise.  
 
Subjectivity added to the objectivity of rare (but relevant) exceptions make every setting of relationships potentially arguable. The expression of the set of relationships for a pattern is invariably the outcome of a compromise.  
 
For instance [pending]:
 
For instance [pending]:
** e.g. consider the patterns [[Achievement]] and [[Failure]]. Both usable to provide awareness for the outcome of a certain behaviour, but usually they are (...) . Still:
+
** e.g., consider the patterns [[Achievement]] and [[Failure]]. Both usable to provide awareness for the outcome of a certain behaviour, but usually they are (...) . Still:
 
*** they could be thought of as parts of an evaluation mechanism
 
*** they could be thought of as parts of an evaluation mechanism
 
*** they do not necessarily inhibit each other in a same moment
 
*** they do not necessarily inhibit each other in a same moment
Line 29: Line 28:
 
[pending: graph illustrations allusive to overlapping pattens]
 
[pending: graph illustrations allusive to overlapping pattens]
 
====Aggregator Cards====
 
====Aggregator Cards====
Were are calling '[[Aggregator Patterns|Aggregator Pattern]]' to those which exclusively characterise a set of more specific solutions, without present no specific solution per se. Aggregator Patterns evidence [[Categories]] of Patterns (a concept that we are considering to explore but did not yet, to date).
+
We are calling '[[Aggregator Patterns|Aggregator Pattern]]' to those which exclusively characterise a set of more specific solutions, without present no specific solution per se. Aggregator Patterns evidence [[Categories]] of Patterns (a concept that we are considering to explore but did not yet, to date).
  
 
===On the boundaries of the global scope===
 
===On the boundaries of the global scope===
Line 40: Line 39:
 
For instance, when we first presented the [[seminal collection]] of patterns we included the pattern [[Horse Hooves]] that was meant to illustrate a low illustrate the specification of a low-level pattern. This tentative pattern addressed solutions for the problem of producing the sounds of the hoofbeats. Meanwhile we realised that we are not willing to specify patterns of this nature/level in the scope of this initiative, for [[several reasons]], including the fact that they address implementational matters that come further the design decisions. Our mindset at the time was that, if we trying to contribute to the [[empowerment of small game developers]] to perform sound design, it would make sense to also provide information regarding to the implementation of those ideas, so that while designing they could ponder the feasibility or predicted cost of those ideas. Yet, we now understand that mixing the two levels in the purposed collection is not interesting (please see [[details]] about this matter.).
 
For instance, when we first presented the [[seminal collection]] of patterns we included the pattern [[Horse Hooves]] that was meant to illustrate a low illustrate the specification of a low-level pattern. This tentative pattern addressed solutions for the problem of producing the sounds of the hoofbeats. Meanwhile we realised that we are not willing to specify patterns of this nature/level in the scope of this initiative, for [[several reasons]], including the fact that they address implementational matters that come further the design decisions. Our mindset at the time was that, if we trying to contribute to the [[empowerment of small game developers]] to perform sound design, it would make sense to also provide information regarding to the implementation of those ideas, so that while designing they could ponder the feasibility or predicted cost of those ideas. Yet, we now understand that mixing the two levels in the purposed collection is not interesting (please see [[details]] about this matter.).
  
==Style guide for the card format==
 
 
<span name="styleguide"></span>
 
<span name="styleguide"></span>
 +
==Style guide for the card format==
 
[[File:Card-anatomy-v10.png| 250px|thumb | The anatomy of card (here illustrated over the card named [[Achievement]]), (as of v1.0)]]
 
[[File:Card-anatomy-v10.png| 250px|thumb | The anatomy of card (here illustrated over the card named [[Achievement]]), (as of v1.0)]]
 
* [[#Name|'''Name''']]: a token that represents the solution
 
* [[#Name|'''Name''']]: a token that represents the solution
 
* '''Synopsis''': the shortest possible sentence that identifies the contents of the pattern. In many cases we opted by the formula: 'use this solution when faced with this problem'. Still particular cases call for adaptations. For instance:
 
* '''Synopsis''': the shortest possible sentence that identifies the contents of the pattern. In many cases we opted by the formula: 'use this solution when faced with this problem'. Still particular cases call for adaptations. For instance:
 
**In higher level patterns this tends to be kind of problems addressed
 
**In higher level patterns this tends to be kind of problems addressed
***e.g. in {{#rellist: Sound Input|:}} 'The way sound enters the gameworld'
+
***e.g., in {{#rellist: Sound Input|:}} 'The way sound enters the game world'
***e.g. in {{#rellist: Character Soundprint|:}} 'The set of sounds of a PC or NPC'
+
***e.g., in {{#rellist: Character Soundprint|:}} 'The set of sounds of a PC or NPC'
***e.g. in {{#rellist: Dialogue|:}} 'All sorts of conversation'
+
***e.g., in {{#rellist: Dialogue|:}} 'All sorts of conversation'
 
**In lower level patterns this tends to be the solution, and the problem and/or the context if its not tacit enough
 
**In lower level patterns this tends to be the solution, and the problem and/or the context if its not tacit enough
***e.g. in {{#rellist: Eavesdropping|:}} 'Adopting behaviours with the intention of gaining knowledge by listening to others' conversations.'
+
***e.g., in {{#rellist: Eavesdropping|:}} 'Adopting behaviours with the intention of gaining knowledge by listening to others' conversations.'
***e.g. in {{#rellist: Sing to Act|:}} 'Performing songs to achieve a purpose.'
+
***e.g., in {{#rellist: Sing to Act|:}} 'Performing songs to achieve a purpose.'
 
* '''Relationships''':
 
* '''Relationships''':
 +
{{InsertReferencesH2}}

Latest revision as of 00:21, 25 May 2012

This page is still being written. Please bare with us while we solve bad structure, uncompleted sentences and unchecked content.

Network of patterns

In a Pattern Language, patterns relate to each other, by definition[1][2]. The specification of those relationships defines the language (of which the pattern names are the words of the vocabulary). The nature of such relationships varies:

  • Patterns may contain (non-exclusive) alternative solutions to a problem
  • Patterns may contain contrasting solutions to a problem
  • A pattern may contribute to solve a specific case of a context/problem (i.e. in an included context)
  • A pattern may present a solution that may integrate solutions to different problems
  • Patterns may be exhibit solutions for possible parts of a "more complex" solution
  • Complementarity alternative solutions to a problem

Subjectivity and far fetched cases

Subjectivity added to the objectivity of rare (but relevant) exceptions make every setting of relationships potentially arguable. The expression of the set of relationships for a pattern is invariably the outcome of a compromise. For instance [pending]:

    • e.g., consider the patterns Achievement and Failure. Both usable to provide awareness for the outcome of a certain behaviour, but usually they are (...) . Still:
      • they could be thought of as parts of an evaluation mechanism
      • they do not necessarily inhibit each other in a same moment

Unions and Intersections

The fact that patterns are not all at the same abstraction level – because they present different levels of solutions for different levels of problems in different scopes of the context of Sound Design in Games – implies that there cases of overlapping coverage of a particular matter. [pending: graph illustrations allusive to overlapping pattens]

Aggregator Cards

We are calling 'Aggregator Pattern' to those which exclusively characterise a set of more specific solutions, without present no specific solution per se. Aggregator Patterns evidence Categories of Patterns (a concept that we are considering to explore but did not yet, to date).

On the boundaries of the global scope

On the higher level

The highest level is symbolised by the card Sound Design in Games
which is assumedly a card aside others. The next level of patterns are those that exclusively aggregate others, without carrying any specific exploration themselves. These aggregator patterns are relevant but not effective when expressed as deck cards (see the rationale). As such this is a level that interests us when considering patterns but which is out of boundaries when considering their representation as cards.

Stop before going implementational

For instance, when we first presented the seminal collection of patterns we included the pattern Horse Hooves that was meant to illustrate a low illustrate the specification of a low-level pattern. This tentative pattern addressed solutions for the problem of producing the sounds of the hoofbeats. Meanwhile we realised that we are not willing to specify patterns of this nature/level in the scope of this initiative, for several reasons, including the fact that they address implementational matters that come further the design decisions. Our mindset at the time was that, if we trying to contribute to the empowerment of small game developers to perform sound design, it would make sense to also provide information regarding to the implementation of those ideas, so that while designing they could ponder the feasibility or predicted cost of those ideas. Yet, we now understand that mixing the two levels in the purposed collection is not interesting (please see details about this matter.).

Style guide for the card format

The anatomy of card (here illustrated over the card named Achievement), (as of v1.0)
  • Name: a token that represents the solution
  • Synopsis: the shortest possible sentence that identifies the contents of the pattern. In many cases we opted by the formula: 'use this solution when faced with this problem'. Still particular cases call for adaptations. For instance:
    • In higher level patterns this tends to be kind of problems addressed
    • In lower level patterns this tends to be the solution, and the problem and/or the context if its not tacit enough
      • e.g., in Eavesdropping : 'Adopting behaviours with the intention of gaining knowledge by listening to others' conversations.'
      • e.g., in Sing to Act : 'Performing songs to achieve a purpose.'
  • Relationships:

References

  1. Jump up Alexander, C. 1979. The timeless way of building. Oxford University Press, NY.
  2. Jump up Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl-King, I., and Angel, S. 1977. A pattern language: Towns, buildings, construction. Oxford University Press, NY.

Cite error: <ref> tag with name "pending" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "AlvesACE11" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Stockburger2006" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "otocky-1" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "isaza-rdr" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "mossarrows" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "deafgamers" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Sheffield" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Griffin" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Jones" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "TobinAndInfamous" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "HerbertAndLifeInADay" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Trier2000" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Baraka" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Stocco2012" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Hatch2011" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Spielberg" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Ament" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Messiaen" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Whalen2004" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "WhartonCollins2011" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "apologizetomymule" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "afistfulofdollars" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "theSilence" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Loughlin2010" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "AlvesAM11" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "AlvesAM09" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "AlvesAM10" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "AlvesCh11" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Augoyard" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Leeds" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Sonnenschein" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves2009" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves2011a" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Augoyard" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Bj.C3.B6rk" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Borchers" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Erl" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Frauenberger" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Gamma" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Gilliam" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Holowka" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Jackson" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Kunert" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Leeds" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Marks2009ch8" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Marks2009" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Pajitnov" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Peck2001" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Peck2007" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Smaragdis2009a" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Smaragdis2009b" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Sonnenschein" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "UESP._2010._Oblivion:NPCs" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Viers" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Vlissides" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alexander" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Borchers" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Erl" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Gamma" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Tidwell" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Bjork" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Frauenberger" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Holowka" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Peck" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Halskov" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Lucero" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Schell" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Nielsen" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Heylighen" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Aarseth" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Alves" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Atwater" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Augoyard" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Barr" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Brewster" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Collins2008a" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Collins2008b" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Cs.C3.ADkszentmih.C3.A1lyi" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Cunningham" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Cunningham" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Dam.C3.A1sio" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Dam.C3.A1sio" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Dam.C3.A1sio" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Deutsch" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Ekman" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Ekman" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Farnell" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Follett" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Frauenberger" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Freeman" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Gouk" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Grimshaw2007" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Grimshaw2008" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Grimshaw2009" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Hassenzahl" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Hassenzahl" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Hermann" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "J.C3.B8rgensen" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "J.C3.B8rgensen" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "J.C3.B8rgensen" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Juslin" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Kallmann" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Kramer" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Lane" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Ledoux" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Leeds" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Lynch" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Mahlke" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Mahlke" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Marks.26Novak2009" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Nacke" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Nettle" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Norman" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Norman" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Parker" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Peck" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Peck" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Roque" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Schafer" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Schafer" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Schell" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Sider" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Sonnenschein" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Sotamaa" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "The_Curious_Team._1999._Curious_about_space:_Can_you_hear_sounds_in_space.3F_Ask_an_Astronomer._Retrieved_September_31" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Tinwell" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Truax" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Truax" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "World_soundscape_project._n.d.._Retrieved_September_31" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Wrightson" defined in <references> is not used in prior text.