Starting right now. Would appreciate any help, even encouragement

Started by
14 comments, last by CryoGenesis 12 years ago
I am very, VERY lost. I've been trying to learn how to do game developing. even something as basic as a tetris game, a mario bros. clone, or even a pac-man clone. To get to these I've been working on Windows Visual Basic 2008 Express and learn some basic coding. Is this the right step, should i jump to something more steep? What should i do? so far the most I've done is an 'if then' statements, textbox usage and that's it.is there any books, if so which? ANY THING WILL HELP, even a story of how you guys got started, i will love it. thanks in advanced!
Advertisement
WOW, i almost forgot yet i put this in the tags. What are and which of these languages should i use:

[font=comic sans ms,cursive]

[color=#000000]

ASP

[/font]
[font=comic sans ms,cursive]

[color=#000000]

ASP.Net


[color=#000000]

VBscript, JScript, or Javascript


[color=#000000]

Visual Basic.NET
C#
Visual Basic 6.0 or Earilier
C/C++
XML
Flash/ActionScript
F#
HTML
Ruby on rails
Java
AJAX
PHP
LINQ
SQL
Python/IronPython
VBA

[/font]

It sounds like you want to get things up and running as soon as possible, and for that reason I recommend AS3(Flash).

You can use FlashDevelop (its free) to program in AS3. Check out some tutorials.

Is this the right step, should i jump to something more steep?


In general, if you're completely lost you're going at things too steep. Start with learning basic syntax (if/then, loops, functions, classes). Then learn basic programming (guess the number, take a file and write a new file that is backwards, take a file and write a new file that has the words in backwards order). Then learn mildly more advanced programming (roll up a character, simulate combat between random monsters). Then learn mildly more complex syntax (templates/generics, generators). Then learn basic graphics (create a window, handle input, show sprite, rotating cube). And then worry about tetris.

[Edit: plus this forum has a FAQ. Please read the FAQ. We get asked these things all of the time. C# or Python are the currently recommended first languages]
Hi, scrap VS 2008 Express and get VS 2010 Express, its free and better.

As for game programming, you will likely need to program first and be comfortable with the language you are learning (really comfortable). You dont have to be a pro but you will need to know enough to understand major areas not just the syntax. Practice as much as you can as it is very unlikely any game programming book will teach you about your language.

Depending on what your end game is, maths will help and is a must for 3D, basic algebra is fine for beginners but pre calculus is something you should aim for, once you get really into game programming have a look at calculus, ironically calculus makes more sense when you can visualize it in a game, it is even far more easier explaining it too but thats besides the point.

As for language, sadly that is something you have to decide on and it really depends on your platform or what you would like to do, popular languages however are (in no particular order) C#, Java, Python, C++ but theres others that are fine too. Depending on how dedicated you are in making games you will have to spend some money on books, not just for programming, theres a lot of resources online but it helps to have a book as a learning material.
[font=arial,helvetica,sans-serif]
[/font]
[font=arial,helvetica,sans-serif]ASP[/font]

[color=#000000][font=arial, helvetica, sans-serif]ASP.Net[/font]


[font=arial,helvetica,sans-serif][color=#000000]VBscript, JScript, or Javascript[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Probably not... these are meant for websites, primarily.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[color=#000000][font=arial, helvetica, sans-serif]Visual Basic.NET[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]I'm a Visual Basic hater, and I admit it, so I say no.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]C#[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Visual Basic 6.0 or Earilier[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]F*** no.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]C/C++[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Not for your first language.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]XML[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]You simply can't make a game with XML...[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Flash/ActionScript[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]F#[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Probably not.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]HTML[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Someone tried that once... it was really funny.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Ruby on rails[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]That's meant for websites too.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Java[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]AJAX[/font]


[font=arial,helvetica,sans-serif][color=#000000]PHP[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]More stuff for websites...[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]LINQ
SQL[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]These are for databases...[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Python/IronPython[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Python with Pygame: sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]VBA[/font]


[font=arial,helvetica,sans-serif][/font]
[font=arial,helvetica,sans-serif]Just... no.[/font]


I'll be honest and upfront with you: it'll probably take you a year of solid progress before you can start to make a tetris/pacman/mario clone.

[edit]

Oh my, will the gods of IP.Board PLEASE fix the stupid issue of white space getting inserted all over my post?
[size=2][ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]
ANY THING WILL HELP, even a story of how you guys got started, i will love it. thanks in advanced!
I started as a map author in Quake 1. This allowed me to appreciate an incredible amount of details. The workflow was a bit clunky at the time and the limited hardware resources implied this was going to become technical very soon. I suggest to play a bit with a full game first. I think some version of Unreal might give you an idea of what you roughly need.
I eventually got pissed off by the limitations of the Quake engines (more or less when Quake III was released) and started playing more seriously with code. Unfortunately, my life quickly become a mess for other reasons... starting from the assets side of things is a good idea.

Previously "Krohm"


even something as basic as a tetris game, a mario bros. clone, or even a pac-man clone.


all 3 of these are not basic games, tetris is "easy", but it is by no means basic, at least in terms of creating a proper clone.
let's look at what's needed to build tetris:
-a grid system for the tiles to be placed on.
-a method for "dropping" new pieces, and selecting new tiles.
-how to deal with rotating the blocks.
-how to deal with rotating a block that might not be able to fit in a particular location.
-sweeping for rows that are complete.
That's just the very basics. with the most complicated part being the rotation(or at least, in my opinion is the most complicated part.)
and that was how i approached tetris when i did it myself.

next on your list is pac-man, then super mario bros. clone. both of these are far more complicated then you might be initially thinking.

i'd recommend thinking even more basic. something like a hi-low game.

being new at this is very difficult, and requires alot of patience, don't get discouraged, shoot high if you want, it's how you learn your limits, but you will eventually reach your goal if you stick with it, if you keep learning. you'll get it eventually.

I personally began with actionscript, so that language also get's my vote.
Check out https://www.facebook.com/LiquidGames for some great games made by me on the Playstation Mobile market.
Basically everything Cornstalks said. Drop VB like the plague, especially 6. It's a dying language, while VB.Net is just C# with a bit of syntactic goo poured on top.


I wrote this guide to pretty much answer every question you've got. Read it, it should help you. When you are done, if you have a specific question, ask away.



One small correction to what Cornstalks said, LINQ isn't a language ( granted, CS didn't say this ) and isn't just for databases. Its part of .NET and is very very very powerful. If you are going to learn C#, make sure you eventually understand LINQ. LINQ can be used on databases, XML and plain ole C# datatypes ( of certain types, but thats an implementation detail )

It sounds like you want to get things up and running as soon as possible, and for that reason I recommend AS3(Flash).

You can use FlashDevelop (its free) to program in AS3. Check out some tutorials.


Yes, this sounds like a great idea. i think i'll try this out. (but after i get a little bit of programming skills, basic stuff like 'if then's' then that. that's all i know right now and it find this really interesting, i want to see how far programming goes and what i can come up with)



In general, if you're completely lost you're going at things too steep. Start with learning basic syntax (if/then, loops, functions, classes). Then learn basic programming (guess the number, take a file and write a new file that is backwards, take a file and write a new file that has the words in backwards order). Then learn mildly more advanced programming (roll up a character, simulate combat between random monsters). Then learn mildly more complex syntax (templates/generics, generators). Then learn basic graphics (create a window, handle input, show sprite, rotating cube). And then worry about tetris.

[Edit: plus this forum has a FAQ. Please read the FAQ. We get asked these things all of the time. C# or Python are the currently recommended first languages]


That sounds like something i'm gonna do. then jump to actionscript and then jump to something more steep as C# or Python. my end goal is C++ (but by the time i get there i'm sure i'm gonna be using C++11.)


Hi, scrap VS 2008 Express and get VS 2010 Express, its free and better.

As for game programming, you will likely need to program first and be comfortable with the language you are learning (really comfortable). You dont have to be a pro but you will need to know enough to understand major areas not just the syntax. Practice as much as you can as it is very unlikely any game programming book will teach you about your language.

Depending on what your end game is, maths will help and is a must for 3D, basic algebra is fine for beginners but pre calculus is something you should aim for, once you get really into game programming have a look at calculus, ironically calculus makes more sense when you can visualize it in a game, it is even far more easier explaining it too but thats besides the point.

As for language, sadly that is something you have to decide on and it really depends on your platform or what you would like to do, popular languages however are (in no particular order) C#, Java, Python, C++ but theres others that are fine too. Depending on how dedicated you are in making games you will have to spend some money on books, not just for programming, theres a lot of resources online but it helps to have a book as a learning material.


I loved the idea of having to learning more advanced math stuff. when i started seeing this code on VB i was like, wait, this is algebra! If you have any good math book recommendation then i'll take them. Right now i'm only 16 and haven't taken this level classes yet.


[font=arial,helvetica,sans-serif][quote name='Wiitoy200' timestamp='1331501399' post='4921190'][/font]
[font=arial,helvetica,sans-serif]ASP[/font]

[color=#000000][font=arial, helvetica, sans-serif]ASP.Net[/font]


[font=arial,helvetica,sans-serif][color=#000000]VBscript, JScript, or Javascript[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Probably not... these are meant for websites, primarily.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[color=#000000][font=arial, helvetica, sans-serif]Visual Basic.NET[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]I'm a Visual Basic hater, and I admit it, so I say no.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]C#[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Visual Basic 6.0 or Earilier[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]F*** no.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]C/C++[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Not for your first language.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]XML[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]You simply can't make a game with XML...[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Flash/ActionScript[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]F#[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Probably not.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]HTML[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Someone tried that once... it was really funny.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Ruby on rails[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]That's meant for websites too.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Java[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]AJAX[/font]


[font=arial,helvetica,sans-serif][color=#000000]PHP[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]More stuff for websites...[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]LINQ
SQL[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]These are for databases...[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]Python/IronPython[/font]


[font=arial,helvetica,sans-serif][color=#000000]

[/font]

[font=arial,helvetica,sans-serif][color=#000000]Python with Pygame: sure.[/font]



[font=arial, helvetica, sans-serif]

[/font]


[font=arial,helvetica,sans-serif][color=#000000]VBA[/font]


[font=arial,helvetica,sans-serif][/font]
[font=arial,helvetica,sans-serif]Just... no.[/font]


I'll be honest and upfront with you: it'll probably take you a year of solid progress before you can start to make a tetris/pacman/mario clone.

[edit]

Oh my, will the gods of IP.Board PLEASE fix the stupid issue of white space getting inserted all over my post?
[/quote]

I've noticed. thanks for telling me about the languages, very helpful info.


[quote name='Wiitoy200' timestamp='1331500650' post='4921187']ANY THING WILL HELP, even a story of how you guys got started, i will love it. thanks in advanced!
I started as a map author in Quake 1. This allowed me to appreciate an incredible amount of details. The workflow was a bit clunky at the time and the limited hardware resources implied this was going to become technical very soon. I suggest to play a bit with a full game first. I think some version of Unreal might give you an idea of what you roughly need.
I eventually got pissed off by the limitations of the Quake engines (more or less when Quake III was released) and started playing more seriously with code. Unfortunately, my life quickly become a mess for other reasons... starting from the assets side of things is a good idea.
[/quote]

I was think about the idea of messing with garrysmod mods or even counter-strike maps. does that work?



all 3 of these are not basic games, tetris is "easy", but it is by no means basic, at least in terms of creating a proper clone.
let's look at what's needed to build tetris:
-a grid system for the tiles to be placed on.
-a method for "dropping" new pieces, and selecting new tiles.
-how to deal with rotating the blocks.
-how to deal with rotating a block that might not be able to fit in a particular location.
-sweeping for rows that are complete.
That's just the very basics. with the most complicated part being the rotation(or at least, in my opinion is the most complicated part.)
and that was how i approached tetris when i did it myself.

next on your list is pac-man, then super mario bros. clone. both of these are far more complicated then you might be initially thinking.

i'd recommend thinking even more basic. something like a hi-low game.

being new at this is very difficult, and requires alot of patience, don't get discouraged, shoot high if you want, it's how you learn your limits, but you will eventually reach your goal if you stick with it, if you keep learning. you'll get it eventually.

I personally began with actionscript, so that language also get's my vote.


Wow, i had no idea how complex a basic Tetris game is. well i guess i have lots to learn, i should aim so much lower. what games did you start out with?


Basically everything Cornstalks said. Drop VB like the plague, especially 6. It's a dying language, while VB.Net is just C# with a bit of syntactic goo poured on top.


I wrote this guide to pretty much answer every question you've got. Read it, it should help you. When you are done, if you have a specific question, ask away.



One small correction to what Cornstalks said, LINQ isn't a language ( granted, CS didn't say this ) and isn't just for databases. Its part of .NET and is very very very powerful. If you are going to learn C#, make sure you eventually understand LINQ. LINQ can be used on databases, XML and plain ole C# datatypes ( of certain types, but thats an implementation detail )


Bookmarked, i'll be checking this out. i'm still gonna use VB 2010 JUST to learn the BASICS, i by no means want to work with real programming with this language. all i'm using it for is to get the main idea of how this works (although it's a really sh*tty bad idea, but oh well)

This topic is closed to new replies.

Advertisement