My Message close
GAME JOBS
Latest Jobs
spacer View All     Post a Job     RSS spacer
 
May 24, 2013
 
DoubleDown Interactive
Software Game Developer
 
Autodesk, Inc
Senior Principal Engineer - 2D Engine
 
Kabam
Backend Game Engineer
 
Gameloft
Senior Programmer
 
LeapFrog
Game Designer
 
YAGER Development
Senior Game Systems Designer (f/m)
spacer
Blogs

  Prototyping Tips
by Alistair Doulin on 02/18/11 10:00:00 am   Expert Blogs   Featured Blogs
16 comments Share on Twitter Share on Facebook RSS
 
 
The following blog was, unless otherwise noted, independently written by a member of Gamasutra's game development community. The thoughts and opinions expressed here are not necessarily those of Gamasutra or its parent company.

Want to write your own blog post on Gamasutra? It's easy! Click here to get started. Your post could be featured on Gamasutra's home page, right alongside our award-winning articles and news stories.
 

[This is a repost from my blog, doolwind.com]

Since the release of Flick Buddies, I’ve been prototyping game ideas for our next game. The best of these prototypes we’re taking to GDC to show publishers. Today I’m sharing my list of tips for creating prototypes.

1. Set Your Goals

It’s important to decide exactly why you’re making the prototype, and what you hope to achieve. These goals show you where to focus your time while developing the prototype. For us it’s about testing gameplay mechanics and proving the core concept of the game. A secondary goal is having playable prototypes we can show potential publishers to quickly get across the feel of the game.

Without these goals, it’s difficult to know where your time is best spent. Is this about testing a mechanic on a particular platform or finding whether certain gameplay is fun? Could the game better be served by a pen and paper prototype first? It’s worth spending some time before you begin, deciding the best use of your resources.

2. Timeboxing

I always set a specific limit on how long I can afford to spend on the prototype. It’s easy to get carried away once I start and I can easily lose a lot more time than is necessary. Timeboxing forces me to focus on the most important elements of the prototype as I can’t do everything.

The actual length of time allocated depends entirely on your situation. I allocate 20 man hours per prototype which fits nicely into two work days for me. I find two days is the perfect length for completing the core elements while keeping time short so I am forced to focus.

3. Throw It Away

This is a tough one for some people, but I always recommend planning to throw the prototype away. This has a number of core benefits:

  1. Pragmatic – This stops me from doing any big design up front and forces me to do just enough to get the task done. It puts me in a completely different mindset while developing as I just want to get it done as quickly as possible.
  2. Lessons learned – When you begin work on the real game you will have previous experience in implementing the same features and solving the same problems. This will help improve the design of the game, both at a software and gameplay level. With some particularly complex problems (“wicked problems” according to McConnell) we must try solving the problem first, before we can fully understand it and find the optimal solution.
  3. Less Constraints – If you’re throwing away the prototype there’s less constraints on how you build the prototype. You can use whatever technology is best for prototyping, rather than the best for creating complete games. If you don’t follow company (or personal) guidelines during the development it’s less of an issue, as it’s a completely separate act.

Rather than laying the foundations for your game your doing the opposite, investigating the best way to build it so that when the time comes to lay the foundations you’re in a better position.

4. Key Gameplay Only

I only focus on what’s different about the current game. If I’m making a clone, then really, what’s the point in prototyping? I pick out the gameplay elements that make the game stand out and test those to make sure they work and tweak them. One of our prototypes is a new twist on the platformer genre. I spent as little time on the platformer elements and focussed on “the twist”.

Another way of looking at this is to test the highest risk elements of the game. Gameplay that will make or break the game is important to test as early as possible. Often I find some ideas simply don’t work, and it’s much better to find this out in the first few days of development.

5. Allow Tweaking

I expose as much as possible to my designers and even play testers so they can tweak the gameplay. The game will be in a very rough form and allowing rapid changes to core gameplay can help steer the game in the correct direction.

