Page 1 of 2
1
2
LastLast
  1. #1
    Deleted

    Learning to make my own game.

    Hi, after being a gamer and a computer nerd all my life, and after playing games such as Minecraft and Terraria, I'v decided I want to attempt to create my own game. Only problem is I have no programming experience, well, apart from Pascal like 10 years ago in college lol. How difficult is it to teach yourself a programming language? Terraria was written in C#, so Im gonna start with that and so downloaded visual basic and a few tutorials. But, as I said I'll be teaching myself, anyone here done the same thing? Any advice?

    Also, Iv heard of a language called Gamemaker, what's that like and should I maybe start there?

    Cheers.
    Last edited by mmoc2d1425a8d1; 2011-05-26 at 08:45 AM.

  2. #2
    The whole deal with programming is time, patience, and practice. It'll be roughly five or six months before you pump out anything that is kind of impressive. I'd suggest you start with C++, then move to Java.

    Stay away from programs like GameMaker, RPG Maker, and Visual Basic. GameMaker and RPG Maker take a lot of the manual labor out of programming, which weakens your base as a programmer. Visual Basic will teach you a lot of things that will come back to bite you in the ass later on.

    Once again, its all about time, patience, and practice. You will feel stupid, you will get stumped over one small problem, but you will figure it out and get better.
    I mostly play fighting games these days.

  3. #3
    Quote Originally Posted by Kankuri View Post
    Once again, its all about time, patience, and practice. You will feel stupid, you will get stumped over one small problem, but you will figure it out and get better.
    This.

    It just takes time. Also once you learn the basics, learning additional programming languages becomes faster.
    "Loss of blood... My only weakness!"
    ~ Warlord Khan, Magicka

    Anyway, if you don't already see where I'm going with this, allow me to spell it out: the only meaningful MMORPG "endgame" -- i.e., something novel to do after the progression process is over -- is that of the sandbox.

  4. #4
    The Lightbringer jvbastel's Avatar
    10+ Year Old Account
    Join Date
    Jan 2011
    Location
    Flanders
    Posts
    3,789
    A good language to start with is Java. It's easy to learn and is cross platform.
    Start with simple stuff, like a command line game that allows you to move around in areas, add graphical interfaces later. AVOID VISUAL BASIC!!!

    If you have any specific questions, feel free to PM me. I work as a programmer, (not in gaming though) so should be able to help you with some basic stuff easily

  5. #5
    Quote Originally Posted by Kankuri View Post
    The whole deal with programming is time, patience, and practice. It'll be roughly five or six months before you pump out anything that is kind of impressive. I'd suggest you start with C++, then move to Java.

    Stay away from programs like GameMaker, RPG Maker, and Visual Basic. GameMaker and RPG Maker take a lot of the manual labor out of programming, which weakens your base as a programmer. Visual Basic will teach you a lot of things that will come back to bite you in the ass later on.

    Once again, its all about time, patience, and practice. You will feel stupid, you will get stumped over one small problem, but you will figure it out and get better.
    I'd say start with Java then go to C++. Java is simpler.

  6. #6
    i am afraid programing is not enough to create video game ...

  7. #7
    Indeed, learning C++ to move to Java is possibly the worst advice you could give.

    C++ is much more complicated than Java. But if you know C++ (and by that I mean 5-10 years of learning the language at the very least), then it's an insanely powerful language.

    ---------- Post added 2011-05-26 at 12:14 PM ----------

    Quote Originally Posted by Scubasage View Post
    I'd say start with Java then go to C++. Java is simpler.
    If you think he should learn C++ at all, then there is no point in learning Java first. I quote from Bjarne Stroustrup's FAQ:

    Should I learn a pure OO language before C++ to become a real OO programmer?
    No. Learning something new is almost always a good idea. However, each language is different and has it's own styles and quirks. Code written in some supposedly "pure" OO style modeled on some other language (quirks and all) is often sub-optimal and frustrating when too literally transcribed into C++. Also, "writing just pure Object-oriented code" is not one of my ideals; see my OOPSLA keynote Why C++ isn't just an Object-Oriented Programming Language. If you want to become a good C++ programmer and don't have a few months to spare, concentrate on C++ and the concepts it embodies.


    ---------- Post added 2011-05-26 at 12:15 PM ----------

    Quote Originally Posted by ManiaCCC View Post
    i am afraid programing is not enough to create video game ...
    Yes, it is. Although your video game will consist of placeholder models unless you get in touch with artists or are one yourself.



    ---------------------------------------------------------------------------------------------


    OP: Check these out:

    http://www.gamedev.net <- General game development forum
    http://stackoverflow.com <- Ask your programming questions there, blazingly fast response times from professional programmers
    Last edited by ZyngaFail; 2011-05-26 at 12:17 PM.

  8. #8
    I'd pretty much ignore everything Kankuri said aside from the fact that it takes time to get good. Listen to jvbastel and start with Java and then move into either C++ or C#.

    If you aren't sure which one you'd rather learn first, I'd suggest googling the differences and similarities between the two languages (a quick search and I found this, which might be worth a read: http://www.c-sharpcorner.com/UploadF...languages.aspx)

  9. #9
    Quote Originally Posted by ukrainium View Post
    I'd pretty much ignore everything Kankuri said aside from the fact that it takes time to get good. Listen to jvbastel and start with Java and then move into either C++ or C#.

    If you aren't sure which one you'd rather learn first, I'd suggest googling the differences and similarities between the two languages (a quick search and I found this, which might be worth a read: http://www.c-sharpcorner.com/UploadF...languages.aspx)
    Eek. :s

    Java will teach you bad habits if you plan on moving to C++:
    - You will be used to leak memory and resources
    - You will be forced into a pure OO mentality
    - You will not understand how templates and duck typing work, and what makes them so much more powerful than Java generics (which are mere syntactic sugar on top of ugly (Object)-casting)
    - You will not understand value/reference semantics, and have a hard time getting the hang of pointers

  10. #10
    Quote Originally Posted by ZyngaFail View Post
    Eek. :s

    Java will teach you bad habits if you plan on moving to C++:
    - You will be used to leak memory and resources
    - You will be forced into a pure OO mentality
    - You will not understand how templates and duck typing work, and what makes them so much more powerful than Java generics (which are mere syntactic sugar on top of ugly (Object)-casting)
    - You will not understand value/reference semantics, and have a hard time getting the hang of pointers


    Thought I'd toss in the link because OP mentioned C# and people started talking about C++.

    @OP: if you just want to learn a programming language for the sake of learning and build yourself up to the harder stuff, you might want to consider learning either Ruby or Python first.

  11. #11
    The Lightbringer jvbastel's Avatar
    10+ Year Old Account
    Join Date
    Jan 2011
    Location
    Flanders
    Posts
    3,789
    Quote Originally Posted by ZyngaFail View Post
    Eek. :s

    Java will teach you bad habits if you plan on moving to C++:
    - You will be used to leak memory and resources
    - You will be forced into a pure OO mentality
    - You will not understand how templates and duck typing work, and what makes them so much more powerful than Java generics (which are mere syntactic sugar on top of ugly (Object)-casting)
    - You will not understand value/reference semantics, and have a hard time getting the hang of pointers
    It's true that Java has it's flaws, however, I don't think his goal is to start writing a masterpiece right ahead.
    Java is a good language to learn the basics, and for smaller, less graphical intense games, it's more than sufficient (example: runescape, minecraft). C++ is a lot harder to learn as your first language I think (mine was java so I don't know for sure ).

  12. #12
    Quote Originally Posted by swiftfeet View Post
    Hi, after being a gamer and a computer nerd all my life, and after playing games such as Minecraft and Terraria, I'v decided I want to attempt to create my own game. Only problem is I have no programming experience, well, apart from Pascal like 10 years ago in college lol. How difficult is it to teach yourself a programming language? Terraria was written in C#, so Im gonna start with that and so downloaded visual basic and a few tutorials. But, as I said I'll be teaching myself, anyone here done the same thing? Any advice?

    Also, Iv heard of a language called Gamemaker, what's that like and should I maybe start there?

    Cheers.
    Just download unity, its pretty sick and its free

  13. #13
    Quote Originally Posted by ZyngaFail View Post
    Indeed, learning C++ to move to Java is possibly the worst advice you could give.

    C++ is much more complicated than Java. But if you know C++ (and by that I mean 5-10 years of learning the language at the very least), then it's an insanely powerful language.
    The biggest reason why I suggested learning C++ first, then Java seconded is for that reason. C++ has been considered the standard programming language for many gaming companies for years now. If he really just wants to jump balls deep into the world to get a glimpse of how difficult it is, that is his best bet. In my experiences, Java functions rather similarly to C++ (with some difference, of course), and more companies seem to be shifting towards Java-based games nowadays.

    If he wanted to learn how to simply program without a focus towards gaming, I would have suggested something like Java and Python.

    <---First programming language was BASIC on a Commodore 64
    Last edited by Kankuri; 2011-05-26 at 03:59 PM. Reason: adishunal info
    I mostly play fighting games these days.

  14. #14
    I think most important is to keep going when you get to the middle of the process. Very often people start doing a game, being all excited about it, but then they just get so fed up with it, they don't want to do it any more.
    A possible solution is to get somebody who is also very enthusiastic about the game and can be supportive enough to morally help you out.

  15. #15
    Quote Originally Posted by Kankuri View Post
    The biggest reason why I suggested learning C++ first, then Java seconded is for that reason. C++ has been considered the standard programming language for many gaming companies for years now. If he really just wants to jump balls deep into the world to get a glimpse of how difficult it is, that is his best bet. In my experiences, Java functions rather similarly to C++ (with some difference, of course), and more companies seem to be shifting towards Java-based games nowadays.

    If he wanted to learn how to simply program without a focus towards gaming, I would have suggested something like Java and Python.

    <---First programming language was BASIC on a Commodore 64
    The companies shifting towards Java are not gaming companies but business-oriented companies.
    The reason they are shifting to Java is because most University graduates come with a knowledge of Java nowadays and requiring that easy language allows them to hire braindead monkey coders without much of a selection process. In fact the low skill cap of Java is its main asset, because it means the companies don't have to invest into any further training down the road for their employees.

    "C makes it easy to shoot yourself in the foot"
    "C++ makes it harder to shoot yourself in the foot, but when you do it blows your whole leg off"
    "Using Java is like riding a bike with training wheels, impossible to fall but don't expect to go fast or to learn good habits from using it."

    Some people might argue that C++ has more features than Java and this makes it more bloated, when in fact it simply has the required set of features to map onto modern computer architectures well.
    There's also these quotes I remember reading:

    "C++ is like a dog which you nailed 4 more legs on to make it an octopus."
    "Java is like a dog which you cut all the legs off of so that it can safely slide around without ever hurting itself."

  16. #16
    Deleted
    All very awesome replies there guys so thanks. It's given me alot to think about. Damn I wish I started this kinda thing a few years back.

  17. #17
    Mechagnome Kardezar's Avatar
    10+ Year Old Account
    Join Date
    Dec 2010
    Location
    Maine, USA
    Posts
    603
    Quote Originally Posted by Kankuri View Post
    I'd suggest you start with C++, then move to Java.
    i'd say the other way around.

  18. #18
    Does Blizzard use their own programming software? Just curious.

    and OP, I have about a years worth of experience in C++ and in my opinion it isn't a hard language to learn. Of course, like everyone has mentioned, it takes time - but it's repetitive in a good way. You'll learn the tricks, and start creating shortcuts from what you've learned. This is key if you want to get anywhere in Programming. Start with the basics, and practice from there.
    "In a world where absolute truth exists but cannot be known, one must live by reason and faith."

  19. #19
    I'd suggest downloading Microsoft Visual Studio Express 2010 and Microsoft XNA Game Studio 4.0. I can't post links here, but you can get both on Microsoft's webpage.

    Both are free downloads and XNA is designed specifically for game programming. A great intro book for XNA is "XNA 4.0 Game Development by Example" by Kurt Jaegers. This book is great and leaves you with multiple working games that you can use as reference later when you've finished.

    There is no shortage of c# or Visual Studio tutorials available as well to get you familiar with the language itself. Just grab any of those and you should be good to go. Visual Studio even has a streamlined way to upload and sell your games on the Xbox store if you'd like.

    Good luck with it.

  20. #20
    Herald of the Titans Maharishi's Avatar
    10+ Year Old Account
    Join Date
    May 2010
    Location
    Boston, Mass
    Posts
    2,923
    Quote Originally Posted by ManiaCCC View Post
    i am afraid programing is not enough to create video game ...
    Indeed, you will need to spend as much time learning game theory as programming. Making your first ever game in a virtual environment will lead to tears. Try making card/pen and paper/ board games first. Making a cohesive fun game will be more effort than programming it.

    Forgive me if you knew this already.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •