The Quest to Make Games

Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#1  Edited By KarlHungus

This summer I gave myself a goal of learning as much as I can about making games independently as possible. I was wondering where is the best place to start (programming wise.) I spent some time on XNA studio a few years ago, but I never finished the 2D tutorial. Is there a better place to start or is XNA it? Thanks for any help.

Avatar image for swoxx
swoxx

3050

Forum Posts

468

Wiki Points

0

Followers

Reviews: 0

User Lists: 4

#2  Edited By swoxx

I'm not much use to you but I wanted to wish you the best of luck!

Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#3  Edited By KarlHungus
@swoxx: Thanks!
Avatar image for driadon
Driadon

3265

Forum Posts

763

Wiki Points

0

Followers

Reviews: 0

User Lists: 14

#4  Edited By Driadon

ActionSctipt 3 in flash is a fantastic place to start scripting, as it's objective based and quite flexible.

Now, should access (or ability to create) art be an issue, look into some super basic C++ or Java tutorials, and from there you can make some ACII games or text adventures to start you off.

Avatar image for aquageneral
AquaGeneral

170

Forum Posts

1686

Wiki Points

0

Followers

Reviews: 3

User Lists: 8

#5  Edited By AquaGeneral

I must say I personally think that Unity3D is the best place to start. It contains a dialect of JavaScript (UnityScript), Python (Boo), and also C#. It is a fully featured engine, with a physics engine, sound, skinning and much more. There are many great places to find tutorials for it, such as Unity3DStudent.

Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#6  Edited By KarlHungus
@Driadon: Thanks for the tips. Where do I find ActionScript 3 though. I know it is an Adobe software, but I can;t find it on their website. Is it part of a software package? 
 
@AquaGeneral: Thanks for the link. Unity looks awesome. Double thanks for the link to the Tutorial site!
Avatar image for gamer_152
gamer_152

15035

Forum Posts

74588

Wiki Points

0

Followers

Reviews: 71

User Lists: 6

#7  Edited By gamer_152  Moderator

I'd absolutely say C# and XNA 4.0 are a really good place to start for 2D coding. After that I'd advise moving onto Java, C++, DirectX and UDK among other tools, you need to learn as much as you can as fast as you can but make sure you have the fundamentals down and that at no point is there a major gap in your knowledge. If you do want to know everything about how to develop a game then you've got some serious work cut out for you. You'll have to be able to design, code, program, make music, make sound effects, voice act, organise testing, possibly lead a dev team, etc. If you're genuinely looking into a career in games development then I strongly advise you to pick one path and go with it, and to spend your time not only learning but also building contacts with other potential indie devs and building a portfolio.

Avatar image for joru
Joru

314

Forum Posts

440

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#8  Edited By Joru
@KarlHungus
If you haven't done any programming at all, you should learn that first before attempting to make a game (it's difficult). If you want to make stuff kind-of from scratch (if you want to code more or not bother learning how to use engine tools) just use something like SDL with C++ or XNA (C#). 
 
If you want to use engines used for current games (basically do what modders (and most devs) do) you should check out Unity as mentioned above, also www.udk.com (Unreal Development Kit, arguably the best free tools available, extremely powerful), or if you have a source engine game, you could look at the Source SDK.
Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#9  Edited By KarlHungus
@Gamer_152: Thanks for the awesome advice. I am serious about having a career in game development. My two passions are food and video games. Not just playing them, but thinking about them, analyzing them, and talking about them. Thanks for putting everything into perspective. I know it is going to be hard work, if it wasn't, then everyone and their mother would make games. My dream is to become one of the "big boys" e.g. Ken Levine, Gabe Newell, Todd Howard etc.
Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#10  Edited By KarlHungus
@Joru: Thanks for the advice! Do you know of any good resources for learning C++ or C#? Books, videos, internet guides etc.
Avatar image for joru
Joru

314

Forum Posts

440

Wiki Points

0

Followers

Reviews: 0

User Lists: 2

#11  Edited By Joru
@KarlHungus: For C++ http://www.cplusplus.com/doc/tutorial/ is excellent, just make sure to read everything carefully (it's very concise). For C# you should look at http://www.csharp-station.com/Tutorial.aspx (haven't read this, but it seems pretty good). Once you've learned the language a bit, MSDN (http://msdn.microsoft.com/en-us/default, I use the search option there a lot) is an excellent resource on all the Microsoft libraries, including XNA (cplusplus.com has a similar thing for C++, although the C++ language doesn't have built in graphcis features, you need to use something like SDL (google it) for that). I wouldn't hurry with the graphics part, if you don't have experience, just try to learn the language and make a simple text-based game first. 
 
If you want to code games you really need to enjoy logic problems and at least to an extent, maths (although programming isn't maths, unless you're making a graphics engine or something), you might find it boring if you don't enjoy such things.
Avatar image for gamer_152
gamer_152

15035

Forum Posts

74588

Wiki Points

0

Followers

Reviews: 71

User Lists: 6

#12  Edited By gamer_152  Moderator
@KarlHungus: Wow, that's an enormous goal you've got there. The first thing I'll say (and I really don't like saying this to people but here goes) is that if you want to make games you can't just be in love with games and analysing them, writing about them, talking about them etc. You have to be in love with the process of creating them; a games programmer needs to have a passion for putting code on a page, a games designer needs to have a passion for creating those systems of maths and logic driving a game world, without these things a career in the games industry just isn't possible.
 
I think you understand that with your ultimate goal of becoming a video game luminary what you're essentially trying to do is learn as much as is humanly possible about video games and how they are made, as well as acquiring the skills to make them. Personally, as well as researching and analysing within the world of video games I think looking into subjects outside of video games and applying them back is also a big part of teaching you about games, see how real-world architecture and level design interact, see how cinematography has a place in video games, etc. As well as researching, making games, building a portfolio and making contacts I also think a good route to go might be trying to write articles about the various aspects of video games, it gets the creative juices flowing and really makes you think about and analyse the subjects within games you're tackling.
 
If you want to keep up with games at an industry level then I'd suggest reading Gamasutra on a regular basis and if you're looking for insightful articles analysing games as a whole then The Escapist is a great place to check out. I'd also recommend watching Extra Credts and The Game Overthinker (start from the beginning with this one) which have provided some of the most intelligent commentary on video games I've ever seen, the former especially. As for working your way up to a position like Levine's, while you'll constantly want to be learning about all aspects of games the way you're going to get your foot in the door won't be at a high up creative director position, you'll start lower down and as such you'll need to figure out how you're going to enter the industry, be it as a programmer, an artist or whatever you choose. If it's of any help I've also written a series of blogs on becoming a game designer ( part 1, part 2, part 3, part 4, part 5). Anyway, I wish you the best of luck and hope you make you make it in your chosen profession.
 
P.S. On the subject of games programming, programming games, paradoxically, may not be your first port of call. You'll want to make sure that you're familiar with doing more simple jobs within the code and understanding the fundamentals before you can apply them to something more complex like a video game.
Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#13  Edited By KarlHungus
@Joru@Gamer_152: WOW! Thanks a bunch to both of you. It looks like I've got my next few weeks cut out for me. I've been thinking about blogging my "quest" on Giant Bomb, so that people can see my progress and give me advice on what I'm doing. Both of you guys seem very knowledgeable and I would really appreciate you guys checking it out every once in a while. Thanks!
Avatar image for notsonic
notsonic

302

Forum Posts

50

Wiki Points

0

Followers

Reviews: 0

User Lists: 43

#14  Edited By notsonic

XNA is a great place to start. It will teach you a lot about the process of creating something, defining what happens and when, and how to draw it. The hardest part about XNA is its very bare bones. Its not an engine, just a framework. Things like collisions, physics, etc. are not simple toggles like in engines but things you will have to implement yourself (either by yourself or through libraries you might find.)

These are some great tutorials to get you started: http://www.xnadevelopment.com/tutorials.shtml

I also highly recommend the ones on Microsoft's site especially for collisions and their screen manager class: http://create.msdn.com/en-US/education/catalog/sample/game_state_management

http://create.msdn.com/en-us/education/gamedevelopment

The "problem" with using XNA however is you're limiting yourself to 360 and Windows Vista/7 (and Windows Phone 7.) The important thing is that concepts are almost always the same no matter what framework or engine you use. In the end the language/engine/framework should never be more than it is, a means to an end. Once you understand the concepts its very easy to move between different environments.

Other than XNA I've used Unity 3D which is really nice and full featured. The free version is free which is a steal.

2D or 3D from the design or programming perspective, art assets are the worst setback. Find a friend or realize how the game looks doesnt effect how you have to program it otherwise you'll spend a bunch of time creating assets when you're not trying to be an artist.

If you're a student, MS has free visual studio and 1 year free for xna creators club https://www.dreamspark.com/default.aspx

Avatar image for driadon
Driadon

3265

Forum Posts

763

Wiki Points

0

Followers

Reviews: 0

User Lists: 14

#15  Edited By Driadon

@KarlHungus said:

@Driadon: Thanks for the tips. Where do I find ActionScript 3 though. I know it is an Adobe software, but I can;t find it on their website. Is it part of a software package?

Actionscript 3 is part of Adobe's recent releases of Flash. They have a 30 trial for Flash, just download it and check it out.

Avatar image for karlhungus
KarlHungus

144

Forum Posts

1034

Wiki Points

0

Followers

Reviews: 0

User Lists: 5

#16  Edited By KarlHungus
@Driadon: Thanks!