Yavin
    
- Global Moderator
- Full Member
- Score: 0
- Posts: 145
-
|
 |
Design document's
|
Game Design is one of the most important aspects of creating your own game, if you are like a lot of us working in a team or a solo programmer then it is very important to have a plan for what your about to work on. In my experience I have found that projects started with no design , or design documentation tend not to be completed, or if they are they fall far short of what the programmer had in mind at the start. As a result I am creating this guide, well what I hope will end up as a guid to creating a good , simple, and easy to follow design docuemnt. - What Is A Design Document
A Design document is your road map to the project your working on, and it can consist of a large number of sections, I will try and cut all of these down to only a hand full of sections that are used by most people, if I cover them all right away then it could put some people off and thats not what i want.
High Concept : A High consept is a description of your game in 255 characters, or one line of text. Its been said that if you cant explain the basics of your game in one line then you need to be rethinking your idea.
Here is an example of one of mine.
"Control :: A game set on an alien planet, tons of aliens , tons of bullets, and you need to control it all by capturing land"
In the above example you can draw a few conclusions, one is that its probably going to be an RTS style game, possibly FPS, its going to involve shooting or killing lots of oncoming aliens, while you try to take over and control area's of land on some alien planet.
Game Description :: Your game description should describe in as much detail ass possible what your objectives are, what your game is all about , who your hero is, and how your hero is supposed to progress through the game.
I have seen Game Description come in the form of a short story, or a level by level description of how the hero progresses, it will be upto you to work out the best way for you to describe your game in detail.
What I do is try to imagine I am telling a friend about the game Idea that I have, and I then put that down on paper.
Here is an Example
Game Asteroids , The game starts you out on a planet surface, you can see your ship on the launch pad, you have access to some ship menus allowing you to chose a ship type, fire type and some other cool stuff.
When your ready you can click launch and you watch your ship taking off, as the screen fades out the menu screen and fades in the action, you find yourself surrounded by asteroids and they all look hard as nails, you let rip with your guns to clear them out but find that they split in two when you blow them up, this creates more chaos, some seem to drop powerups that you can collect and use to clearl the levels fastre.
Every now and then some crazy alien ship flys in and gives you a few shots, before it turns and runs for cover, your clear the level of all asteroids and land back on the planet to collect your bonis and repair and upgrade your ship. while your doing this your base asteroid warning alarm goes off, its time for action again.
A game description can tell you things about your idea that you may not first be aware of, it also allows you to elaborate and expand your idea when it comes to develop your game, for example in mine above I explain how some pesky aliens come in shot and then run, this can easily be exanded on in game to have them coming in ever increasing waves as you progress through the game, you could add more planets to laucnh from, the scope here is huge.
Game Flow This can be the most important Aspect of your design document, and if I have time I will try and include a picture of a flow chart, until then I will use some text to describe what I am talking about.
The bottom line is that a Chart is created to show the flow of your game from your first line of code to the last. this sounds really daunting but its not, your not showing per line your just showing each function, and how it flows into the next.
In the example I have provided in the Image bellow, its a programme that creates some variables, asks the user for a number, and if the number is over 10 the programme ends, if not then it loops.
Looking at this chart will enable anyone to create this programme, they instantly know they need an If else. they know how many functions they are going to use and they know or can guess how many lines of code they are going to need, they should also be able to work out any possible problems that might crop up.
There are a lot of standards for this level of design, UML , SSADM can be used, and a number of others, TBH its all bull shit, what you need to do is create your own method of doing this that makes it easier for you to manage and understand when looking at it.
Datalflow charts can then be made, using your process flow chart above as a backing you can create new charts to show where the code will need to pass information, like the variable which stores the user's number, it would be getting passed from one function to another, so you can show this in a similar diagram , just add the variables to the side of the lines and arrows to show what way the data is traveling in.
I dont want to go into this much more because it is such a detailed subject in its own right.
Level Design or Structure In the same way that art style is important to your game, level design and structure is also very important.
Creating a level design plan for each level will help you plan where to put your aliens, or bad guys, how many there will be, what the level will look like, what its settings are , what its effects will be and how all of this will effect the player.
You can do this section of your design docuemnt with lots of images, scetches or just a description in text of how each level is played and made up, I find that its best to draw or scetch your levels and then fill it with clip notes explaining how stuff works, where a key fits or what dor or enemy dies if the player shoots a particular base or door.
Concept Art If you cant draw, or if you can draw but cant model it does not really matter, in your design docuement its important to have a section for your concept's, these can be images of space ships cut out of a magazine that you like the shape or design of, it can be colours or textures you like and think will fit your game, if you can draw then you should make as many detailed drawings of your project from all angles, the more detail you use the better as it enables you to have a plan when it comes to creating them in digital form.
Its important at this stage to try and come up with a theme, to many Indie game developers fall flat on their ass here, they have all nice looking sprites and bad guys, the problem is they all look way to different, what I mean is that you have to invent a style for each game, or each race of aliens, you have to invent a colour scheme to use for them, its important that your game style looks right. if you just have a patchwork collection of random sprites on screen, even if the game is awsome to play, it will put people off.
Style is important, colour is important.
I think thats about it for now, you will note there is not real code listed above, at the design stage you shouldnt be thinking about code at all, your simply working out how your going to do things, what its going to look like and how many of an alien or enemy you plan to have, and where your going to put them. Once you have a good design document, which should consist of some procedure flow charts, some data flow charts , some concept art and some level designs, then your ready to start programming your game. Just follow your design, and try to stick to the Original plan, Another HUGE pitfall is thinking of a new cool idea in the middle of your development and then trying to fit that into the project, this is a HUGE mistake, what to do instead is jot the idea down, and save it for Version 2 of your game, if you try to add new stuff to your project you will only end up messing your design plan up and this will cause problems further down the line. I hope this helps some of you, I know some of you dont use any design doc's at all and some of you think you dont need them, but take it from me, its a god send it will help and it will save your project. [attachment lost, please re-upload]
|