10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game
10 Steps to Designing a Game 10 Steps to Designing a Game
10 Steps to Designing a Game
Go Back  Xtreme Visual Basic Talk > > > 10 Steps to Designing a Game


Reply
 
Thread Tools Display Modes
  #1  
Old 01-22-2003, 08:32 PM
Chrono23's Avatar
Chrono23 Chrono23 is offline
Junior Contributor
 
Join Date: Sep 2002
Location: Inside your head
Posts: 242
Default 10 Steps to Designing a Game


Heh, thought I might just post this to give some of the n00bs some idea of how/what it takes to make a game. I've seen alot of people asking "How do I start making games" a lot so this might be useful. Maybe a mod could stickie this. Ok here we go:

1.) Decide on the game you'd want to make. The most common/popular genres are: Strategy, RPG, Simulation, Action, Acrade, Adventer, First-Person-Shooter.

2.)Fire up VB and take a minute (or couple days) to think about how your game should initially look. I call this GUI1. Why? Because you will probably redesign the interface many times.

3.) Start to build the shell of your game (or most of it.) Do not put in code yet. You just want to place controls and name them, maybe set captions or something. Also, keep a notebook hadnyt to write about all the cool stuff you want to put in your game.

4.) Start basic coding. This is all the stuff like button clicks and other simple code.

5.) Once most of the initial basic code is done, start on advanced code. This is stuff like Classes, UDTs, Winsock, Custom Subs, etc.

6.) Now that you have worked on the game for a little bit (hopefully a couple days of good, long programming) Set up a basic website telling about your game. Be sure to eventually include an FAQ, About the game, dev team page, and a forum. You can work on the website whenever you want, just be sure to update it frequently.

7.) Now that people are/will know about your game, continue with the hardcoding like stats, car speed, how many bullets the '214-Marauder' can carry. All that stuff that has to do with stats, saving and other stuff SPECIFIC to your game.

8.) If you are going to use Graphics, start on the engine now. Also get working on graphics for the game.

9.) Test out the game by yourself. Are there any bugs? If so, go back and fix them. Test again. Fix Bugs, Wash rinse & repeat until you think you have a good piece of software.

10.) Put the finished game on a your website so other people can download it. Also, listen to reports of bugs and other stuff that other people have found. You should go back and fix them with a patch. Also, try to publisicise your game, and get noticed.

(Extra) 11.) Make a sequel!
__________________
Why is there war, famine and poverty in the world? Here's my answer: ¯\(°_o)/¯

Yes, I made my own avatar. And no, I'm not going to make one for you.... sorry.
Reply With Quote
  #2  
Old 01-22-2003, 08:42 PM
Optikal's Avatar
Optikal10 Steps to Designing a Game Optikal is offline
Codeaholic

Retired Leader
* Guru *
 
Join Date: Oct 2002
Location: Winnipeg, MB, Canada
Posts: 4,543
Default

I think you missed a MAJOR step, or perhaps not missed it but didn't stress it enough.

You should spent many many hours on the design of your game before you write a single line of code. Design not only what it will look like, but how it will work, and how you plan to code it.

What will the interface look like?
What will the controls be like for the user?
What will the stats of each unit/enemy/npc/etc be?
where/how will these stats be stored?
How will you store the maps for your levels?
How will you create the maps for your levels?
What technology will you use to render the graphics?
What classes will you need to write to implement all this?
What methods/properties will these classes contain?
etc.

In a complex game, I would guess that approx as much time is spent doing design (no coding involved) as there is writing actual code (if not more).
__________________
There are 10 types of people in this world, those that understand binary, and those that don't.
Reply With Quote
  #3  
Old 01-22-2003, 08:46 PM
BryanMiller's Avatar
BryanMiller BryanMiller is offline
Centurion
 
Join Date: Dec 2002
Location: KY
Posts: 132
Default

I spent a good week working on how my character-movement/mapping system was going to work in my CRPG, before I ever started coding, and it's wound up saving me a lot of headaches.
__________________
Everyone has a photographic memory... some just don't have any film.
Reply With Quote
  #4  
Old 01-22-2003, 08:56 PM
happy_mouse's Avatar
happy_mouse happy_mouse is offline
Regular
 
Join Date: Dec 2002
Location: North Carolina
Posts: 54
Default

Based some of what I have seen on this site from noobs your first step should be:

1) Learn basic programming in VB.

Also I think copying an already made game should come next. It certainly has helped me learn.
Reply With Quote
  #5  
Old 01-22-2003, 10:10 PM
Machaira's Avatar
Machaira10 Steps to Designing a Game Machaira is offline
Jedi Coder

* Expert *
 
Join Date: Aug 2002
Location: Abingdon, MD
Posts: 3,438
Default

While you don't spend quite as much time designing as coding (usually) it is vital to the success of any significant game. Because of this, you should get used to doing it for any project. Interface and code objects should be designed and the basic flow of your game thoroughly outlined before you write one line of code. You should probably even be putting down on paper or document on your PC pseudo-code for major portions.

Even before designing you should have a thorough understanding of the language you'll be using. If you're just starting out with VB, don't even think about writing a game before you know the following:

1. Basic programming syntax - loops, conditionals, function calls, error handling, how events work
2. How to construct classes
3. How to calculate framerate. This will involve API calls and constructing a game loop.
4. A thorough understanding of the API you'll be using, whether it's GDI, DirectX, OpenGL, etc.
5. How sprites are handled - this includes, but is not limited to, animation and making a sprite respond to the mouse and keyboard.
6. How to do I/O with binary/text files or a database.
7. How to create an interface and have it respond to the user, be it VB controls or graphics based.
8. Other stuff I'm sure I've missed

Game programming is probably the most difficult thing a hobby programmer can do, and even pros have difficulties. Don't just jump in head first. I've seen it too many times where someone does and gets frustrated and wastes their time and the time of others answering the same questions over and over that they should know beforehand.
Reply With Quote
  #6  
Old 01-23-2003, 12:26 AM
NoteMe's Avatar
NoteMe NoteMe is offline
Contributor
 
Join Date: Nov 2002
Location: Norway
Posts: 919
Default

Sorry Machaira, but I'm so often jumping over that step about "the design of your game". I feel terrible. I know I should do it, but I always end up with the game in one project, and all the testing and designing in an other project, Maybe I should make it my mew-year-resolution, to start using time on the design of my game......But if I'm working on projects with other peoples, I'm always using a lot of time before I start coding. And my JAVA teacher are trying to learn me to draw at least something on the paper before starting. But the assignments we are geting in JAVA is too easy to understand the power of doing some thinking before starting. But maybe this was what I needed to get started on that thiniking prosess. I promisse to at least think a little bit before coding on my next assignment.
__________________
- I'm trying to be friends with everyone.
- So please try to be my friend too...
Reply With Quote
  #7  
Old 01-23-2003, 12:41 AM
vbnewb23's Avatar
vbnewb23 vbnewb23 is offline
Junior Contributor
 
Join Date: Dec 2002
Posts: 213
Default

IM A NEWBIE, but i like what you guys have wrote here, it gave me an idea of how to basicly set up designing. I've learned a lot from all you guys here at VB Extreme. Im thx for putting up with me
__________________
VbNewb23

Current Project: RPG...
Last Project: Map Editor
Reply With Quote
  #8  
Old 01-23-2003, 06:53 AM
Machaira's Avatar
Machaira10 Steps to Designing a Game Machaira is offline
Jedi Coder

* Expert *
 
Join Date: Aug 2002
Location: Abingdon, MD
Posts: 3,438
Default

I know when I was in school, the assignments I had were so small that I never had to do any design. I think the biggest one I had to do was a personal phone book. Wow! Of course, we're talking MANY years ago, so things may have changed. For any serious program though, you can't overlook the design phase or you'll most likely either not finish or, if you do, never be able to maintain the code. I've worked on some projects for my job that I would truly like to beat the crap out of the programmers that worked on the code before me as it was obvious that no thought went into the design and now I've got to deal with it. Which brings up another hot topic - coding standards. The following is for everyone, I'm not pointing fingers at anyone in particular.

[ rant on]

Learn them, use them, love them! If you use one or two letter variable names or other non-descriptive variable names - STOP RIGHT NOW! Learn some type of notation, Hungarian or otherwise and use it ALWAYS!

[ /rant off ]
Reply With Quote
  #9  
Old 01-23-2003, 10:12 AM
Seanami's Avatar
Seanami Seanami is offline
Centurion
 
Join Date: Dec 2002
Location: Montana
Posts: 148
Default

And, another thing about design is that you shouldn't feel like it traps you or binds you to certain things or ideas. Even though thinking out your game before making it is crucial, it's not like you can't go back in and change things later if you find that something isn't working right or the gameplay isn't as balanced as you'd like. In fact, with games like Starcraft, they even released updates to the game after it was released that did things like change the attack power of certain units, all in the hopes of further balancing/tightening the gameplay.

But yeah, it's kinda like trying to write a paper without an outline. It generally just turns into a bunch of unfocused rambling.
__________________
Never forget: 2 + 2 = 5 for extremely large values of 2.

(Or extremely small values of 5.)
Reply With Quote
  #10  
Old 01-23-2003, 10:32 AM
ardman
Guest
 
Posts: n/a
Default

Quoting the saying (and also agreeing with Machaira) "you must learn to walk before you can run". I have to say that whats the point of creating a game if you haven't done the conceptual design of it first. By doing a conceptual design you will then be able to define your logical design from it. The logical design will then make the physical design so easy to code, plus you'll be able to expand it with minimum requirements.
Reply With Quote
  #11  
Old 01-23-2003, 10:38 AM
Brion Brion is offline
Newcomer
 
Join Date: Jan 2003
Posts: 16
Default

One thing else to add from my experience:

During the design phase, try to allow for extensibility!

In the few game projects I have done, I try to design, then start coding too quickly without thinking things over enough - the result becomes a game that is OK as is, but is HORRIBLE to add features to. Sacrificing more time up front designing how to do the code is WELL worth the effort later on.

Brion

PS ~ I hope to follow my own advice in the future!
Reply With Quote
  #12  
Old 01-23-2003, 12:35 PM
NoteMe's Avatar
NoteMe NoteMe is offline
Contributor
 
Join Date: Nov 2002
Location: Norway
Posts: 919
Default

Machaira: you where talking about Hungarian notation. I just read about it once, for a long time, and I can't remember the standard. So I figgured out my own kind of thing. But I was wondering what is the notation for short and string??? OK, a reraly are using short, but if I can remeber right in Hungarian notation short used 'S' but what is then the notation for String????
__________________
- I'm trying to be friends with everyone.
- So please try to be my friend too...
Reply With Quote
  #13  
Old 01-23-2003, 06:08 PM
Machaira's Avatar
Machaira10 Steps to Designing a Game Machaira is offline
Jedi Coder

* Expert *
 
Join Date: Aug 2002
Location: Abingdon, MD
Posts: 3,438
Default

Reply With Quote
  #14  
Old 01-24-2003, 05:01 AM
NoteMe's Avatar
NoteMe NoteMe is offline
Contributor
 
Join Date: Nov 2002
Location: Norway
Posts: 919
Default

Thanks, I guess that I was too dumb too look for it on the MSDN site....hehehe...But thanks. I want to use the data type prefixes a little bit for frequent now.
__________________
- I'm trying to be friends with everyone.
- So please try to be my friend too...
Reply With Quote
  #15  
Old 01-25-2003, 05:19 PM
Chrono23's Avatar
Chrono23 Chrono23 is offline
Junior Contributor
 
Join Date: Sep 2002
Location: Inside your head
Posts: 242
Default

Wow, so much support. I though this wouldn't get stickied. I'm so happy
__________________
Why is there war, famine and poverty in the world? Here's my answer: ¯\(°_o)/¯

Yes, I made my own avatar. And no, I'm not going to make one for you.... sorry.
Reply With Quote
  #16  
Old 01-27-2003, 07:27 AM
Kaluriel's Avatar
Kaluriel Kaluriel is offline
Senior Contributor
 
Join Date: Jun 2002
Location: Where Heaven & Hell meet
Posts: 813
Default

a wise man (or some drunk idiot) once told me that the key to a good RPG is have a storyline which people can relate to, but also have a fantistical part to it.
Like Chrono Trigger, we can all relate the the troubles of time travel, yet the whole idea of a cat that follows you when you talk to it is stupid
__________________
"They say the the world will end in the same way it was created. I disagree, I think it'll end without the internet" ~ Kaluriel 2001
"The edit button is mightier than the doublepost" ~ Kaluriel 2003
Reply With Quote
  #17  
Old 01-27-2003, 05:10 PM
crazycheetah's Avatar
crazycheetah crazycheetah is offline
Junior Contributor
 
Join Date: Apr 2002
Location: Sunny Southern California
Posts: 347
Default

I'll have to agree with everything said, about how the design is very important. I personally even think over how my most basic program will look, run, and function in my head before i even open VB....

And another thing that you will probably find useful in game programming is to make some kind of scripting or the like for your game. You can even use VBScript, JScript or something like that (the Script Control). From personal experience i know this is much better, as you can debug much easier, and it allows for MUCH simpler addition to the game. Also you should always make your engine to be easily added to, incase you think of something you didn't think of before, and you really want to add it in. This saves MANY headaches (did for me...).

there's my 2 cents
__________________
Code: PONG! | RPG! | Isometric RPG Map Editor!
Tutorial: IRC
Reply With Quote
  #18  
Old 01-27-2003, 07:02 PM
happy_mouse's Avatar
happy_mouse happy_mouse is offline
Regular
 
Join Date: Dec 2002
Location: North Carolina
Posts: 54
Default

When you talk about scripting, what types of applications would you have for scripting? Basically, what would scripting be used for?
Reply With Quote
  #19  
Old 01-27-2003, 08:26 PM
crazycheetah's Avatar
crazycheetah crazycheetah is offline
Junior Contributor
 
Join Date: Apr 2002
Location: Sunny Southern California
Posts: 347
Default

For the game itself. Like you'd make the scripting load the maps, and anything else that you felt worthy. Personally i pretty much make the engine capable of any type of game (based around an RPG if i'm doing an RPG... which i am) and i use the scripting to basically put the game all together. The scripting can really be done any way you wish... it's just a bit easier, and better to have it there so you can debug everything (once the engine is complete, for the most part) w/o having to edit the actual source of the engine. the one guidline i'd put on it is that it basically is the only thing that makes the game what it is... the engine basically just drives the scripting... i hope that's good enough of an explanation... *shrug*
__________________
Code: PONG! | RPG! | Isometric RPG Map Editor!
Tutorial: IRC
Reply With Quote
  #20  
Old 01-28-2003, 02:08 PM
Tintin's Avatar
Tintin Tintin is offline
Regular
 
Join Date: Jan 2003
Location: Netherlands
Posts: 50
Default

Right now I'm actually working on my first game in VB (first game in anything actually) and I must say all the advice is very useful! There are so many things to take into account, it's hard to see the forest through the trees in the beginning.
That's why I'm trying to keep my game simple, a turn-based 'arena' type of game, where two players battle for their lives.
Now for my stupid newbie question: what exactly IS scripting?? I think I know what a script is, but what does it DO in a game exactly?
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Forum Jump

Advertisement:





Free Publications
The ASP.NET 2.0 Anthology
101 Essential Tips, Tricks & Hacks - Free 156 Page Preview. Learn the most practical features and best approaches for ASP.NET.
subscribe
Programmers Heaven C# School Book -Free 338 Page eBook
The Programmers Heaven C# School book covers the .NET framework and the C# language.
subscribe
Build Your Own ASP.NET 3.5 Web Site Using C# & VB, 3rd Edition - Free 219 Page Preview!
This comprehensive step-by-step guide will help get your database-driven ASP.NET web site up and running in no time..
subscribe
10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game 10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game 10 Steps to Designing a Game
10 Steps to Designing a Game
10 Steps to Designing a Game
 
10 Steps to Designing a Game
10 Steps to Designing a Game
 
-->