Skip to main content
GameDev.net gamedev.net
🔒 Locked

Beginning problems... (2 questions)

Started by Pyrofyr Apr 24, 2008 at 9:54 PM 6 replies 1.8k views
Original Post
Pyrofyr
Pyrofyr
Okay I'm having a lot of problems jumping into programming, and my main problem is that I've read the books, I understand the concepts, but I've yet to put it to practice and make something. I have books on both C++ and C# but both of them don't tell you to just start and make something yourself and whatnot, they're just basically saying "Hey, write what I write and don't put any thought into it". I'm looking for a guide that will explain things and then tell you to maybe build something to shoot for and then have some sort of way to get used to it in case you get stuck. I'm more inclined to work with C++ but everywhere I visit lately says that C# is faster and easier than C++ and just as if not more powerful, so I'm wondering, is C++ worth it. When I was choosing a beginning language I was taught that C++ was a standard and was great, so I'm not sure where it's all coming from overall. I'd mostly want something online but a book isn't a problem either, I don't mind shelling out for one or heading to the library. TL;DR? 1. What's better C++ or C# to start with? My goal is to create a 2D Side Scroller. I eventually plan on creating an MMORPG, but I do know that it is 1)Tedious 2)Requires much work and a team and 3)Requires a bit of networking skill as well. (I don't plan on travelling this road for a while, although my design document is done ;P) 2.What are some good tutorials to start (That don't spoonfeed) for either of the choices above (Whichever is better, I'm more inclined to C++ but if there is good reasoning to go with C# I will)?
EdR
EdR
Quote:
1. What's better C++ or C# to start with? My goal is to create a 2D Side Scroller. I eventually plan on creating an MMORPG, but I do know that it is 1)Tedious 2)Requires much work and a team and 3)Requires a bit of networking skill as well. (I don't plan on travelling this road for a while, although my design document is done ;P)
C# is probably better to start with. It's cleaner, more conceptually friendly, and doesn't have twenty-year-old gotchas that always cause trouble. Once you know a clean language, you can learn more common yet less structured languages with ease.

You don't want to learn to make a 2D sidescroller. You want to learn to program. Then, once you know how to program, make a 2D sidescroller.

(And an MMO isn't "a while" off...more like "most of a decade and a wheelbarrow of hundred-dollar-bills" off. Keep things in perspective.)

Quote:
2.What are some good tutorials to start (That don't spoonfeed) for either of the choices above (Whichever is better, I'm more inclined to C++ but if there is good reasoning to go with C# I will)?
C# Programming Guide, from the MSDN

It's a very solid spec of the language with plenty of explanations.
http://edropple.com
oler1s
oler1s
Quote:
understand the concepts, but I've yet to put it to practice and make something.
No you don't. If you have been reading all these programming concepts, but haven't been using them actively, then you don't understand them. This isn't an insult to you, or any sort. I'm just stating a fact about how programming is learned.

Quote:
I have books on both C++ and C# but both of them don't tell you to just start and make something yourself and whatnot, they're just basically saying "Hey, write what I write and don't put any thought into it".
First, pick one language. Do not mess around with multiple languages as a beginner. Since you are a beginner, most (or pretty much all) of us will tell you to ditch C++ and work with C# for now.

Next, your language books do not teach you programming. They show you how to use a language. Now, admittedly, some books are geared towards beginners who also want to learn how to program. But no book will handhold you through being a programmer. They can point the way, but ultimately, you must program yourself, force yourself to think on your own, and learn that way.

Quote:
I'm more inclined to work with C++ but everywhere I visit lately says that C# is faster and easier than C++ and just as if not more powerful, so I'm wondering, is C++ worth it.
Every language has its own purpose. But as a beginner, I feel that explaining the nuances in how a language is chosen is rather pointless. Most beginners like the words "faster", "more powerful", "easier", "better" and so on, even though those terms are utterly useless and devoid of meaning in programming.

We usually recommend C# and Python to beginners. I don't care to repeat all the rationale, since searching this forum will bring up all the past threads with countless paragraphs of explanations. You can deal with C++ once you have the programming experience to truly use it, and decide if you need to learn it.
Pyrofyr
Pyrofyr
Thank you for your answers.

I've actually worked in editing programs, but I've never actually made anything. I suppose I'll start with C# and see where that leads me. :]


Oops. Wait, one more question actually.

That link was to C# in Visual Studio. Now I do indeed have a professional version of it, but should I start with Visual C# instead of just normal C#?

Or is C# only in .NET?

I'll look the last one myself, it was just a reminder.
Shiny
Shiny
Visual C# is Microsoft's flavour of C# --> so, an implementation of the spec of C#. The great majority of people use it through Visual Studio because not only do you get a language that makes sense (everything works the way the spec says it should...) -- but you also get access to a massive and really useful library framework (that being the .NET framework).

To clear up possible misconceptions -- C++ is in many cases faster than C# to run (C# generally has an intermediate layer that helps prevent you from screwing up important operating system stuff). But I guarantee you'll write code faster in C# than you ever will in C++. For most, this is a massive boon. I personally hate taking ages to do simple things...and if you pick C++ you will end up doing that. It has a robust standard library -- but it pales to insignificance when compared to what you get with .NET. Bemusingly enough, you can actualy use .NET through C++ -- but it is a nasty Microsoft hodge podge. I'll admit it is better than it used to be in its current iteration -- but ugly as sin compared to C# :)

~Shiny
------------'C makes it easy to shoot yourself in the foot. C++ makes it harder, but when you do, it blows away your whole leg.' -Bjarne Stroustrup
MJP
MJP
Quote:
Original post by Pyrofyr
1. What's better C++ or C# to start with? My goal is to create a 2D Side Scroller.


I'd say C# + XNA is your best bet as a beginner. It's a great environment + language to work with, and there's plenty of support and knowledgable people to help you. Just be aware that it's going to take you quite a while before you have enough experience with the language to actually make a full-fledged platformer. Even a 2D game is quite a bit more complicated than it seems, once you start tackling problems bigger than "how do I draw a sprite to the screen?".

Quote:
Original post by Pyrofyr
I eventually plan on creating an MMORPG, but I do know that it is 1)Tedious 2)Requires much work and a team and 3)Requires a bit of networking skill as well. (I don't plan on travelling this road for a while, although my design document is done ;P)


Just so you know, those are 3 massive understatements. [smile]

Pyrofyr
Pyrofyr
Thanks for that info on C#. I found some other online tutorials, so I'm starting that today.

As for the understatements, I mean at least 5 years or so before I even consider starting that. I'm just starting college now anyhow, and I don't plan on doing anything else for a bit (I'll still be making basic programs on the side to learn though hopefully).

Oh and by 2D game/platformer I mean something like for the DS, nothing too big, and I know it takes a lot of code even for the most base of games, and I've got a loooong way to go, so I'll just take my steps one by one until I get there. :]

I have to remember my password here xP I think I set it to an old email but this seems like my best bet for information when stuck (Been looking through threads), so I'll probably be back if I get stuck.
laugheazy
laugheazy
If your a beginner. And are just making games for fun. Programming is great, and rewarding to learn. Especially after you see something you created from scratch on screen doing things you wanted it to do. I agree though stick with one language, and then go from there. C# is very powerful. I have some suggestions for you if your doing this for fun and/or as a hobby.

For your MMO you want to make eventually. This is a lot of beginners mistake. an MMO is very expensive to make, and not many people in the world will meet the requirments to tackle this on there own. Its not just a bit of networking, and a bit of programming. Remember no book will ever make you a master, things are always being added and updated.


Here are my suggestions:
For your MMO
If you want to make a 3D MMO for fun and friends or family. Try Realm Crafter http://www.realmcrafter.com . This will make an MMO pretty much for you and requires hardly no scripting. As a owner of this product, I can tell you it is very buggy. The updates seem to make little difference. And the staff at times seem to be surfing instead of debugging. I would say its good for the fact you can create an mmo, with some models (included) and a couple quest in a matter of minutes. (as soon as you learn how to add quest via scripting) Realm crafter comes with a step by step tutorial on this.

For your 2D scroller
Game Maker www.yoyogames.com currently at version 7 now allows you to created 2D games with ease. I own this product also. Its very easy, the tutorials are great, and although the community can be kind of "why did you ask that" people the majority will help you in a matter of minutes. You can create 2D games with absolutley no scripting. It has a very easy drag and drop interface, and each of them tell you exactly what they will do.

I wish you luck in your game creating!
The Few.. The Proud.. The Marines..

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.