The Game Development Process Game Architecture. Outline Tokens Initial Architecture Development Nearing Release Postmortem.

Slides:



Advertisements
Similar presentations
Signals and Systems March 25, Summary thus far: software engineering Focused on abstraction and modularity in software engineering. Topics: procedures,
Advertisements

Chapter 3: Editing and Debugging SAS Programs. Some useful tips of using Program Editor Add line number: In the Command Box, type num, enter. Save SAS.
Video Game Design Lesson 1. Game Designer Person involved in the development of a video game Person involved in the development of a video game Usually.
Getting to know Greenfoot
Cosc 5/4730 Game Design. A short game design primer. A game or animation is built on an animation loop. – Instance variables of “objects” are updated.
Interaction design using the graphical user interface (GUI)
Probability Distributions CSLU 2850.Lo1 Spring 2008 Cameron McInally Fordham University May contain work from the Creative Commons.
Lets Play Catch! Keeping Score in Alice By Francine Wolfe Duke University Professor Susan Rodger May 2010.
Game Design Storyboard, maps, graphics, timeline.
Deteministic method (FSM) Dan Witzner Hansen. 2 Last week The objective of the course is to introduce the students to a wide variety of artificial intelligence.
Game Rules Implementation Lecture 5 1. Revisit 2  Lab 4 – Other Input Methods  Touches Basics  Relationship between TouchesBegan, TouchesMoved, and.
Fall 2008ACS-1805 Ron McFadyen1 ACS-1805 Introduction to Programming using Alice 2.0 Ron McFadyen Course OutlineMcFadyenOutline.
Extending the Pong Example Barb Ericson Georgia Tech June 2011.
GAME:IT Junior Bouncing Ball Objectives: Create Sprites Create Sounds Create Objects Create Room Program simple game.
A Scratch tutorial. Description: You have 6 bullets to shoot at 2 targets. Every time you hit any of them you get two extra bullets but the targets get.
Introduction Main menu Pacman In curse of the cursor Start Instructions.
CSCI 101 Introduction to Software Development and Design.
Game Design For Development Brent M. Dingle 2014 Game Design and Development Program Mathematics, Statistics and Computer Science University of Wisconsin.
1 TouchDevelop Chapter 8-10 Presenter: Jing Xu. 2 Outline Interactions Game Board Tiles and Printing.
Chapter 3 Working with Symbols and Interactivity.
A General Theory/Model of Communication
Super Pong Andrew Dunsmore CSC436. Overview Purpose Design Specification Software Engineering.
Noadswood Science,  To know the basics of Python coding and decoding Monday, September 07, 2015.
Creative Commons Attribution 3.0 creativecommons.org/licenses/by/3.0 Key Abstractions in Game Maker Foundations of Interactive Game Design Prof. Jim Whitehead.
Introduction to TouchDevelop
By Mr. Lee. Backgrounds The image that appears in the background (duh!). This might be a horizon, or clouds, trees and rainbows in the distance If you’re.
GAME:IT Bouncing Ball Objectives: Create Sprites Create Sounds Create Objects Create Room Program simple game.
Game City In this project you will learn the basics of visual programming to start creating your own games. The tool you will be using to do this is Microsoft.
VIDEO GAME PROGRAMMING Video Game Programming Junior – DigiPutt INSTRUCTOR TEACHER’S ASSISTANT.
© 2011 Delmar, Cengage Learning Chapter 3 Working with Symbols and Interactivity.
KeyListener and Keyboard Events Just as we can implement listeners to handle mouse events, we can do the same for keyboard events (keypresses) –to implement.
Art 315 Lecture 5 Dr. J. Parker AB 606. Last time … We wrote our first program. We used a tool called GameMaker. The program we wrote causes a ball to.
 Follow tutorial to make basic pacman (on ‘O’drive, same place as usual)  Create 2 more levels for your pacman using “next costume”  Add a couple of.
