   Starting a text based game in Visual C++
  Hello all. I have a little question about starting up a text based game using Visual C++ 2008 Express. I know that starting off small is key, so I'd like to maybe write an adventure game with maybe some hand drawn pictures for some illustration. How would I go about starting something like that? Do I need any other programs or applications?If I want to add graphics to the game later on, will I be able to implement them without restarting?Would there be some way to implement some type of minigame into it? Maybe pushing said keys in a certain amount of time or something like that?Those questions asked, I'd like to inform you guys that I'm brand new at this, so any information will probably need to be backed with a "For Dummies" description, lol. I just know that I need to start with something extremely basic, and well, this is the best I could come up with. Not to mention the fact that I have some ideas for a game like this. Thank you all in advance for the replies,~HinDered   
  For now, I don't think you'll need anything else.The possibility of adding graphics later depends mainly of how well you think your game. If you don't have any previous experience programming, most surely it will be quite hard. But if it's a really simple game, it won't matter too much.Anyway, if you have never programmed before, I'd recommend you to start with console applications, without any graphics for now.Some people here would advise you to choose another language, perhaps python or C#.   ;Quote:Original post by ravengangrelFor now, I don't think you'll need anything else.The possibility of adding graphics later depends mainly of how well you think your game. If you don't have any previous experience programming, most surely it will be quite hard. But if it's a really simple game, it won't matter too much.Anyway, if you have never programmed before, I'd recommend you to start with console applications, without any graphics for now.Some people here would advise you to choose another language, perhaps python or C#.The only problem with that is that I want to learn C++ as soon as possible. If I can just learn C++ I either won't need the other languages, or will know enough about programming to be able to jump into them knowledgeably. My main question is how to start something like this. When I open C++, what's the first thing I do to start the project?   ;  Your first step, since you have no clue where to start or most of anything involved would be to get a book on game programming in C++ (recomended to get one that teaches either OpenGL or DirectX).The book should give you step by step instructions and let you go from near zero knowledge to fairly knowledgable for simple game development by the end (:   ;  it isn't a book on text game programming but this is the kind of book you'd want to look for (this game dev book series is pretty good!)http://www.amazon.com/Programming-Playing-DirectX-Premier-Development/dp/1931841098/ref=pd_ts_b_8?ie=UTF8&s=books;  I remember that 3buzz had (free) video tutorials where you'll going to learn C++ while creating a small console game.   ;Quote:If I want to add graphics to the game later on, will I be able to implement them without restarting?I just wanted to comment on this. Your first programs are not going to be very adaptable and if you try you'll likely end up with a big mess. For example I see a lot of beginners start out writing programs that perform nearly all logic within long, deeply nested chains of if/else statements. They shouldn't feel bad about that, but everyone eventually realizes that such a program is difficult to extend to add new features. All I'm saying is don't try too hard to "take it with you" as you advance, and don't look at starting over as a waste of time as long as you're learning new things and you're not working on something with a deadline. Its actually easier (IMHO) to add text output to a graphical app than to add graphics to an app that started as console text output.;Quote:Original post by HollowerQuote:If I want to add graphics to the game later on, will I be able to implement them without restarting?I just wanted to comment on this. Your first programs are not going to be very adaptable and if you try you'll likely end up with a big mess. For example I see a lot of beginners start out writing programs that perform nearly all logic within long, deeply nested chains of if/else statements. They shouldn't feel bad about that, but everyone eventually realizes that such a program is difficult to extend to add new features. All I'm saying is don't try too hard to "take it with you" as you advance, and don't look at starting over as a waste of time as long as you're learning new things and you're not working on something with a deadline. Its actually easier (IMHO) to add text output to a graphical app than to add graphics to an app that started as console text output.That's great advice, thanks alot. I'll be sure to keep that in mind.   ;  > I know that starting off small is key, so I'd like to maybe write an adventure game with maybe some hand drawn pictures for some illustration.Small is relative. For a beginner such as yourself, this is a big project. You've started too big. In fact, you are not going to be making any games initially.> How would I go about starting something like that? You would have to acquire significant knowledge first. It's not obvious exactly how much information one has to acquiire before they can start on this scale of a project. That's ok, but you'll have a better appreciation of what you can do when you try to follow some learning course. You won't be making games by following that course, but you will be writing many very small programs, and have a sense of how much work goes into making it. You'll also start to develop a sense of how little or much you can do with what you know. Setting off with a project like this as a beginner will get you nowhere, though. Don't count on the forums to walk you through. It will be painfully obvious you don't have any requisite knowledge.Quote:Do I need any other programs or applications?Maybe. But you have something to start with. Don't try to assemble an arbitrary toolbox by other people's recommendations. Because, whose game are you programming? Other people's games? Or your own?> If I want to add graphics to the game later on, will I be able to implement them without restarting?Also depends. You can't just tack on graphics to your work. The amount of rework you need to do depends on how well your program is designed, whether you considered the future of implementation of graphics in your program design, and then some more factors. If your idea is to start with a small program, and throw more things on top as you learn more, don't.> Would there be some way to implement some type of minigame into it? Maybe pushing said keys in a certain amount of time or something like that?Sure, but you'll need to be able to program it.> I just know that I need to start with something extremely basic, and well, this is the best I could come up with.You're absolutely right on starting with basics, but this isn't the basics. Start with a book on the language. That's the basics.> The only problem with that is that I want to learn C++ as soon as possible. If I can just learn C++ I either won't need the other languages, or will know enough about programming to be able to jump into them knowledgeably.C++ is not a one stop shop. Furthermore, it isn't your goal either. Is your goal to learn C++ or to make games? The two are not tied together. The sooner you realize this, the better. If you haven't invested any significant time in C++ yet, I suggest you start reading other posts on this forum to get an idea of what the general consensus here is on programmers starting with C++.> When I open C++, what's the first thing I do to start the project?You don't open C++. C++ isn't a program; it's a language. You do need an implementation of the language and any further tools as required by that implementation. By implementation, for C++, it's a compiler. When you got Visual C++ Express, you got the VC++ compiler. Compilers take in plain text files the contain instructions in the language and after going through a process spit out a program. That's awfully simplified, but that's the general idea. Then the most barebones toolset one has is a compiler and a plaintext editor. One can also use an IDE, which is really a set of tools unified into one program. One such tool in an IDE is going to be a plaintext editor, for example. Visual C++ 2008 Express is an IDE (it's an IDE-compiler bundle).So perhaps you should hold off on C++ for now and reconsider you position on learning it.   