Of Stick Figures and Boxes OR Off the Shelf tools For Communicating your Game Design Montreal International Game Summit, 2006 James Everett

Slides:



Advertisements
Similar presentations
Transparent Decision-Making and AI Design Damian Isla AI Lead, Bungie Studios.
Advertisements

Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
Use Case Diagrams Damian Gordon.
INTRODUCE SOME OF THE MOST RELEVANT NEW RULES FOR THE UPCOMING SEASON UPDATED OVERVIEW FROM SPRING MEETING NOW THAT FEDERATION BOOK IS OUT MORE SPECIFICS.
1 Object-oriented design Part 2: OO tools & UML. 2 CRC cards Design tool & method for discovering classes, responsibilities, & relationships Record on.
System Sequence Diagrams
Lecture Set 3E Introduction Basic Software Development Issues 1. Notes on Software Development 2. Intro to Software Development Tools 7/31/2008 2:43PM.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Artificial Intelligence in Game Design Intelligent Decision Making and Decision Trees.
Ch 12: Object-Oriented Analysis
Lecture 8 Electronic Commerce Modelling Techniques
Paul Deitel, CEO Deitel & Associates, Inc.. Contact Information  Paul Deitel, CEO  Deitel & Associates, Inc.  Twitter:  Facebook:
Spring 2007COMP Design Teams Team Structure Interdisciplinary Teams.
Aug 24, Fall 2005ITCS4010/50101 Design Teams Team Structure Interdisciplinary Teams.
SE 555 Software Requirements & Specification 1 Activity Diagrams.
RED DEAD REVOLVER Artificial Intelligence Critique By Mitchell C. Dodes CIS 588.
March R. McFadyen1 Statechart Diagram A Statechart Diagram describes states for an object how/why an objects’ state changes A Statechart Diagram.
Sep 14, Fall 2006IAT 4101 Design Teams Team Structure Interdisciplinary Teams.
1 © Wolfgang Pelz UML2 UML Part 3. 2 © Wolfgang Pelz UML2 Chapter Ten State Machine Diagrams.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
COMP 350: Object Oriented Analysis and Design Lecture 2
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
1 © 2005 course technology University Of Palestine Chapter 6 Storyboarding the User’s Experience.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Use Case Modeling. Watch the video on use cases Review at minute 2:41-3:37.
SE-1010 Dr. Mark L. Hornick 1 Introduction to Object-Oriented Programming (OOP) Part 1.
Requirements Determining the requirements of software involves determining the needs of the users of the software. Determining the requirements of software.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
© 2005 course technology1 1 1 University Of Palestine UML for The IT Business Analyst A practical guide to Object Oriented Requirement Gathering Hoard.
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
Object-Oriented Modeling Using UML CS 3331 Section 2.3 of Jia 2003.
Data Structures and Abstractions with Java, 4e Frank Carrano
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
KEY FIELD HOCKEY POINTS (August 2011). GAME PLAN SAFETY FAIRNESSJUSTICE Look at the field Look at the weather conditions Look where to help partner through.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
August The Referee’s Perspective on the Passing Game Presented by Jeff Hilyer and Steve Newton 2010 AHSAA Football Officials Camp Dothan, Alabama.
System Sequence Diagram Chandan Rupakheti & Steve Chenoweth Week 5-3a.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
 A plan of attack for your games content  Or (more specifically)  A detailed description of all games mechanics, objects, characters, stats, ect… that.
UML Activity Diagrams.
Chapter 3: Introducing the UML
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
1 BTS330 Visual Modeling. What is Visual Modeling? 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship.
Lecture Outline Monday 23 rd February (Week 4) 3 – 3:10pm Review of Requirements Eng. and use cases 3:10 – 3:40pm Exercise on Use Case 3:40-4:40 Class.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
Finite State Machines Logical and Artificial Intelligence in Games Lecture 3a.
Distributed Java Programming Distributed Java Programming Class #1 August 20, 2002.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Software Engineering: Models David Millard
1 An Overview of UML. 2 The Unified Modeling Language UML is a graphical language used by software engineers to model software systems during development.
UML (Unified Modeling Language)
“Your Key To Success in CNIT 280” UML REFRESH COURSE.
Elaboration: Iteration 3. Elaboration: Iteration 3 Basics Inception and iteration-1 explored many basic OOA/D modeling basics. Iteration-2 narrowly emphasized.
Method – Notation 8 Hours.
Systems Analysis and Design in a Changing World, Fourth Edition
Business Process and Functional Modeling
CSSE 374: UML Activity Diagrams
Visit for more Learning Resources
Chirantan Ekbote Evan Liang Ethan Klein Henry Zhang Wei-Cheng Tang
UML: Unified modeling language
UML Activity Diagrams.
4 REQUIREMENTS ANALYSIS CASE STUDY
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
© 2016 Pearson Education, Ltd. All rights reserved.
Presentation transcript:

Of Stick Figures and Boxes OR Off the Shelf tools For Communicating your Game Design Montreal International Game Summit, 2006 James Everett

James Everett

Game Designer

Artificial Mind and Movement

Communication

Design = Programming = Art =

Designer’s Vision

Programmer’s Implementation Desired Game

Oh Joy! Oh Rapture!

Designer’s Vision Programmer’s Implementation Desired Game

Designer Programmer Desired Game

Not a Doctor

What is the Unified Modeling Language?

History of UML in 30 Seconds or Less

???

OMG! (Object Modeling Group)

How does UML work?

English Français Español Deutsch Nihongo Bosanski Dansk Esperanto

but not cleverComputers: fast,

if (Game) != then

PPPPPP Prior Planning Prevents Piss Poor Performance

Stand Jump Fall Stand Avatar waits in idle stand state -Player can jump from stand Jump Avatar jumps into the air -After completing Jump the avatar enters the fall state. Fall Avatar is airborne and cannot jump again -When the avatar reaches the ground return to stand UML Text

Player Avatar

Behavior Diagrams? Use Case DiagramState Machine DiagramActivity Diagram Use Case Actor Stand Jump Fall Punch Enemy Reduce Enemy HP Enemy Enters Hurt State

Use Case Diagrams Use Case Actor

Customer ATM Withdraw Deposit Balance Check Bank Database

Avatar GAME Movement Combat Health Enemy

ActorPlayer/avatarNPC/Enemy = and

Punch Avatar ACTOR GAME ASSOCIATION

Use Case Actor Use Case 1)Use Case specifications 2)Provide a detailed explanation of use cases 3)Through text

Use Cases are Player Centric

Punch Avatar Punch: 1) The avatar punches an enemy and causes damage. 2)... Kick: 1)... Shoot: 1)... Use Case: Combat Kick Shoot

1) The avatar punches an enemy and causes damage. What is an enemy? How can I tell if I hit the enemy? What if I don’t hit the enemy? How much damage do I cause?

1) The avatar punches an enemy and causes damage. Enemy = Actor Damage = State

Notes on Enemy Enemy is a non-player character Enemy will attack the player The Player must defeat the enemy The player defeats the enemy by reducing its hitpoints to 0 To reduce the enemy’s hitpoints the player must successfully attack the enemy

Player Combat State Machine Diagram (rev 0.01) Punch Idle [Player presses Punch] [Punch Complete]

Player Combat State Machine Diagram (rev 0.01) Punch Idle [Player presses Punch] [Punch Complete] State Transition Guard Condition

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Player Combat Activity Diagram (rev 0.01)

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node Flow

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node Flow Activity

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node Flow Fork Activity

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node Flow Fork Activity Parallel Activities

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node Flow Fork Activity Join Parallel Activities

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Initial Node Flow Fork Activity Parallel Activities Join Activity final node Player Combat Activity Diagram (rev 0.01)

Punch Player Punch: 1) The player punches an enemy and causes damage. 2) Punching an enemy causes it to enter a Hurt state 3)... Kick: 1)... Shoot: 1)... Use Case: Combat Kick Shoot Hurt state

Punch Enemy Reduce Enemy HP Enemy Enters Hurt State Punch Idle [Player presses Punch] [Punch Complete] Punch Avatar Kick Shoot

Kim Possible: Player Combat Actions Use Case Diagram

Kim Possible Jump State Machine Diagram

Is Enemy HP 0? Punch Enemy Reduce Enemy HP Enemy Enters Hurt State No Kill Enemy Yes

More UML Notation Decision Note > Timer Exception Use Case Activity Generating Signal Receiving Signal

Where does it fit?

Concept

Designer Programmer Game

Designer Programmer WARNING

Use Case

All forms of documents must be maintained Impractical to create state machines and activity diagrams for everything WARNING

Don’t be afraid to throw it away WARNING

Complex AI may not play well with UML WARNING

Removes confusion! Clarifies Designs! Scrubs high level to low level!

Still not a Doctor

Resources Books –UML Demystified –Elements of UML 2.0 Style –UML Distilled Programs –StarUML (free, open source) –Visual Paradigm Watch out for ATM examples Contact: