Game Design Process

By on December 2, 2010 10:50:29 PM from Elemental Forums Elemental Forums

Derek Paxton

Join Date 03/2003
+173


I hope that if you are here reading dev journals then you are curious about the game development process.  There are a lot of ways to manage a game, so I don't mean this to be the bible of game development.  Only a talk about my thoughts.

 

High Level Design

The first step to creating a new game or an expansion is to write a high level design.  My design for the expansion was about 30 pages (I tend to have problems summarizing).  The important part isn't that every detail is laid out in the high level design, but that all the systems that will be touched are included.  I don't need every spell, but I need the way the spell system works and the structure if it is being changed.

Good design work takes time.  It isn't something that's done in a weekend.  It's like writing a book.  You write it all out, then you go back and write it again, and again, and again.  Every detail is scrubbed.  Is this really needed?  Is there a way this can be more fun?  Is this going to require too much effort to implement?  And most importantly for an expansion, how will this integrate with the base game?

 

Stakeholders Meeting

Once the High Level Design is complete we have a meeting with the stakeholders and go through the concept, focus and design of the game.  They can see what needs to be done to create it, get an estimate for how much time and money is required and talk about systems they want to add or remove.  For the expansion it was the Executive Producer (Brad), the associate producer, the Art Director, and the former producer.  The executive producer is the most critical member of the meeting as he has to pay for it.

In most gaming companies this would be a meeting with a publisher.  There would be contracts around the deliverables, milestones and budget.  The best thing about working for a self-publishing independently owned company is that there is only one guy that needs to approve the design, and he's Elementals biggest fan.  (did I mention that my job is awesome)

The trick to a successful meeting is to make sure everyone has been introduced to the topics before it starts.  That way I know what everyone thinks about each part, where I can expect to get push back and that everyone is generally onboard before we start.  I also have the opportunity to adjust the design to their good ideas and any issues they find, rather than being surprised with them in the meeting.  I don't like surprises.

For this expansion the meeting went well.  The hardest part is balancing features and the schedule.  There are a million things we can do and there is no lack of good ideas.  But choosing the right few is the hard part.  By the end of the meeting everyone knows what the expansion is going to be and has a fairly good idea on the schedule and budget.  We have all agreed to the design, there won't be any major changes.

 

Detailed Design

The next step is to take that high level design and turn it into something that programmers and artists can pull tasks out of.  Every spell needs to be detailed, exactly what it does and how it works.  Every place we need a new model, a new animation, a new texture or a new painting need to be specified.

Implementation can start as the detailed design is being written as long as the high level design was very through and it truly is locked.  If your high level design is just a concept doc then there is going to be a lot of time and confusion when people try to implement on ideas that aren't ready.  But assuming a through high level design programmers and artists can get started on the framework for the systems while designers spec out the unfinished parts.

Its almost impossible to have too much detail at this stage.  The more ambiguity, the more you rely on the programmers to be creative.  Stardock has amazingly talented programmers who know the game and are accustomed to designing as they work.  But their focus and creativity should be on implementing clean systems, on making the code as efficient and bug free as possible.  Not on trying to figure out what I meant in some obscure sentence about tactical combat.  Ambiguity also causes them to misinterpet and not implement the system I've imagined which will come back as bugs later on.

The detailed design is not a one man job.  Those that are interested are invited to sit down and talk about various systems.  Some team members have a lot of passion and ideas around city sieges, or spell ideas or quests and they should be invited to brainstorming sessions to pitch and share ideas.  Review meetings are also scheduled to go over the design and get lots of input throughout (especially if you are like me and the newest member of the team).  Everyone on the games team is a member of the design team.

 

The Schedule

In conjunction with the detailed design the schedule can be built.  This is an estimate of all the tasks that are needed to create the game assigned out to each team member.  Once the schedule is complete a team member should know what they are expected to do throughout the project.  Vacations are entered on the schedule, tasks are lined up so that if one system requires another the required system is completed first.

The schedule is what breaks game developers.  There is never enough time.  So much we would love to do, but the weeks slip by so quickly.

The nice thing about a good schedule is it allows you to see how you are performing.  Are you a week ahead or behind?  Would adding another artist make life easier for everyone?  What sort of artist do you need most?  Can you afford to have a team member spend a week working on another project?

 

Implementation

