Sunday, October 18, 2009

Professionalism

The first thing everyone needs to understand is that game development is a business. Whether you're a gamer, a developer, publisher, independent, corporate or even look down upon video games and assumes video games are "kid toys". At the end of the day there are people who earn a paycheck by working in this young interactive entertainment medium. Like any business, what motivates the individual still vary. Some are real passionate experts and artists in their fields, others do it for the all mighty buck and others think it's an easy profession that's all fun and games.

As for me, I do what I do because I love video games. I grew up on them, they've always been my favorite hobby and I've been lucky enough to be in the industry and learn how to make games. So reading articles about how others stay motivated interest the inner sociologist in me. For me, motivation is the easy part. The hard part is actually making the best product possible given time and resources.

The first pillar in the fundamental truths of game development is professionalism. For game development the two things I feel like its most important to understand is:
  1. It takes a great team to make great games. 
  2. Not every decision is yours to make, so make every decision the best it can be.
I've worked for studios that due to either the corporate culture or individual personalities cause a particular discipline of Art, Design or Programming have more decision making capability than the other disciplines, and the product can suffer in end quality. It sounds stupid but let me just say it, the different departments wouldn't exist if they weren't needed to make the game. Each discipline has different responsibilities and naturally views and thinks about game development differently.

Thus let the experts be experts. You definitely want to give them your feedback, just like you should seek theirs, but don't tell others what to do, rather make suggestions or ask questions that help focus them to what needs to be addressed. Give the high vision and let them figure out how best to implement. Continue to work with them throughout implementation to continue to communicate the vision and save potential rework from misinterpretation.

Games are very complex and require so much creativity as well as logical thought and interaction between a group of people all trying to create lightning in a bottle. Every decision made affects the tasks, schedules and thus lives of every discipline. Decisions made aren't always by the professionals in their respective disciplines. For example, not every game design decision was made by a designer, but it's just as easily due to a producer, programmer or the marketing department that decided upon game play or how the feature functions or is tuned.

OK, so I now understand not every decision is mine to make. Now what? How does this shape me into a better professional? For me this shapes two things, how I go about my decision making and how I react to a decision I don't agree with. Any decision that is mine to make, I try to make it be as well thought out or informed decision it can be.

Well thought out in the sense that I understand the ramifications and how the decision will affect all other aspects of game play balance. System tuning changes the difficulty and thus layout for level design. Level design progression and flow changes how systems should tune individual enemies or abilities. Changing the speed or damage of one attack changes the difficulty of enemies I face, they then become too hard or easy and enemy placement or spawn behavior need adjustment. AI or enemy behavior may now need adjusting or tuning. Etc... Obviously you can't predict all ramifications, but that doesn't mean you shouldn't be thinking things through and not simply blindly guessing and hoping we accidentally get it right through iteration. Iteration is necessary for tuning and finding the magical fun factor, but how efficiently you iterate by being smart about what your iterating makes all the difference. You don't want to waste hundreds of man hours of the team on an idea that if thought out to its logical conclusion wouldn't mesh with the vision of the game.

How I try to make as informed decision as I can make involves talking to the team cross disciplines. Usually in casual "water cooler" type chats where I'll throw out my ideas, or direction I'm taking. This usually causes questions to be asked and acts as a safety net to make sure I've addressed all the design ramifications or what still needs to be figured out and thus provides further direction on the design.

By discussing implementation and getting estimates from the various groups allows them to start thinking about the implementation or sparks their imagination and further enhances the vision. Also it helps getting verbal buy in from those who will have to actually do the work to make it all happen. They are exposed to the idea early on, allowing them time to contribute and further refine the design, so that when it does indeed become the direction it's not simple one guys idea, but rather a refined vision that the team believes in. They aren't simply handed down orders and are involved in the process, helping morale and motivation.

Despite giving feedback, arguments and examples some decisions will still get made that you don't agree with. I'm well past the point where I care whose ideas gets chosen, I simply want what will make the best product possible within resource constraints. So instead of pouting, complaining, providing sub par quality of work due to not fully agreeing with a design or development decision, I instead use the same passion and thought into making the decision the best it can be. Whatever arguments I gave as to why the direction isn't feasible or doesn't work with existing design, then becomes my focus into not only making it work but hopefully to become one of the games strengths. Basically not being a defeatist and making the best lemonade I can with the lemons I'm given is my mind set.

The first pillar of the fundamental truths of game development is professionalism. From understanding the team environment and remaining flexible during the decision making process professionalism goes a long way in how the team perceives and reacts to official designs and have allowed me to enjoy the path my career has taken. I've worked with some amazing talent and I thank you all for making me a better game developer.

2 comments:

  1. People who read your article on professionalism in the games industry will either applaud you for the latest attempt to bring operational common sense back to the forefront . . . or boo you (just in time for Halloween) for the latest attempt to encapsulate more people within an unwanted product development infrastructure.

    You have my humble vote for choice number one. Bravo, Mark.

    Best Regards,

    Eric M. Scharf
    Scharf Creative Services
    http://www.emscharf.com/blogosphere/scs_blogosphere.htm

    ReplyDelete
  2. Thanks Eric I loved how you phrased "operational common sense" as that is literally what I'm trying to ingrain into developers.

    ReplyDelete