1 Chapter 16 Random Variables. 2 Expected Value: Center A random variable assumes a value based on the outcome of a random event.  We use a capital letter,
Test Environment Algorithm Program Requirements/ Enhancements Analyze the Problem and Design a Solution Programming Software Translates the Source Code.
Software Engineering Chapter 3 CPSC Pascal Brent M. Dingle Texas A&M University.
Sample Video Game & Sound. The Plan 1.Game Theme 2.Game Structure 3.Sprites 4.Trackers 5.Collisions 6.Score 7.Levels 8.Splash Screens 9.Design 10.Implementation.
11 Making a Sprite Session 4.2. Session Overview  Describe the principle of a game sprite, and see how to create a sprite in an XNA game  Learn more.
Piñata Game: Keeping Score in Alice By Maggie Bashford Professor Susan Rodger Duke University July
Making Python Pretty!. How to Use This Presentation… Download a copy of this presentation to your ‘Computing’ folder. Follow the code examples, and put.
Scratch pong challenge Pong is a classic 1970s video game  Open the pongv1.sb2 file in Scratch  Click the.
Computational theory techniques in interactive video games.
Warm Up If Babe Ruth has a 57% chance of hitting a home run every time he is at bat, run a simulation to find out his chances of hitting a homerun at least.
ENGR-TS-2: The students will develop an understanding of how the design process is used to develop a technological system.
CSCI1600: Embedded and Real Time Software Lecture 28: Verification I Steven Reiss, Fall 2015.
CHAPTER 14 Classes, Objects, and Games XNA Game Studio 4.0.
Dr Nick Mitchell (Room CM 224)
HOW A COMPUTER PROCESSES DATA. What is hardware? Hardware is the electric, electronic and mechanical equipment that makes up a computer What is software?
Programming games in Visual Basic Review programming & VB topics Insertion sort. Best times. Generate questions & answer patterns for quiz Lab/Homework:
Will Britt and Bryan Silinski
The single most important skill for a computer programmer is problem solving Problem solving means the ability to formulate problems, think creatively.
Intro to Loops 1.General Knowledge 2.Two Types of Loops 3.The WHILE loop 1.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Game 4: Pac Man Tutorial. New events/actions to learn: Animated sprites Change instances – allows you to change objects into other objects. Change sprites.
Finite State Machines Logical and Artificial Intelligence in Games Lecture 3a.
Game Maker Tutorials Introduction Clickball IntroductionClickball Where is it? Shooting Where is it?Shooting.
Collision Theory and Logic
Game Design For Development
MOM! Phineas and Ferb are … Aims:
Collision Theory and Logic
Baseball Overview Group Name: oneM2M TP30 Source: ATIS
Morgan Kaufmann Publishers
First-Person PacMan By Brett Jones.
Chapter 10 Algorithms.
Chapter 1: An Overview of Computers and Programming Languages
Tokenization.
An Agent that plays Pacman
Probability in Baseball
Presentation transcript:

The Game Development Process Game Architecture

Outline Tokens Initial Architecture Development Nearing Release Postmortem

Game Decomposition Consider: Pong, Frogger, Pac-Man, Missle Command, Zelda, Virtua Fighter, Warcraft, Doom … What do they have in common? –All have a player (else a movie or screen saver) –All have discrete elements that can be directly or indirectly manipulated –Call these tokens Note, tokens == objects. Use “tokens”, tho, since not always 1-to-1 mapping to software objects Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

Tokenizing Pong Bats, Score, Ball, Walls –Player moves Bat, changes score so sub-tokens Goals, too. Defined by area. All games can be tokenized (Pac-Man and Balls! in Rollings and Morris book) Ball Walls Goals Player BatScore (Game World has rest) Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

Interactions of Tokens (1 of 2) Collisions are common –Token gets message telling collision occurred More interactions than collisions. Try token-token matrix (lower triangle, p. 484) –If impossible, “X” –If symmetric, square –If asymmetric, triangles Events: Ball-Bat deflection, Wall-Bat stop, Wall-Ball deflection, Goal-Ball goal event, Goal  Score goal event. Note, Score  Goal is “X” Allows visual check for interactions. –See errors, missing interactions –Maybe unexpected chain reactions (could enhance game, could be unplayable) Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

Interactions of Tokens (2 of 2) Game World is token. Included in matrix. Needs to be informed of some events. Act as intermediary. –Also, objects don’t need to know all they may encounter. Makes it easier to update. Ex: Ball hits goal  goal generates goal event to Game world  game world generates score event sends to score  score increments total points –Could later add team score or high score object and goal would not need to know Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

Limitation of Token Matrix Can get complicated. Consider Pac-Man (Figure in Morris and Rollings) Tokens have one or more states –Ghosts hunting, hunted, eaten Some interactions more complicated –Pac-Man eats power pill  power pill event –Power pill event  ghost goes to hunted, timer reset –Hunted ghost eaten  eaten event to home base, calculates how many  score (200, 400…)  score to ghost to display Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

State Machine for Ghost Token Token Matrix gives you big picture Finite State Machine (FSM) gives you focus on specific area (Example of ghost in Figure 17.16) Single token and how rest of world interacts. Ex: ghost –Hunter – (pill)  Hunted –Hunted – (timer)  Hunter –Hunted – (pill)  Hunted (reset timer) –Hunted –(pacman)  Eaten –Eaten –(resurrect)  Hunter Eaten would trigger score event. That would appear in FSM of score token Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

State Machine for Pac Man Hunted – (power pill)  Hunter Hunter – (timer)  Hunted Hunter – (power pill)  Hunter (reset) Hunted – (ghost collision)  Dying Dying – (if lives > 0)  Reset Level event else Game Over event This is an “open” FSM, meaning can be a dead-end Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

State Machine for Game World Shows how FSM translates to non game aspects Pretty generic for all games Would be others, such as score, etc. FSMs hierarchical, break down finer Once mastered, allow visualization of complex game (Errata is same as Pacman FSM) Based on Chapter 17 of Game Architecture and Design, by Rollings and Morris

Initial Architecture Design Rollings and Morris, Chapter 20

Development Rollings and Morris, Chapter 21

Run Up to Release Rollings and Morris, Chapter 22

Postmortem Rollings and Morris, Chapter 23