Another of our prototypes is an asynchronous strategy game. I’ve exposed the start and win conditions and all unit stats. Small changes to these completely change the way the game plays. This is perfect for a prototype as it lets anyone play with the values and suggest changes to the originals. This pushes the burden of experimenting, balancing and tweaking off the prototype team and onto anyone else that plays the game.

6. Divide The Game Up

If I’m working on a large game I’ll divide the different elements up into separate prototypes. For example in the “Total War” series I would make the strategic and battle maps completely different prototypes. This has a number of core benefits:

  1. Separate teams can work on each prototype if needed
  2. Different technology and tools can be used if helpful
  3. Each individual part of the game can be judged independently. Perhaps some areas are less fun than others? You can look at each part as its own game and easily see its strengths and weaknesses.

7. Run On Target Platform

I always find that to get the full user experience of a prototype it’s best to run on the target platform. This is core to the gameplay experience and for certain platforms will completely alter the reaction to the prototype.

The only time I don’t do this is when it will blow out the schedule to do so or if there are other constraints that make it impossible (e.g. platform owner restrictions). In this case I do my best to imitate the platform it will run on to get the user experience as close to the real platform as possible.

8. Have External Material

Some things are better completed outside of the prototype itself to save time. I often write tutorials and help screens as a series of screenshots of the game with instructions overlayed. This is far quicker to do in Photoshop than implementing within the prototype. While having screenshots as a tutorial isn’t as good a user experience it saves time that can be spent implementing other features of the prototype.

Another time saver is to walk people through the prototype personally, replacing the tutorial. I like to watch people playing the prototype as much as possible and explaining the game to them is the perfect way to open up a dialog about the prototype.

Conclusion

What are your tips for prototyping? How long do you like to spend and do you throw them away once finished?

 
 
Comments

Ronildson Palermo
profile image
Since I'm a designer, I prototype mostly using real life items. For that I use flexible rulers, dice, cards, miniature action figures, paper and pen. From TCG's to TPS's and it's nice because I can control each second of gameplay and tweak number attributes. But I'll be moving to digital prototyping very soon, so I deeply appreciate the tips, since I'm not a dedicated programmer.



Thanks!

Alistair Doulin
profile image
Thanks Ronildson. As a programmer I tend to head towards software prototypes earlier than I should however I find Pen and Paper prototypes to be a great way to rapidly test many ideas. The asynchronous strategy game I spoke of is actually a pseudo-board game and started out prototyping it using Settles of Catan and other random board games I had laying around.



What tools do you plan to use when you make the switch to digital prototyping?

Ronildson Palermo
profile image
Again, I'm no programmer, but I'm not a pin-head in coding. I know the theory, so the main problem is I haven't spent enough time getting to know the platform's perks, functions and possibilities. The How-To's of the language and the framework. Because of that, I tend to lean towards engines and easier to use frameworks. Unity, XNA and even UDK are my quickest bets. I myself have some experience in Unity3D, so I'll probably start there. I also have an horror project going for mobile platforms and PC, so XNA will probably be my second frontier after I get some solid scripting experience with Unity, which is mostly drag & drop.



Do you have any tips for me? I'd love some help with that!

Alistair Doulin
profile image
I highly recommend Unity. We use it for both prototypes and full games (which often makes it harder to throw away the prototype). It's great for designers as you can get things up and running with little to no code.



I've also used XNA, however Unity is an order of magnitude better for non-programmers and prototyping due to the editor. I've not used UDK much, however I'd say it's in a similar realm as Unity for rapid development.



Out of interest, do you have any recommendations for places to get non-digital prototypes. As I said, I generally butcher my existing board games however if there's anywhere you can recommend picking up cards, miniatures, etc that would be greatly appreciated.

Ronildson Palermo
profile image
Yeah, with the little experience I had with Unity, that's exactly what I thought of it. I had some contact with XNA, but it was practically null. I'll have to work my way through it, then.