I enjoy design, but this is my favorite part.  This is when I get to see those things we talked about coming to life.  Every day bring some new tweak or detail to play with.  Given a balanced schedule this is the reason we decide to make games.  Those people that think that programming is programming, that making a game is really no different than making a business application have never created a spell that damages all enemies and causes those killed by it to rise as demons under your control.  It's cool stuff.

 

Iteration

The first test build allows you to try the game out and see if it's working.  2/3 of development should be spent implementing, and 1/3 for iteration.  The reason so much time is allocated for iteration is that some ideas just aren't going to work and have to be changed.  2 additional weeks of implementation may allow you to add more stuff, but 2 more weeks of iteration improves the quality of your game.  Given the choice, pick iteration.

It's also important to remember that iteration doesn't mean much if all the systems aren't implemented yet.  It's too easy to blame pacing or game problems on systems that aren't implemented.  To be of any real use a beta must be full featured.

Gaming companies have differing opinions on Alpha/Beta builds.  Some release beta builds to a private community months before and play test for a while before issuing a public beta, which is then more about balance.  Stardock releases quickly.  This is good and bad.

Some players may comment that our first priority should be stability, that is tough to do.  Anytime you make significant changes you introduce bugs.  Let me give one example, multi-threaded AI.  There is a reason most games don't use multithreading.  It's difficult to code, it's difficult to support and it introduces issues.  With multithreading the computer is doing more than one thing at a time independently.  So while you are attacking a city the AI may be going through and planning its production.  If the AI builds a list of cities to check and goes through city 1, 2, 3, 4... and if between the time it built the list of cities and got to city 4 you destroyed city 4 the game will crash.  The AI tries to query city 4, there is no city 4, boom.

The good point of AI threading is that it dramatically speeds up the game.  Human players spend a lot of time planning their turn, lots of time that the AI could be doing their actions.  But in a single threaded world the AI waits and that 30 seconds that would have happened while you were moving has to happen while you wait.  It also allows us to make the AI smarter.  In a single threaded world you wouldn't want to add an AI function that causes the AI to spend an extra 5 seconds a turn.  But with multithreading the players don't even notice the difference.  If a player spends 90 seconds on his turn, that's 90 seconds that is open to the AI.

Understanding that we want multithreaded AI, but we know that it will introduce issues we could either keep it internal for a few weeks and allow the QA guys to beat on it.  Or after verifying some base stability (it should be playable, but not perfect) we can release it and allow the community to help us find issues, report on balance issue and offer feedback.  Of course we do this with the huge disclaimer that it is a beta.  But we do it because the community asks for it, it's a community option (in that you have the choice to play betas or not) and frankly its very helpful to us.  We know it can be frustrating.  In fact I didn't play the Elemental beta at all because I was so looking forward to it that I didn't want to dirty my impression of it by playing flawed versions.

 

Lockdown

At some point before release, at the very least a week, all changes stop.  Only bug fixes are allowed and those are usually by approval only.  Code checkins may have to go through the most experienced programmers and even good ideas are rejected.  Now is the time when stability becomes king and every precaution is taken to make sure that some late game defect isn't introduced that causes issues.

Lockdown is an act of willpower.  It's tough because there is always things that need to be done.  There are always late ideas that would make something better.  And a lot of anticipation about the upcoming release that makes people want to make everything perfect, just like a bride fiddling with her dress before the wedding or some other more masculine analogy.  But the time for fiddling is past.

The biggest misconception about game development is that the game has been relatively consistent throughout.  Many people imagine that the set and we add things to it throughout development.  Like a cake with frosting (or some other more manually analogy).  So they are surprised when things don't work.  That the developers should have had the entire process to work those things out.  But the only real time to see the game in its final form is the lockdown time.

I see it right now with patches.  The game changes every day, sometimes the game changes every few minutes.  Players may update to a new patch and wonder why after playing for an hour they run across an issue that the developer didn't catch.  Hasn't the developer had that patch for weeks/months.  Why didn't they see it?  Mostly that's because that issue got in just before lockdown (assuming patches have lockdown at all).

 

Release

The bugs have been slain, the schedule bested, though at times weak and weary we have overcome and produced a game.  XP is handed out and we head to the pub where the bards sing of our victory's.  Or the bard's give us a bad metacritic score, those crazy bards.

But release is only a new beginning, especially at Stardock.  There is support left to do, there is a ton of community feedback and ideas that are accepted and adopted.  The beta process gives a lot of that but release is the real opportunity to see where we stand.

I don't know if the time we spend posting and talking with the community is the best use of our time (as compared to making the game).  But its undeniable that it effects the game.  And although it takes a lot of time the game is better for it in the end.  It is in a very real sense a community effort and it exists at every level at Stardock.  From Brad asking if I read one post or another, to the team members talking directly to community members or asking about community feedback in our meetings.

 

 

Locked Post 44 Replies +6 Karma
Search this post
Subscription Options


Reason for Karma (Optional)
Successfully updated karma reason!
Martok
Melamine
Istari
mlapierre
Wizard1200
Dairuka
December 4, 2010 10:54:50 AM from Elemental Forums Elemental Forums

Much appreciated, thanks for the post! 

Reason for Karma (Optional)
Successfully updated karma reason!
December 4, 2010 1:05:23 PM from Elemental Forums Elemental Forums

Quoting kenata,
... I think we can all agree that following elemental these past few months has been a fun and wild ride.

No.

Reason for Karma (Optional)
Successfully updated karma reason!
December 4, 2010 5:05:46 PM from Elemental Forums Elemental Forums

Thank you very much for posting this. It was a good and informative read.

Quoting ,
Iteration

The first test build allows you to try the game out and see if it's working.  2/3 of development should be spent implementing, and 1/3 for iteration.  The reason so much time is allocated for iteration is that some ideas just aren't going to work and have to be changed.  2 additional weeks of implementation may allow you to add more stuff, but 2 more weeks of iteration improves the quality of your game.  Given the choice, pick implementation. 

My only question is whether the above passage has a typo.  You meant, "Given the choice, pick iteration," right?

Reason for Karma (Optional)
Successfully updated karma reason!
December 5, 2010 5:36:48 AM from Elemental Forums Elemental Forums

Hm iteration happens after the development cycle finishes actually, so its first development then iteration.

Reason for Karma (Optional)
Successfully updated karma reason!
December 5, 2010 8:46:15 AM from Elemental Forums Elemental Forums

Nice journal!

 

I've read before that that's how it's done but this was a detailed way of saying it.

 

Looking forward to see what those big announcements are. And especially to what the highlvl goals in the expansion are.

Reason for Karma (Optional)
Successfully updated karma reason!
December 5, 2010 12:23:50 PM from Elemental Forums Elemental Forums

An interesting and valued read Derek.  TY

So how concrete is the first expansions design?  Do we still have time for feature input?  How much time?  Can you share a barebones version of the design doc to help marshal our collective creativity?  Can you give us a range of what sorts of things are potentually possible for expansion #1 vs what must wait till #2+?

Reason for Karma (Optional)
Successfully updated karma reason!
December 5, 2010 10:11:49 PM from Elemental Forums Elemental Forums

As much as I respect the developers at Stardock for what they are trying to do, the army of fanboys on this site that lavish praise and adoration upon Stardock at every update they post is perhaps one reason this game is a disaster and months on continues to suck (being honest here). When you have an army of "yes men" on these forums that cannot constructively criticise anything through their limited narrow minded bias you end up with big problems when trying to gathering objective feedback for trying to build a product.

Personally I don't understand why the developers have request so many ideas for basic gameplay and features. I know people like to be involved with development but all the great old classic strategy games were made in the era before the internet and public discussion forums. They did it then, why can't they do it now. I'm not talking here about Beta feedback and bug testing (that is fine) I just don't understand why the developers can't build the game they promised us (MoM successor anyone???) and we paid for. You want to hire someone who can design a game, my advice hire Steve Barcia. And there is nothing all that special about having a CEO that communicates with the public. Sure its good but Blizzard also has quite an active public relations team engaging with the World of Warcraft community.

Reason for Karma (Optional)
Successfully updated karma reason!
December 5, 2010 10:22:25 PM from Elemental Forums Elemental Forums

You are 10% right. Tha t is not enough to matter.

Reason for Karma (Optional)
Successfully updated karma reason!
December 5, 2010 11:11:38 PM from Elemental Forums Elemental Forums

Nice of you to share your opinion Redaxe.  I got one to.  It varies from yours.  Though for whatever reason, I don't find the need to characterize you in the way you have characterized others.  You think the game sucks.  I have found enjoyment with it.  You call it a disaster.  I see it as an emerging success story of product support done well.  You don't see the value in Stardocks accessibility.  I do.  I think Derek Paxton is ideal in his role (and with all things considered was a brilliant move).  You suggest that Steve Barcia woulda been better. You this, me that.  Fine.  But why the condescending tone with your pov? 

I don't think you have spent much time here if you think it all about lavishing praise.  It is well portrayed here that the game is in need of significant overhaul.  But the community has largely moved past the beating of a dead horse stage. Mistakes have been admitted, concerns addressed, and a plan of action has been presented and is being followed.  This calls for a different tone.  Think constructive vs destructive.  There is ample discussion of new features that players don't like, or would like to see improved.  When we like a new feature would you have us remain silent?  When we post appreciation for timely and persistent updates, are we somehow out of line?  When we say we enjoy the reading of these dev journals, are we being mindless fanboys?  I don't see the problem with these things.  Though I do see the worth.  I also see the threat this poses to other companies as the paradigme of openess and proper product support grows evermore popular among consumers. 

Reason for Karma (Optional)
Successfully updated karma reason!
December 6, 2010 12:07:07 AM from Elemental Forums Elemental Forums

Quoting WhiteElk,
<snip> Can you share a barebones version of the design doc to help marshal our collective creativity?  <snip>

 

Egads.  Much as I'd personally love to see this, if you value your sanity - don't.  Things you're planning on that don't pan out will have been assumed by some to be concrete promises simply by virtue of having been made known.  Just imagine it: 'I can't believe that you cut Foozle X!  How could you!?!?  This is the final proof I needed to furiously, self-righteously, and savagely denounce you as a [terrible|lying|arrogant] [person|company|ethnic group|fraud] and I would like to personally come down there and [do something unspeakable]!  This has clearly ruined my life!'

 

Please no.

 

But then, you had probably already figured that out.  Also, while this post exaggerates, I probably didn't exaggerate by as much as I'd like to imagine

Reason for Karma (Optional)
Successfully updated karma reason!
December 6, 2010 12:24:40 AM from Elemental Forums Elemental Forums

I see wisdom in your post tanafres and agree to a point.  But by barebones I mean something which gives us some clue as to what aspects of the game are to be featured and when.  Such as.. will Dynasty be largely delayed until expansion 2; will improved Diplomacy be featured in xp1 etc.  It would be helpful to know the ballpark boundries before taking our turn at bat.  The devs do read what we write, so I'd like to narrow down the sharing of my thoughts to that which is most relevant. 

Reason for Karma (Optional)
Successfully updated karma reason!
December 6, 2010 12:26:54 AM from Elemental Forums Elemental Forums

Quoting WhiteElk,
I see wisdom in your post tanafres and agree to a point.  But by barebones I mean something which gives us some clue as to what aspects of the game are to be featured and when.  Such as.. will Dynasty be largely delayed until expansion 2; will improved Diplomacy be featured in xp1 etc.  It would be helpful to know the ballpark boundries before taking our turn at bat. 

 

Ah. Well, that's a good idea, then

Reason for Karma (Optional)
Successfully updated karma reason!
December 6, 2010 6:33:53 PM from Elemental Forums Elemental Forums

Quoting onomastikon,

My only hope/concern is that you handle idiosyncracies of Stardock beta scheduling and iteration with a LOT more transparency this time around.
 

 

Transparency isn't just enough. It would be nice if they actually gave more weight to beta tester opinion that they repeatedly disregarded when they didn't like what was being said, i.e. the disastrous launch and others they consciously ignored negative feedback on.

Reason for Karma (Optional)
Successfully updated karma reason!
December 7, 2010 12:57:41 AM from Elemental Forums Elemental Forums

Quoting NaytchSG,
I can feel the potential of the game in it's current state and believe it can only get better.  I am not a modder myself, but I suspect that this community is bursting with great ideas that will enable each gamer to mod the final game into "their" ultimate 4x fantasy game.  Once you achieve lockdown and release, I will be checking the mods page frequently for all of the great community generated content that has already been discussed here on the boards and in the design a spell contest.  

Looking forward to the "design a random encounter contest", "neat loot drop contest",  "coolest goodie hut"  etc!  

Thanks for the tour of the sausage factory and the whole team being willing to pull back the curtain and share.

 Edit: And thanks for the new beta!  (5 minutes after my initial reply.)


 

 

Hmm, just don't fall into a "let them eat mods" trap. I hear it is easy to do.

Anyways, I no longer think modability trumps being a good game. If being a good game is modable, then so be it ... but I think that putting faith in mods is a dangerous game. Think of your favorite game, and your least favorite game. How much more time would you try to mod your favorite game than your least favorite game? How much does modability account for your answer?

Anyways, I think this game has a lot of potential ... and I'd like to see a good game. Maybe a patch, possibly in an expansion, probably in a sequel. Either way, I'd love to see the finished product of 1.1 or 1.2 ... namely the mechanical implementation of all these "ideas"; round 2.

Reason for Karma (Optional)
Successfully updated karma reason!
December 7, 2010 9:43:05 PM from Elemental Forums Elemental Forums

 

I find most software programmers have the most difficult time with the Lockdown part.
Just a change here and a bell there.
At least the ones I have worked with.
Good luck with all the changes hoping to see a shiny gem in the near future.

 

Lee

 

Reason for Karma (Optional)
Successfully updated karma reason!
December 8, 2010 4:29:34 PM from Elemental Forums Elemental Forums

I think the problem with a MOM game is that everybody want to play their own way and think that it is best to play it their way. But the problem is that almost none of these people have any game design experience so they do not know the impact on game play and if it is going to actually be fun or not. You cannot also convince them that their view of the game is wrong because their lack of design experience prevent from understanding the cause and effect of their rules.

So in the end, everybody wants and different game, and it's the majority who wants the features that wins or the designer's Veto. (For example, I hate character D&D stats, but a majority of people likes it, so the feature gets accepted). This is one of the reason why FreeCiv has the concept of rule set where there is a 100+ variables that can be altered by the players to fit their gaming taste. It's probably what will happen with elemental. Everybody will tweak their game to their taste and try convincing others than their ruleset is better than theirs. But in the end, everybody is right and everybody is wrong.

So I actually don't know what could be the best solution. Make the game more open and throw it to chaos. Make the game more restricted to controls the players toward a certain direction? It's very hard to tell. ANother problem is openning the game too wide is to have a game that does too much. You do not want a life simulator like "the sims". You eventually need to cross a line and say, we do not go further.

 

 

Reason for Karma (Optional)
Successfully updated karma reason!
December 8, 2010 5:53:34 PM from Elemental Forums Elemental Forums

Quoting larienna,
I think the problem with a MOM game is that everybody want to play their own way and think that it is best to play it their way. But the problem is that almost none of these people have any game design experience so they do not know the impact on game play and if it is going to actually be fun or not. You cannot also convince them that their view of the game is wrong because their lack of design experience prevent from understanding the cause and effect of their rules.

So in the end, everybody wants and different game, and it's the majority who wants the features that wins or the designer's Veto. (For example, I hate character D&D stats, but a majority of people likes it, so the feature gets accepted). This is one of the reason why FreeCiv has the concept of rule set where there is a 100+ variables that can be altered by the players to fit their gaming taste. It's probably what will happen with elemental. Everybody will tweak their game to their taste and try convincing others than their ruleset is better than theirs. But in the end, everybody is right and everybody is wrong.

So I actually don't know what could be the best solution. Make the game more open and throw it to chaos. Make the game more restricted to controls the players toward a certain direction? It's very hard to tell. ANother problem is openning the game too wide is to have a game that does too much. You do not want a life simulator like "the sims". You eventually need to cross a line and say, we do not go further.

 

 

On a related note, my weapons mod for 1.1 will fix this game beyond all comparison. If you aren't playing Sean's Mod, don't bother...

 

Reason for Karma (Optional)
Successfully updated karma reason!
December 8, 2010 9:33:09 PM from Elemental Forums Elemental Forums

[quote who="Redaxe" reply="32" id="2837242"]When you have an army of "yes men" on these forums that cannot constructively criticise anything through their limited narrow minded bias you end up with big problems when trying to gathering objective feedback for trying to build a product./quote]

Pot calling the kettle black?

Reason for Karma (Optional)
Successfully updated karma reason!
December 8, 2010 9:34:36 PM from Elemental Forums Elemental Forums

Quoting Redaxe,
When you have an army of "yes men" on these forums that cannot constructively criticise anything through their limited narrow minded bias you end up with big problems when trying to gathering objective feedback for trying to build a product.


Pot calling the kettle black?

Reason for Karma (Optional)
Successfully updated karma reason!
Stardock Forums v1.0.0.0    #108433  walnut3   Server Load Time: 00:00:00.0000407   Page Render Time: