Gamasutra: The Art & Business of Making Gamesspacer
Building a Mindset for Rapid Iteration Part 1: The Problem
View All     RSS
September 25, 2017
arrowPress Releases
September 25, 2017
Games Press
View All     RSS






If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

Building a Mindset for Rapid Iteration Part 1: The Problem


May 1, 2008 Article Start Page 1 of 3 Next
 

[In this analytical article, EA veteran and Emergent VP Gregory looks at the problems of iterating game concepts and assets quickly with a large development team, suggesting possible roadblocks and solutions.]

Why Focus on Rapid Iteration?

You often hear from people who build games for a living that it's unlike building any other piece of software. Why is this?

Building interactive fun is a very different problem than building any other type of software, because "fun" can't be planned: you can't schedule a project with waterfall, execute the schedule perfectly, and expect to get a fun game 100% of the time at the end.

There are usually lots of go-backs and retries as you bring together elements of the game -- the code, content, scripts, etc. -- and see if it's entertaining. In the worst cases, teams don't realize that it's not a fun game until it's so late, they can't fix it.

In the best cases, teams prototype their game in "sketch" form during pre-production, and find the fun before they spend the bulk of their time in production filling in content and polishing the gameplay.

So, how do you align your team with the best case scenario? It's a generally accepted practice in the industry that quickly iterating and trying different things is the best way to make incremental progress towards the final goal of a fun game. It's less risky, and you find the core of your game (look, mechanic, etc.) much more quickly.

So What's the Problem? Why Can't I Rapidly Iterate?

Developers are now dealing with more -- more of everything. For instance, these elements have all increased:

  • People on a game team
  • Specialization of talent because of complexity of technology or tools
  • People necessary to iterate on a single game element
  • Number of team members distributed across multiple geographies
  • Amount of time it takes to compile and link code due to increased size of code
  • Amount of custom tool code
  • Amount of content needed to satisfy today's players
  • Complexity of content creation and transformation
  • Number of tools to create and transform content
  • Amount of time it takes to transform content
  • Number of platforms simultaneously released from the same team (PC, Xbox 360, PS3, Wii, etc.)
  • Infrastructure (code & content repositories, automated build farms, automated test farms, metrics & analysis web sites, offsite development infrastructure [VPN, proxy servers], game and tool build distribution, etc.)
  • Rate of change of content, code, tools, pipeline, infrastructure, etc.
  • Build stability problems because of all of the factors stated above
  • Dollars at stake when a mistake happens that hurts productivity due to number of people idle and unable to work
  • Management focus on risk because of all the factors stated above

That last one (increased management focus on risk) has created a cyclic dependency in some of these items that have actually increased them even further, particularly infrastructure. Increased focus on risk brings with it the wish to control the chaos, and implement systems that provide increased visibility and predictability into that chaos.

Game team management usually doesn't have enough information to know where the problems are. Getting the information in place requires new systems, and hooks into existing systems, which increases the rate of change of code, the amount of code, and the number of systems to be maintained.


Article Start Page 1 of 3 Next

Related Jobs

Naughty Dog
Naughty Dog — Santa Monica, California, United States
[09.22.17]

Graphics Programmer (Game Team)
Insomniac Games
Insomniac Games — Burbank, California, United States
[09.22.17]

Mid to Sr Gameplay Programmer
Insomniac Games
Insomniac Games — Durham, North Carolina, United States
[09.22.17]

Mid to Sr Gameplay Programmer
Supergiant Games
Supergiant Games — San Francisco, California, United States
[09.22.17]

Platforms Engineer at Supergiant Games





Loading Comments

loader image