As for your question, I slowly build my arsenal of miniatures characters, objects, items and use them in my prototypes. But, to be honest, I make do with whatever I have around myself at home or at the office, when I have the time (since I'm not really a designer at work). Because of that, rectangular pieces of paper become cards, 4/6/8/12/100-sided dice (along with some math) help me with probability and random number creation, a red Monopoly player marker transforms itself into the main character when placed onto the board, drawings onto pieces of paper put on small pedestals become enemies which chase the enemy. These enemies' AI are flowcharts written onto my notebook using a simple state machine format.



Entity movement is controlled using flexible rulers, like the one from tabletop games like Mechwarrior: Age of Destruction (now a dead game). Big paper sheets are drawn and colored onto and the environment's ready for use. And then the design is used as a ruleset and the game's tested: step-by-step, second-by-second. Character and Enemies' attributes like speed, strength and others are written into simple round sheets of paper which are then attached onto the physical obelisks' bottom. And they are even used as bases for the game's physical objects's balance on the board.



So, it's chaotic, just like you might've drawn from the picture I tried to illustrate with the description above. But it's chaos I can understand, chaos I'm totally comfortable in. And then the experience is documented and passed onto the programmer's hands.



Hope that was helpful in the least.

Alistair Doulin
profile image
Awesome advice. Thanks Ronildson. I'll particulalry look at the flexible rulers

Luis Guimaraes
profile image
@Ronildson



Most than any other artifice I often use Unity to prototype any core gameplay I come up with. In Unity, it's common to get something working in about a couple hours.



Nice you said you have a horror project, I actually have one with the core mechanic prototiped in Unity (but skiped to work in more casual games until I have time and money for it), I was going to use this one as exemple of another way you can prove some gameplay mechanic, just testing it in other games.



The same horror title is really about two players and my prototype in Unity wasn't giving the full feeling of the idea because I don't have a joystick, two players in just one mouse/keyboard set wasn't really working.



So I then set up Nazi Zombies in the XBox for 2 players and got some friends playing it, adding special rules that made Black Ops into my project. The slow zombies, the guns, the controls, overall setting and multiplayer support where all already there. I just needed to tapefix it into my game.



All the others are often Unity, with cubes and cillinders moving around.

Ronildson Palermo
profile image
Yes, that's precisely what I imagined using, hahaha. Circles, cubes and cillinders.



Yeah, this horror project is actually something big, my life project. I have all the story laid out, not fully written, but the critical path is there, the first 4 games are roughly designed, with 2 being pretty far into the land of completion.

Miles Aurbeck
profile image
2D-Boy has tips for playtesting prototypes like these.



http://2dboy.com/2007/11/12/rons-rules-for-playtesting/

Alistair Doulin
profile image
Awesome link. Thanks miles. I've not read that list before. I particularly like using virgin play testers. It's the best way to get a fresh look at your game

Vivien LeNeez
profile image
Nice post, would you mind if I translate it into french for my personal blog ? Of course I will make it clear that this is a translation and put a link to the original post.

Alistair Doulin
profile image
I'd be more than happy for you to do that Vivien. Please provide me with the link and I'll link to it from my original post on my blog as well.

Vivien LeNeez
profile image
Thanks ! I will make you know when it's done and provide you with the link (though you certainly cannot read french :)), and if you want to link it from your blog... then thank you again !

Mark Brendan
profile image
During my time working with larger teams in studios I relied a lot on Excel to prototype game mechanics and could pass on the spreadsheets to coders who would then be able to step through the equations and data in them and pretty much write it straight into the game engine, obviating the need for them to spend much time trawling through design docs. As a non-technical designer I found it very flexible and used it both for prototyping and tuning all sorts of things, from combat mechanics, through random spawn rules, to AI behaviour. It was used extensively on Brian Lara 2007 to handle AI decision making, the behaviour of the cricket ball, how the pitch changed during the course of a match and was also used to generate scores for AI only matches in tournament play. Also used it on early models of the career system, and AI behaviour in F1 2010. As an erstwhile tabletop designer, I've also used board game prototypes for proof of concept.

Eric Ries
profile image
Great article! It's always interesting to get someone else's take on prototyping. Everyone kind of has their own way of doing it.

Anupam Biswas
profile image
Thank you all for the enlightening words !!


none
 
Comment:
 




 
UBM Tech