Thursday, March 19, 2009

How To Make a Successful Game?


There are two conditions for a successful game
  • basic, implicit requirement: the game hits the shelves
  • the game is fun enough for enough people to buy it and make it profitable
The fun part is, in term, defined by quality and gameplay:
  • Few bugs, no showstoppers
  • Smooth game experience, accessibility, gradual learning curve, no unnecessary frustration
  • Minimum workload for the player
  • High quality audio and render, beautiful landscapes, credible animations and behaviors
  • Interesting setting, meaning, learning value
  • And many more
There are also many more variables, conditions and restriction like, budgets, sales forecast, tough competition, marketing, distribution, etc... How do we achieve all that? It may seem impossible at first but some people just do it. For a successful game to be produced, a series of skills and roles must be defined and assumed. It's not only a one man's show as it was in the early 80's but rather a team effort, based on creativity, technical skills, organizational skills, artistic vision, communication and, above all, passion for the job and strive for self improvement.

The game core team usually consists of:
  • a producer (project manager)
  • an associate producer
  • an art director (gives the unity in terms of looks and the overall artistic direction of the game)
  • a creative director (handles the core gameplay mechanics, responsible with the fun element)
  • a lead game designer (manages the game design team)
  • a lead game programmer (manages the game programming team)
  • graphic team leader (manages the graphic team)
These people are responsible for the project, each with his own role and expertise. It's not only them, it's actually the whole team but these guys are generally accountable. They must be, by default, highly motivated and have full faith in project. These guys should explain to the team the means and the purpose of what they do, be convincing and also be a role model for each and every other team member. They are the leaders, they provide the vision and the organizational framework for the project and so, they are not allowed to disrupt the team in any way, they must be coherent in their actions and coordinate among themselves accordingly and must have the talent to ignite passion in the rest. A negative behavior is not tolerated in front of the men. They must understand not only the fun element of a game but also the business requirements and adapt their actions accordingly.

Foot note:

There are two main things that must be taken into account when building a game:
  • complete it and mitigate risk
  • strive for new, for fun
These must be kept in balance for the project to succeed. The first part is mandatory and is more traditional: "define tasks, deadlines, complete them in time" the other part comes from the team (core or not) and their passion. If the passion is not there, the game will not be a success even if it is completed in time and has only a few bugs. (actually, if the passion is not there, the game will also not be completed in time because it's just too much work to be done and too many challenges on the way). So passion is the key ingredient in this business.

Sunday, March 15, 2009

The Pragmatic Programmer - An Exceptional Book


A must-read for any programmer and not only. Doesn't cover a specific technology or programming language but rather focuses on the mindset a true, pragmatic, effective programmer should have. Short, easy to understand, full of clear, concise explanations, tips and quotes.

http://www.pragprog.com/the-pragmatic-programmer

Saturday, March 7, 2009

Quote - Bugs And The Agile Way

"1. Teams should do whatever they can to fix bugs that are found during the sprint in which they're found. The definition of "Done" means the feature is coded to standards, unit tested, functionally tested, documented and all known bugs are resolved during the sprint. If you postpone bugs, what seems trivial at first will mean significant build up of technical debt which you will need to pay for downstream."

Full article:

http://agilesoftwaredevelopment.com/blog/jackmilunsky/accounting-bugs-agile-way-2

Leader Role, Manager Position In the Team