01-Game Mechanics

Homework assigned in preparation for this lecture

  • Read AGD: Chapter 7, 8, 9
    • Deliverable: Write a blog post analyzing your team's product or game according to Lens#13, that give your answer to the eight key questions that assess the idea that your team is pursuing. Bring a personal insight.
    • Deliverable: Do you believe your team's game or product will get the user to the state of 'flow'. If so, in what way and why? If not, why not, and is that ok? Write a blog post explaining your position.
    • Deliverable: Read your classmates blog posts for this assignment and make brief comments on several
  • Read about Model View Controller
    • Wikipedia article on MVC
    • Original papers on MVC
    • Deliverable: Make a diagram of the model of your team's game or product and share it with the rest of the class via a blog post
    • Deliverable: Make another blog post comparing the Android's application model with MVC; try to identify the parts or classes in Android that would be "Model", "View" and "Controller"
  • Read "The Cake is Not A Lie"
    • Deliverable: Write a blog post with your reflections
  • PA-2
    • FInish PA-2 assignment and submit it to GIT
    • Deliverable: Add link to your code to your homework log.

Weekly Programming assignments

  • Review last week's PA
  • DIscuss this week's PA

Game Mechanics

  • Product teams please sit together so you can confer
  • Product teams: keep notes so you can write up your analysis later

High level summary

  • Digging into game mechanics...
    • Analyzing relative to the products
    • Apply it to the "Brandeis Game"
  1. Space - World in which the game takes place
  2. Objects - The things that exist within the game space
  3. Actions - The things that can happen in the game
  4. Rules - What is permitted and not permitted
  5. Skills - What the player brings to the game
  6. Chance - How randomness is used
  • Note
    • Not everything fits neatly in one or the other part of the game mechanics. 
    • For example, are "levels" objects or parts of the game space? 
    • Don't worry about that for now

Mechanic #1: The game space

  • Where the game occurs
  • The board, world, universe, campus, or whatever
  • All other parts of the game are somehow 'in' the game space. 
  • Things which are not in the game space are not part of the game
  • Characteristics
    • Can be either discrete (tic-tac-toe) or continuous (basketball)
    • has a number of dimensions (0 to n)
    • has bounded areas which may or may not be connected, and nested
    • Note these are abstractions
    • These are not hard and fast rules
    • Helpful / required so as to:
      • Represent the rules of play
      • Represent the state of play 
      • Help us reason about the game
    • It's NOT a "User Metaphor" or "Conceptual Model"
    • It MIGHT be an "Object Oriented Design" or MVC "Model"e
  • Spaces can be nested as well
    • For example, going 'inside a building" in a game set on a college campus
    • And inside the building, I might be able to go inside an office
  • Spaces need a coordinate system
    • Don't assume it's [x,y]
    • It could be many other things
      • Discussion: Such as?
  • Discussion:
    • Let's name a game with a space that has zero, one, two, three dimensions

  • Questions to answer about your game space
    • Is the space of this game discrete or continuous?
    • How many dimensions does it have? 
    • What are the boundaries of this space?
    • Are there sub-spaces, and how are they connected?
    • What are the ways to abstractly model this space? What is the coordinate system?

  • Product Teams
    • Discuss and tell us your answers to the above questions. Start keeping notes. 
    • You will be handing this in.

Brandeis Game Brainstorm:


    • Let's think about the Brandeis campus as a game space
    • We are going to try and invent it right here and now
    • Let's answer the questions above and see how we do

Mechanic #2: Objects, Attributes, States

  • What are the objects?
    • I think of them as 'actors' in the game
    • e.g. characters, props, tokens, scoreboards, etc.
    • Discussion:
      • Is the game space itself an actor? 
      • Are all actors tied to a single coordinate in the game space?
      • By this definition, Is the player an actor?
  • What are the attributes?
    • Properties of an object that may change over time
    • Note that different kinds of properties have different rules of when and how they can be changed
    • Attributes can be:
      • Static: e.g. color, size, name
      • Dynamic: e.g. velocity, direction, position
    • Player information
      • Some, but not all properties need to be communicated to the player
      • In fact, some are better hidden (discussion: example of a property that is better hidden?)
    • Rule of thumb: If two things look the same, they should behave the same
    • If permitted state changes are complex, useful to think of a finite state machine
      • Discussion: What's a finite state machine?
      • Again a FSM is an abstraction to think about
      • Drawing the diagram will help understand all the cases you have to deal with
      • It's not necessarily so that you will need a piece of code called a "Finite State Machine"
      • Exercise: Draw a FSM for a character in your game
    • Multiple players
      • Some or all of the state is secret to some or all the players
      • When "playing the computer"
        • Is the virtual opponent represented
        • In the same way as the other players?
      • Clearly "the computer" by definition knows everything
        • Does it know the future? The outcome of dice rolls for example?
Questions to answer about Objects, Attributes and States
  • What are the objects in my game and what are their attributes?
  • What are all the possible states for each attribute, and how are state changes triggered?
  • What state is known by the game only and what is known by all the players? And what is known only by some players?
  • Would changing who knows what state improve the game in any way?
  • Product Teams
    • Discuss and tell us your answers to the above questions. Start keeping notes. 
Brandeis Game Brainstorm, continued
  • Let's think up some What are the players? Who are the opponents? Are there teams? What are properties of players and teams
  • Are buildings represented?
  • Are hills represented?
  • Are classrooms represented?
  • Answer the questions above.

Game Mechanic #3: Actions

  • Are the "verbs". What a player can "do"
  • Non-players sometimes also may have actions.
    • A door can "swing open". Does that make it a character?
  • Two kinds of actions, an important distinction
    • Operative Actions. The atomic actions without thinking of purpose or intent.
      • E.g. In checkers I can:
        • move a piece forward
        • move a piece backwards (Kings only)
        • jump over a piece (and take it)
    • Resultant Actions. The second order effects of the action. The tactical purpose or result, e.g.
      • E.g. in checkers
        • move a piece to protect another piece of mine from capture
        • or to force the opponent into an unwanted junp
        • or to allow a piece to be captured so that I can King another piece
  • Emergent Gameplay
    • Means "gameplay which emphasizes resultant actions"
    • Look at ratio of operative actions / resultant actions
    • A key to an interesting and fun game
    • Patterns and developments which are not literally part of the rules
    • Often discovered by players
    •  Become part of the culture or narrative of the game
  • Compare Go to Chess
    • Operative Actions in Go are fewer and simpler
    • Yet there are many very subtle and important Resultant Actions
  • Discussion:
    • What are the operative actions and resultant actions in tic-tac-toe?
    • Innovating in games can mean adding new operative actions and subjects that they can operate on
    • Thereby allowing gameplay and experience to create interesting emergent gameplay
Questions to ask about Actions
  • What are the actions in my game? What are some 'resultant' actions?
  • Are there any more resultant actions which would be cool? And if so, how do I change the game to make those happen?
  • How do the actions get triggered?
Product Teams
  • Discuss and tell us your answers to the above questions. Start keeping notes. 
Brandeis Game Brainstorm, continued
  • Ideas for actions that will be interesting in the Brandeis game
  • Answer the questions above.
  • How will the player control the objects? 
  • Be creative. Think of each type of object we came up with above.

    Mechanic #4: Rules

    • Rules are the glue that connect all the preceding mechanics to each other: space, objects, actions
    • Note: unlike in the real world, in a computer game, the computer 'enforces' the rules
      • Discussion: Would it be possible and fun to have a game where the computer did not enforce the rule? Would it be a rule then?
    • Most fundamental rule: What is the object of this game? (How to "Win"?)
      • Sometimes there's not just one object, but a sequence of sub-objects
      • Some games are too long to ever actually "win" so you need to have sub-goals
      • Some games become uninteresting once you meet the goal once
      • There also can be a series of goals but they have to be related to each other
    • Goal of the game needs to be:
      • Concrete (easy to state and understand)
      • Achievable
      • Rewarding ("fun to achieve")

    • Discussion:
      • What is the goal of the game of Chess?
      • What is the goal of the game of Go?
    Questions to ask about Rules
    • What is the ultimate goal of this game and is the goal clear to players?
    • Are there a series of goals and how do the players learn that?
    • Are the different goals related to each other in a meaningful way?
    • Are my goals concrete, achievable and rewarding?
    • Do I have a good balance between short term and long term goals?
    • Does my game have modes or levels and are the rules any different?
    • Who enforces the rules?
    • Are the rules easy to understand?

    • Product Teams
      • What is the goal of your game/product? (concrete and achievable)
      • Should there be a series of goals, are there levels?
      • Discuss and tell us your answers to the above questions. Start keeping notes
    Brandeis Game Brainstorm, continued
    • Here are some ideas for the goal
      • Are they individual or aggregated?
      • It might be for me (the player) to graduate, get tenure, get a job, become president of the university
      • Or it might be for me to be the most popular student
    • Let's think up some rules that will make this game fun

    Mechanic #5: Skill

    • How is this a game mechanic? Mechanic = Game - Aesthetics - Technology - Story
    • This is a good moment to remember that all these are just a framework to understanding, not a set of hard and fast categories
    • Some of the game mechanics are supplied by the actions and abilities of the player
    • Real Skills
      • Physical - dexterity, quickness, accuracy, eye-hand coordination
      • Mental - mathematics, statistics, memory, imagination, knowledge
      • Social - persuasion, intimidation, deviousness
    • Vs. Virtual Skills
      • Assigned by the game
      • May or may not correspond to a real game, or even exist in the real world
      • Often "earned"
    • Product teams
      • In what way does your product/game require skill, and what kind of skill is it?
      • Do you have Virtual Skills or Real Skills?
      • Discuss and tell us your answers to the above questions. Start keeping notes
    Brandeis Game Brainstorm, continued
    • Let's think up the skills that help someone win this game?
      • Knowledge of the physical campus, people, history of Brandeis?
      • Understanding the social rules and dynamics at Brandeis or in College in general?
      • Other physical skills?
      • What about Virtual Skills?
        • Is the player's 'year' a skill? Can you gain or lose a year?

    Mechanic #6 - Chance

    • Not supplied by player nor by the game
    • Design around chance requires a good handle on probabilities and statistics 
    • Need to take care to make the game stay fun. Beware if some event something is too likely or too unlikely
    • Product Teams
      • What is the role of chance in your product/game if any?
    Brandeis Game Brainstorm, continued
    • Let's think up a role for chance in the Brandeis game

    Afternoon Schedule

    Videos from Class