Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSCE 552 Spring 2010 Game Design II By Jijun Tang.

Similar presentations


Presentation on theme: "CSCE 552 Spring 2010 Game Design II By Jijun Tang."— Presentation transcript:

1 CSCE 552 Spring 2010 Game Design II By Jijun Tang

2 Announcements Send me group names and logos XNA demo/learning on Feb 1 st, in 1D11  Please go to http://creators.xna.com to register and download XNA Game Studiohttp://creators.xna.com  Install Game Studio and VC# Express on your laptop  Please bring your laptop to the class Presentation on Feb 3 rd  In 1D11  Each group 10 minutes to present, 3 minutes to answer question

3 Game Design Presentation Expecting formal presentations with powerpoint files, pictures, musics, etc 10 points total for this presentation Grade will be group based, you can have the whole group or part of the group to present Grade will be based on scores from me and from the class

4 Contents for the Presentation Group members, group name, logo Description, specification, goals, game play System requirement, audience, rating Interface, input/output, interactions, cameras Premise/limitations/choices/resources Content designs/3D/2D/animation, audio Level designs, flexibility/scripting language? Actor/Verb/Noun/Use case/UML (rough) Engines (graphics, game, sound, physics) to use Version control/testing strategy/documentation Brief timeline (demo date is early May)

5 Models A model of the player – game Seven Stages of Action

6 Resources/Economies Resources  Things used by agents to reach goals  To be meaningful, they must be … Useful – provide some value Limited – in total or rate of supply Economies  Systems of supply, distribution, consumption  Questions regarding game economies: What resources exist? How and when will resources be used? How and when will resources be supplied? What are their limits?

7 Interface Typical perspectives:  First-person  Over-the-shoulder (OTS)  Overhead (top-down)  Side  Isometric

8 First person

9 OTS

10 Overhead and Side

11 Isometric

12 HCI Human-Computer Interaction Goal: improve the interaction between users and computers by making  computers more user-friendly  More receptive to the user's needs. It is the study of …  Communication between users and computers  How people design, build, and use interfaces  Better support for cooperative work

13 HCI Goals

14 Cognitive Ergonomics Ergonomics: designing the equipment and workspace to fit workers Cognition: desire to know Cognitive ergonomics:  studies cognition in work settings  in order to optimize human well-being and system performance It is especially important in the design of complex, high-tech, or automated systems.

15 Design of Everyday Things Norman ’ s five principles of design  Visibility: Making the parts visible  Mappings: Understandable relationships between controls and actions  Affordances: The perceived uses of an object  Constraints: Prevent the user from doing things they shouldn ’ t  Feedback: Reporting what has been done and accomplished

16 System Design Two general approaches to design  Special case Experiences built one scene/level at a time Anticipate states while pre-scripting events Solved by discovering the intentions of the designer  Systemic General behaviors are designed Scenes/Levels are specific configurations Some events may still be pre-scripted Solved by understanding the system

17 Systems A set of entities comprising a whole where each component interacts with or is related to at least one other component Game systems exist to enable play mechanics Relationships between components determine how the system works to produce results

18 System Components Objects: Pieces of a system Attributes: Properties determining what objects are Behaviors: Actions the objects can perform Relationships: How the behavior and attributes of objects affect each other while the system operates

19 System Behaviors Emergent complexity  Emergence is the development of complex organized systems  Emergent complexity: Behaviors that cannot be predicted simply from the rules of a system Dynamics  The behavior of systems over time  Dynamics determined by a given architecture  Generalizing dynamic behavior is hard

20 System Dynamics Is an approach to understanding the behavior of complex systems over time Created by Jay Forrester 1956, MIT A discipline for modeling and simulation Originally a tool for policy analysis, but applicable to any system

21 Cybernetics Study of communication, control, and regulation Model

22 Cybernetic System A basic cybernetic system has:  Sensor – detects a condition Thermometer  Comparator – evaluates the information Switch  Activator – alters the environment when triggered by the comparator

23 Example System

24 Feedback Feedback:  information about the internal or external changes of system that make the system adjust its output  The portion of a system ’ s output that is returned into the system Feedback Loop  The path taken by the feedback

25 Positive Feedback Amplify changes Leads to runaway behavior Difficult to make use of From Bob Craig

26 Negative feedback Counteracts changes Leads to goal seeking behaviors Most common form in systems From Bob Craig

27 Feedbacks in a Game Negative feedback  Stabilizes the game  Forgives the loser  Prolongs the game  Magnifies late successes Positive feedback  Destabilizes the game  Rewards the winner  Can end the game  Magnifies early successes

28 Platforms Platform: General description of hardware and software  Personal computer – PC, Mac, etc.  Console – Wii, PlayStation, Xbox, etc.  Handheld – DS, Game Boy Advance, PSP, etc.  Mobile device – Cell Phones, NGage, PDA, etc.  Arcade – custom vending games (e.g. Time Crisis) PC Games compared to other platforms:  PC Games are developed and used in the same platform, other platforms may require proprietary development kits.  Console games are popular because consoles are used in a “lean-back” position, while PC is used in a “sit-forward

29 Game Saves Save triggers:  automatically saved at certain points  Disadvantage: Player has little control Save-anywhere  Allow the player to save the state at any point in the game  Disadvantage: System needs to save many different variables, also may make it too easy for the player Save points:  Save only the accumulated points  Disadvantage: Rather limited Coded text saves to save a bit space Do you really want user to save?

30 Genres Genre – a category describing generalities of conventions, style, and content

31 Major Genres Action Adventure Arcade Casual Education Fighting First-person shooter Platform Racing Rhythm Role-Playing (RPG) Simulation Sports Strategy Puzzle Traditional

32 Audiences Target audience  Group of expected consumers  Age, gender income …  What does your audience know?  What does your audience demand? Demographics  Study of relevant economic and social statistics about a given population Demographic variables  The relevant factors

33 Audiences Market  Demographic segmentation of consumers  Market segments: Smaller sub-segment of the market; more tightly defined Demographic profile  Typical consumer attributes in a market  Age, Social class, gender etc.

34 Audiences Heavy Users  Those of the numeric minority of potential users responsible for majority of sales of any product  80/20 rule: in anything a few (20 percent) are vital and many(80 percent) are trivial. Hardcore gamer  Game industry term for heavy video game users Casual gamer  Game industry term for all other gamers

35 Hardcore Players Play games over long sessions Discuss games frequently and at length Knowledgeable about the industry Higher threshold for frustration Desire to modify or extend games creatively Have the latest game systems Engage in competition with themselves, the game, and others

36 Design Procedure Waterfall method  Development methodology  Design and production are broken into phases Iterative development  Practice of producing things incrementally  Refining and re-refining the product  May iterate many cycles before get it right

37 Waterfall vs. Iterative testing

38 Prototypes  Early working models of the product  Used to test ideas and techniques Physical prototypes  Non-electronic models; physical materials Software prototypes  Used regularly during iterative development

39 Testing Software testing: Process of verifying performance and reliability of a software product Tester: Person trained in methods of evaluation, may be the first job in the industry for a fresh graduate Bug: Discrepancy between expected and actual behavior Problem/Bug report: Description of the behavior of the discrepancy

40 Testing Types Unit test  written from the developer's perspective  focus on particular methods of the class under test Focus test  Testing session using play-testers  Testers represent the target audience  Lots of feedback at one time  Data can be compromised by group think Acceptance test

41 Unit Testing With very large codebases, it's difficult to make changes without breaking features Unit tests make sure nothing changes Test very small bits of functionality in isolation Build them and run them frequently Good test harness is essential

42 Unit Test

43 Acceptance Testing Also called functional tests High level tests that exercise lots of functionality They usually run the whole game checking for specific features Having them automated means they can run very frequently (with every build)

44 Bug Report and Trace Bug database Keep a list of all bugs, a description, their status, and priority Team uses it to know what to fix next Gives an idea of how far the game is from shipping Doesn't prevent bugs, just helps fix them more efficiently

45 Bug Report

46 Balancing Tuning  Developing solutions by adjusting systems  Iterations are faster  Changes are less dramatic Balance:  Equilibrium in a relationship  Player relationships, mechanics, systems, etc.

47 Balancing Intransitive relationships  Multiple elements offer weaknesses and strengths relative to each other as a whole  Balanced as a group  Example: Rock-Paper-Scissors (RPS)

48 Creativity Ability to create Ability to produce an idea, action, or object considered new and valuable

49 Classic Approach to Creativity Preparation: Background research and comprehension Incubation: Mulling things over Insight: Sudden illumination – Eureka! Evaluation: Validating revealed insights Elaboration: Transforming the idea into substance

50 Brainstorming Generating ideas without discrimination Evaluation after elaboration, can be unfocused

51 Creativity Six Thinking Hats  White Hat – neutral and objective  Red Hat – intuition, gut reaction  Black Hat – gloomy, naysayer  Yellow Hat – Pollyannaish, optimistic  Green Hat – growth and creativity  Blue Hat – process and control Symbolize perspective worn by people involved in the creative endeavor

52 Hats

53 Inspiration Board games  Spatial relationships Card games  Resource management Paper RPGs  Dynamic narratives Books  Fantasy and agency Sports  Team competition Film  Continuity techniques Television  Serialized stories Music  Temporal systems Martial arts  Discipline in action Children  Invention

54 Communication Documentation  Methods vary widely  Written, descriptive model of the game Depth varies according to the needs of the game Development documentation  Docgen  Wikidot

55 Communication Treatment: A brief, general description of the game and the fundamental concepts Used to sell and show off your idea May include:  Concept statement  Goals and objectives  Core mechanics and systems  Competitive analysis  Licensing and IP information  Target platform and audience  Scope  Key features

56 Example of Treatment http://www.csc.kth.se/utbildning/kth/kur ser/DH2650/spel08/The%20Game%20 Treatment.doc

57 Other Document Types Preliminary design document Initial Design Document Revised Design Document General Design Document Expanded Design Document Technical Design Document Final Design Document

58 Communication-Flowcharts Flowcharts  A typical technique for diagramming steps in a process  Most developers are familiar

59 Example Flowcharts

60 Communication-Diagrams Associative diagram  Drawing that helps manage and organize information visually Mind Map  A style of associative diagram  Key words and figures are placed on branches

61 Psychology Working Memory  Holds roughly 7 ± 2 items at one time while other cognitive operations on them  Each slide should not have more than 6 items Attention  Method of enhancing perceptions relative to other stimuli in the same environment  How we focus on important things  Limited capacity

62 Psychology Classical conditioning  Reaction to stimulus is conditioned by pairing with another stimulus that elicits the desired response naturally

63 Psychology Unconditioned stimulus – Meat Unconditioned response – Salivation over meat Conditioned stimulus – Tone Conditioned response – Salivation over tone

64 Psychology Operant conditioning  Learning by encouraging or discouraging Operant  A response; the action in question Example: pressing a button Reinforcement contingency  Consistent relationship between the operant and a result in the environment

65 Psychology Reinforcers  Increase the probability an action will be repeated Positive reinforcement  Positive stimulus that reinforces the behavior Ex. Use umbrella and be dry Negative reinforcement  The removal or prevention of a negative stimulus Ex. Use umbrella and keep from getting wet Punishment  Reduces the likelihood of a behavior with a stimulus Ex. Being burned by a hot stove

66 Programming Teams In the 1980s programmers developed the whole game (and did the art and sounds too!) Now programmers write code to support designers and artists (content creators)

67 A Team Picture

68 Different Programs Game code Anything related directly to the game Game engine Any code that can be reused between different games Tools In house tools Plug-ins for off-the-shelf tools

69 Team Organization Programmers often have a background in Computer Science or sciences They usually specialize in some area (AI, graphics, networking) but know about all other areas Teams usually have a lead programmer They sometimes have a lead for each of the major areas

70 Skills and Personalities Successful teams have a mix of personalities and skills:  Experience vs. new ideas  Methodical vs. visionary But hard-working is always the key

71 Methodologies A methodology describes the procedures followed during development to create a game Every company has a methodology (way of doing things), even if they don't explicitly think about it

72 Methodologies: Code and Fix Unfortunately very common Little or no planning Always reacting to events Poor quality and unreliability of finished product “Crunch” time normal

73 Methodologies: Waterfall Very well-defined steps in development Lots of planning ahead of time Great for creating a detailed milestone schedule Doesn't react well to changes Game development is too unpredictable for this approach

74 Methodologies: Iterative Multiple development cycles during a single project  Each delivering a new set of functionality  Refinements are needed The game could ship at any moment Allows for planning but also for changes

75 Methodologies: Agile Methods Deal with the unexpected Very short iterations: 2-3 weeks Iterate based on feedback of what was learned so far Very good visibility of state of game Difficult for publishers or even developers to adopt because it's relatively new

76 Make Coding Easier Version control Coding standards Automated build Code review Unit testing and acceptance testing

77 Version Control Recommended to use for team project Version control is  Database with all the files and history.  Only way to work properly with a team.  Branching and merging can be very useful  Used for source code as well as game assets (text and binary) Tools:  CVS is one of the most popular tool  Source anywhere

78 Coding standards Coding standards are  Set of coding rules for the whole team to follow  Improves readability and maintainability of the code  Easier to work with other people's code  They vary a lot from place to place Some simple, some complex Get used to different styles Sample standards can be found at: http://www.chris- lott.org/resources/cstyle/CppCodingStandard.htmlhttp://www.chris- lott.org/resources/cstyle/CppCodingStandard.html

79 Automated builds Dedicated build server builds the game from scratch Takes the source code and creates an executable Also takes assets and builds them into game-specific format Build must never break

80 Quality Control Code reviews  Knowing others will read the code will make coding more carefully  Another programmer reads over some code and tries to find problems  Sometimes done before code is committed to version control  Can be beneficial if done correctly Follow coding standards, and put comments

81 Avoid Run-time Errors Run-time errors are hardest to trace and have the biggest damage Initialize variables, use tools (Visual.Net is good at this), check boundaries, etc.  purify on Windows  valgrind on Linux Asserts and crashes  Use asserts anytime the game could crash or something could go very wrong  An assert is a controlled crash in the debug version  Much easier to debug and fix  Happens right where the problem occurred  Don't use them for things that a user could do Open a non-existing file Press the wrong button

82 Homework #1 Game Treatment Document Due on Feb 8 th after class Each group turn in one hard copy and the grade will be assigned based on group


Download ppt "CSCE 552 Spring 2010 Game Design II By Jijun Tang."

Similar presentations


Ads by Google