• 105 results
  • 1
  • 2
  • 3
#1 Edited by DuderBattalion (269 posts) -

I got this idea from FluxWaveZ's  thread about programming. I was looking around the forums and couldn't find a thread that deals with questions related to Game programming. In Dr. Gertsmann's own words, this being a site about videogames, I am sure there are people like me who like messing around with code and maybe want to build something cool. 
 
Now I know there are a dozen different communities online that offer code advice, but from personal experience, Giantbomb has one of the most active communities on the interwebs. So why not have a place where people could maybe put up queries on places where they might be stuck at in their game projects .. or anything related to programming in general. Plus, if people have something cool going on, this would certainly be an awesome place to get some good feedback.
  
I am personally experienced in C++, some java and am currently learning the ropes in C#. So if anyone wants to hit the community with some code questions, go right ahead !
 
So first question, I am planning to learn more about the Unreal engine. Specifically, create a small 3D tech demo where you can move about and maybe fire a few rockets. Any heads up on a good place to start ? 
 

Artists: 

 For people looking to find artists, maybe you can try out this thread: 

 http://www.giantbomb.com/forums/general-discussion/30/3d-maya-model-project-character-design/456158/?page=1 

Code Problems for the Code Monkeys:

 
For people looking to solve problems ranging from the simple to the really complicated, Gakon5 posted a link for this site called "Project Euler". Check it out ! 
  

Programming tutorials:

C++:

http://www.cplusplus.com/doc/tutorial/  
https://www.dreamspark.com (Free C++ IDE) (Jiggah) 
http://www.devmaster.net/articles/intro-to-c++-with-game-dev/part1.php  (FunExplosions)
Visual studio IDE's are free for students on the Microsoft site
 

Python:

http://python.org/   (Jiggah)
http://docs.python.org  
http://www.pygame.org/news.html (Joru)  

Choosing a programming language: (Delski)

http://www.gamedev.net/reference/programming/features/davegpg/ 
 

Unreal Engine (advanced coding): (Joru)

Links to many tutorials on this forum page: 
http://forums.epicgames.com/forumdisplay.php?f=366 
 

XNA Development (Xbox / Games for Windows Live / Windows 7 mobile):

http://www.riemers.net/ (Delski)
http://create.msdn.com/en-US/   
http://www.xnadevelopment.com/tutorials.shtml      
 

iPhone Development:(Delski again)

Tutorial videos found in this youtube channel: 
http://www.youtube.com/watch?v=abcMmyhKCno  
 
Book on iPhone development: 
http://www.amazon.co.uk/Yourself-iPhone-Application-Development-Yourself/dp/0672330849  
 
Software required: 
  XCODE development platform with a version of the iPhone SDK (You can get these by signing up free to the apple development program, The latest version of iOS is in beta so you can download iOS 4.1 SDK, which they tend to bundle with the version of XCODE that you need). 
MAC OS Leopard or later so basically every MAC from say 2006/2007 is okay for developing for the iPhone. 
License required for distributing apps on the store. This gives you access to placing any amount of apps onto the app store worldwide that go through the approval process.  
    

DirectX: (Delski .. the guy's like an encyclopedia)

http://www.directxtutorial.com/Tutorial9/tutorials.aspx   
http://www.danielloran.com/study/directx/Default.aspx     
http://msdn.microsoft.com/en-us/library/ee416396(v=VS.85).aspx (Joru)   
 

Look Ma', No hands (a.k.a My project = Awesome) (Thanks to X19 for the excellent idea)

 So if any of you has a cool project or anything that does awesome stuff, send me a link and I could post it here. Could be a youtube video, or your own website showcasing your prowess, videogame music, the inevitable Skynet program .. I am kinda leaving it open ended for now. Let me know .. and it shall be displayed to all duders and dudettes(??) out here. I have a few projects I am working on right now .. but it'll be a while before I have anything to show. But if any of you want to contribute, please post your youtube video or link to your blog/website on this thread and I'll display it on the main page.
#2 Posted by FluxWaveZ (19308 posts) -

I like the idea of this thread and I wish I could be able to contribute to it meaningfully.

#3 Posted by DuderBattalion (269 posts) -

Don't worry. I'm a CS major myself .. and trust me, if you do end up liking programming, it's really cool to be able to make your ideas come to life.  
 
I'd encourage you to give it a try. As with everything else .. the initial part is tough, but get through it and it gets really interesting. Good luck with Python :) And ofcourse, if you have any questions, I'm sure some of us might be able to help !

#4 Posted by PufferFiz (1376 posts) -

I am making a xna game. 
http://pufferfiz.net/game/battleshipddx/blog/
currently just trying to get a proof of concept thing done. Hope to have it out by xmas but tat depends if I can get an art guy or not.

#5 Posted by m2thek (42 posts) -

For my final project of Object Oriented Programming last semester, we had to program the board game Ticket To Ride.  
 
The guy is quite eccentric, and the project very long and challenging. It didn't come out perfect.  There were some bugs and it didn't have all the functionality I wanted, nor was it coded nearly as cleanly as I like to (I did about half the work in a group of 4 people), but it works, and I'm proud of it. 
 
Oh, it was coded in Java, as were all the projects for that class.
#6 Posted by DuderBattalion (269 posts) -
@PufferFiz: Checked out your website .. looks pretty neat ! Good luck with the project. I am currently working on creating a game for the Android. We have the wiki up .. but the code's just starting to develop. Here's the link in case you want to check it out:  http://angrybunny.wikidot.com/ 
 
We' be updating it as the semester progresses. 
 
@m2thek: Do you have a link for it ?
#7 Posted by m2thek (42 posts) -

I have it on my computer, but I can upload it somewhere for download soon.
#8 Posted by groin (838 posts) -

I made this site when I was looking for a job:  http://cs.smu.ca/~b_martin/portfolio/ 
I put all of my source code along with some screenshots. The code might be messy because I wrote most it while I had no idea what I was doing (3-5 years ago).

#9 Posted by DuderBattalion (269 posts) -
@groin: First of all .. wooo to the Canadian flag ! :) Man .. I took up Computer graphics this sem but I think I'll have to drop it. Way too many things going on at once.  Btw .. any idea whether that "Fundamentals of Computer Graphics" book by Shirley and Marschener is worth keeping ? Also, do you mind me asking if you are currently working for a game dev company ? I'd be applying to a few at the end of this sem .. any pro tips are always welcome !!
#10 Edited by wefwefasdf (6729 posts) -

I actually just ordered a very basic book for learning C++ a few moments ago. I'm going to be working through a couple books and then try coding a few applications to try to implement what I'm learning. 
  
About how long did you study before you felt you had a pretty good idea of the language? Also, do college classes for programming actually provide useful information?

#11 Posted by Joru (311 posts) -

I've made lots of tests, tech demos etc, and only now trying to finish projects. I've made a game called Connect Five for Android, it's on the market, but it's very simple (with flawed AI that I made in an hour and don't have time right now to improve). I made that just to learn how to develop Android apps. 
I'm currently making a TBS/RPG type of game for it, I don't have access to artists though, so as soon as I get an alpha version I'm thinking of posting here, and maybe people will help out to make it kind of GB themed.

#12 Posted by gakon (1945 posts) -

A few years ago (by which I probably mean six or seven, back to the 6th grade of all places) I tried to learn C++ but I gave it up because, besides being confusing, I couldn't figure out what I'd do with it.  Building actual games would have been far off, or even graphical user interfaces.  I didn't really understand what went in to making an actual game. In more recent years I've picked up PHP, which appeals to me more since it's a core technology of web development, something I actually do.  I guess that is based on C, or at least influenced by C, so understanding object-oriented programming at least gives me a basis to look into other programming languages.  I don't know if that will ever be C or C++ though.  My once-fervent dream of making games for a living (shortly followed by writing about games for a living, which is also gone) has passed.
 
Which is a longer way of saying, this is a good idea for a thread and I wish I could contribute to it.  My "expertise" starts and ends at HTML, CSS (which aren't programming languages), JavaScript, and PHP.

#13 Posted by DuderBattalion (269 posts) -
@SpikeSpiegel: I had a decent progression in languages in high school. Started out with BASIC and then moved on to C++. What I have realised is that it's not hard to learn languages as long as you know your concepts well. So in case you are starting with C++, I'd suggest you concentrate on how Object oriented programming works. The errors are a bit intimidating at first (you miss one semi colon and the compiler pretends the world has come to an end ! :P ) .. but it gets better. Especially when you nail that first problem down ! I have a bit of experience with C++ .. so if you have any questions, maybe post it here and I could try to help you out.  
 
@Joru: Man .. that's super weird. I am .. RIGHT now .. working on a game of DOTS for my AI assignment. Btw .. do you mind if I drop you a couple of questions about Android apps sometimes ? I am just starting up with it .. but you know, just in case I hit a roadblock. Oh .. and if you need an artist .. maybe try posting in this thread ( http://www.giantbomb.com/forums/general-discussion/30/3d-maya-model-project-character-design/456158/?page=1). I saw a lot of artists there .. maybe some might be willing to help you out !
#14 Posted by DuderBattalion (269 posts) -
@gakon5: In case you are still interested in making games (even simple ones), I'd suggest you look at C# instead. C++ is powerful, but kinda confusing at the start. C# resembles java a lot .. plus has an inbuilt GUI editor which makes it easier to code windows applications. Put an XNA framework on top of it and you can make Xbox games in your sleep. It's pretty intuitive actually .. and Microsoft has some really good tutorials online. Also, question for you, how difficult is to learn PHP if you know Javascript ? I have worked on JS .. but thought it'd be good to dabble in PHP sometime.
#15 Posted by groin (838 posts) -
@Venom2112 said:

" @groin: First of all .. wooo to the Canadian flag ! :) Man .. I took up Computer graphics this sem but I think I'll have to drop it. Way too many things going on at once.  Btw .. any idea whether that "Fundamentals of Computer Graphics" book by Shirley and Marschener is worth keeping ? Also, do you mind me asking if you are currently working for a game dev company ? I'd be applying to a few at the end of this sem .. any pro tips are always welcome !! "

  I applied to a few game companies when I was job hunting but their offered salaries were too low when you consider the amount of overtime involved. I settled for a higher salary regular programming job. I have no interest in professional game dev anymore. I would rather do it as a hobby and live a less stressful life.
#16 Posted by DuderBattalion (269 posts) -
@groin: I know .. I have heard the same story in a lot of places. Pay's generally a bit lower than regular software jobs .. plus work load is high. But I am just about to grad now .. I figured, if I need to screw around trying to do something I like .. might as well try it out  now. That way, atleast I know I tried it before I gave up on it.
#17 Posted by wefwefasdf (6729 posts) -
@Venom2112: Thanks! I've always read that C++ is the main coding language used for game development. Is that true? Would you be able to create XBLA games with it?
#18 Posted by gakon (1945 posts) -
@Venom2112 said:
" @gakon5: In case you are still interested in making games (even simple ones), I'd suggest you look at C# instead. C++ is powerful, but kinda confusing at the start. C# resembles java a lot .. plus has an inbuilt GUI editor which makes it easier to code windows applications. Put an XNA framework on top of it and you can make Xbox games in your sleep. It's pretty intuitive actually .. and Microsoft has some really good tutorials online. Also, question for you, how difficult is to learn PHP if you know Javascript ? I have worked on JS .. but thought it'd be good to dabble in PHP sometime. "
I actually know more PHP than Javascript, and I'm mostly a dabbler in Javascript.  Honestly I'm not that qualified to answer the question, but it seems like the biggest hurdle would be learning functions.  Like, I know to split a string in PHP I would write $var = explode(), but as I recently learned, in Javascript you write something like var.split().  So not only is the name different, the arguments are slightly different, and the core of how you manipulate variables is different, because you don't set the value with "=", you manipulate it by stating the variable and then appending a function.  But if you understand objects and classes, control structures, operators, etc. seems like it would just take some adjustment.  Like I said I'm not as experienced as I may have acted (been doing page design for 6+ years, scripting for only 2 maybe), but it probably wouldn't be too bad.  Also, while this is probably cheating, I kinda bypassed learning some of the nitty-gritty of JS by just using jQuery, if you've heard of that.  I probably shouldn't be using frameworks that automate things for me until I have a better grasp on a given language.
 
PHP has a few really valuable things you can do right off the bat, like "include" which allows you to import the contents of an HTML file in a page.  So if you have, say, a navigation bar, you can include it in every page you make, and when you want to change the design of the navigation, it changes on every page automatically.
#19 Posted by PufferFiz (1376 posts) -

Don't get started with c++ its a very powerful language but it will make you hate programming, try c# or python. Then go back when you get the hang of it.

#20 Posted by DuderBattalion (269 posts) -
@SpikeSpiegel: For core games, yeah .. C++ is pretty widely used. Though for XBLA, C# is the language to know. My suggestion would be to learn C++ since if you know that, C# is a piece of cake. Also, C++ is a beast, I have been working on it for a long time but I still keep learning new things about it. I'd also suggest learning a scripting language like Python. It helps in creating extensions to your game code and it interfaces well with C++. Most companies look for a solid programming foundation .. and for Xbox and Windows games, the base is generally C++/C#. I believe PS3 does not have a fixed operating system .. so companies like Naughty dog actually write their own OS and code routines .. but again, as long as you understand the concepts, learning a language is just a matter of time. 
 
@gakon5: I started out with using a notepad for Javascript cuz the machine I worked on at my previous company was probably as old as Pong :X :X Anyways .. looking back, that was a good learning experience. I have heard of JQuery .. but as I said, Notepad has been my friend and companion through my JS adventures. Also, PHP has a function called explode() ... that's an automatic WIN right there ! :D
#21 Posted by Joru (311 posts) -
@Venom2112: Absolutely, I'm no pro, but I do have a bit of experience and I would be glad to help :). 
  
@PufferFiz: I agree with this. You can learn C++ by itself, but don't start making games with it. The language itself is bloated with features and most of the libraries for it are very complex compared to something like XNA. Also, efficient C++ and C programming requires knowing the principles of how the underlying hardware works due to things like pointers. 
 
In my opinion, the most important thing to do is to learn how programming works in general. For games, you should be especially familiar with OOP (object oriented) programming, so something like Java or C# is a good start in my opinion. 
What you definitely shouldn't do, is start off by making a game. At least not one with proper graphics. Just make a console based text game, it will help you understand programming better. 
 
Making a modern game, that isn't indie, will inevitably require you to use some a licensed engine, like Unreal Engine 3 (I'm looking into familiarising myself with UDK, but still need to finish the Android game. Lots of homework right now and so little time). This means, that you will have to learn new API's very quickly, so you have to learn programming in an abstract form, not a particular language. I used C# quite a bit, despite the fact that I never read a single tutorial, only a bit of the reference, simply because C++ is so broad that if you learn it, you are instantly familiar with most relevant programming concepts. 
 
That being said, recently I had to make a simple program for checking tests automatically, and I didn't use C++, I went for C# with .NET. C++ does have .NET, it has general Windows API support, QT, Boost and dozens of other libraries that would have been able to do what I needed, but the thing is, that something like .NET or XNA is very tightly integrated into C#, which makes it more natural and easier to use.
#22 Posted by Zafmg (324 posts) -

Learn theory of programming, and download as many programming ebooks and tutorials and theory papers as possible. Knowledge is power!
 
If you're starting programming, do SICP. It may feel old and outdated, but it teaches you a lot of the really important core conceptual ideas. Also, Scheme is a fun language.
 
Start with a high level language, work your way down. If you're crazy dedicated, you could consider starting with C++ but be prepared for a lot of confusing business along the way.

#23 Posted by Meteora (5787 posts) -

I don't know why, but this thread is great. I'm learning programming in C++ (and quite frankly its hellish), but I never really thought I'd use it for game development purposes. Right now I'm more primarily focused on 3D modelling.

#24 Posted by Joru (311 posts) -
@Meteora: Why do you think C++ is so bad? I honestly didn't have many problems with it, even though I had little prior experience. I guess learning it went extremely slowly for me at first, but I was just a kid back then, if you read a good book or tutorial (I quite like cplusplus.com, it's concise and easy to understand) you should do fine as long as you have a minor grasp (something like high school level) of how programming kind of looks.
#25 Posted by Meteora (5787 posts) -
@Joru: Because I just started to learn programming without any prior experience. Its hellish I tell you. 
 
Doesn't help that our professor sucks at explaining things to us.
#26 Posted by Famov (768 posts) -

I'm trying to make an ASCII roguelike game in c++ and realizing that I'm kinda not good enough for it. It's still a fun project though.
#27 Posted by delski (17 posts) -

@zafmg Brings up a great point about programming in general in that you have to be dedicated to learn low level languages because you can go alot of time not getting anywhere in particular but the rewards at the other end are far more rewarding. 
 
If anyone is a start up programmer i'd definitely recommend C# as a start language because it encompasses all you need to know for games and game theory at the start. The trouble is when you go more 'Extreme' lets says on your programming that because of the way C# manages memory your just not going to be able to put through the 3D graphics you want at the pace you want. That is why developing in C# is suited to 2D style games.
 
Of course also when you may want to go into the industry if your doing studies while the knowledge in C# is helpful most games have to be written in C++ and all engines have to be written at that low level because you obviously need to manage the graphics throughput to gain the best performance. 
 
If your not willing to manage C# and Visual Studio for example try going even higher and going at python scripting you can create things stupidly fast using python but the programming knowledge gained is imo minimal.

#28 Posted by Tearhead (2155 posts) -

I'm really interested in game design, and would like to get my feet wet. So far, I've done a year of C++ and Java, and if you guys can point me in the right direction in terms of programs to download, books to read, or websites to help me get started, I would be very appreciative.

#29 Posted by FluxWaveZ (19308 posts) -

Question: as a hobbyist, what would one do with programming?  I believe I'm being close-minded, but all I can really think of is web development and making video games.  I'm asking because I'm not sure what I would do with programming if/when I get to learn it as I don't maintain my own website or anything and the process of developing a video game sounds hellish, especially if one's doing it on his own.

#30 Posted by Gaff (1668 posts) -
@FluxWaveZ: Plenty. 
 
Don't forget that a video game is still a computer program (wait a minute, who said that on these very forums...). You could probably program all kinds of fun stuff, from dice rollers for your pen and paper role-playing to more elaborate stuff such as your own browser (sure helps that there is a certain open source browser out there).
#31 Posted by FluxWaveZ (19308 posts) -
@Gaff: Yeah, I suppose that one can basically develop any program they would want.  I guess I'm just not sure what I would do, or focus on, if I had the ability.
#32 Posted by delski (17 posts) -

@TearHead Definitely check out some websites related to different APIs that the different languages use. C++ usually uses DirectX and C# is mainly used with the XNA API. I find websites a bit easier laid out than books, Heres a good couple of examples: 
 
[DirectX]  
http://www.directxtutorial.com/Tutorial9/tutorials.aspx 
http://www.danielloran.com/study/directx/Default.aspx    
 
[XNA] 
 
 http://www.riemers.net/ 
 
In the case of DirectX you need to start at DirectX 9.0c imo it will give you the best base and you can create very functional 3D projects. XNA you can pretty much start with any version but be careful and be sure to follow tutorials like riemers. 
 
For programming decisions in general just found this great article on gamedev that goes through deciding languages and APIs to actual start points it's really good.  

http://www.gamedev.net/reference/programming/features/davegpg/    

#33 Posted by gakon (1945 posts) -
@FluxWaveZ said:
" Question: as a hobbyist, what would one do with programming?  I believe I'm being close-minded, but all I can really think of is web development and making video games.  I'm asking because I'm not sure what I would do with programming if/when I get to learn it as I don't maintain my own website or anything and the process of developing a video game sounds hellish, especially if one's doing it on his own. "
This was my exact quandary when I tried to learn C++.  If I was going to make anything resembling a game, it would be based in a command line to start.  That's what drew me to PHP; it's a language that, for web developers, allows you to create dynamic content, so immediately I understood how it would be useful to me and expand my toolset as a web designer. 
#34 Posted by ShaneDev (1696 posts) -

I do Java in my course at college but I kinda wanted to C++ like the games guys but not really for games just so I know it. I never looked into building games with Java but maybe I should just for fun.

#35 Edited by DuderBattalion (269 posts) -
@Tearhead: If you have some experience in C++/C#, the XNA framework is a great place to jump start building 2D games. Here's a link you could check out: 
http://www.xnadevelopment.com/tutorials.shtml  
 
You would need to have Visual studio and the XNA framework installed for it to work. The installation instructions are given on the site. If you want to understand the concepts that go into building games, you might want to check out Jason Gregory's book on Game Engine Architecture. It's more of an overview of what are the different components while building a game. 
 
@FluxWaveZ: Being a programmer actually opens up to a lot more careers than just web development and videogames. Depending upon how deep you want to go coding in your career, you might end up at different places. For example, companies like Deloitte and McKinsey hire techies as Business technology analysts. You act as a consultant to various clients and help them convert their requirements into technical products. You would probably never code, but understanding and applying sound software design is critical to your success. An example would be, designing a new financial sub-system for say, Bank of America or something. 
 
If you want a job that has more coding involved, you would probably be trying for companies like Google, Microsoft, Amazon etc. Companies which have a team of dedicated people devising new ways to make their products perform better. A lot more coding, but it's a good challenging job. Plus, techie companies like these are generally more laid back. You can probably wear jeans to work .. and work hours are flexible. 
 
Hardcore coding would probably get you into IT positions maybe, or building core products, like OS drivers or the next best algorithm or even the next Unreal engine. Though it takes a while to get to these positions .. lots of experience. So you'd probably start as an entry level programmer and then find your niche. 
 
Anyways, as you can see, there are varying applications to your technical skills in the real world. Engineers are generally values for their analytical minds, and you'd be surprised at how engineers actually get hired in diverse sectors such as finance, consulting, risk management etc on top of the regular programming positions. 
 
Hope this clears out at least some points for you ! :)
#36 Posted by delski (17 posts) -

@ShaveDev Java is a great language for building basically anything besides 3D games, it's even great for 2D games because obviously most of the games used for the web are java applets.  
But I'll stress that C++ provides a vast programming knowledge even relating to hardware instructions and memory management. C++ is almost I feel a must for people interested seriously in ANY type of software development.

#37 Posted by DuderBattalion (269 posts) -
@Meteora: Yeah .. C++ has a pretty steep learning curve. And it gets even more frustrating when there's no one to explain what is wrong. But having said that, you are more than welcome to post any queries here if you do get stuck .. and we'd try our best to help !
#38 Posted by gakon (1945 posts) -
@Venom2112: You might be interested in checking out Project Euler, a site for programmers and math geeks.  Basically what it does is present you with some kind of immense mathematical problem that can only be solved with the aid of a computer.  So you write something to solve the problem, give it the answer, and then it tells you if you're correct.  If you are, it gives you access to a message board where people post their solutions. As an example, the first problem challenges you to find the sum of every number that is a multiple of 3 or 5, and less than 1000. I did it in maybe 12-15 lines of code, and some other dudes did it in 3 or 4.  So you learn a thing or two.
 
Unfortunately I've only solved the first problem (my PHP script for the second problem hangs whenever I run it, and overloads my localhost server somehow), so I can't claim to be an expert, but the site is a really neat idea.  Seems like it would be a good way to learn a new language, and it also makes you think analytically.
#39 Posted by DuderBattalion (269 posts) -
@gakon5: Project Euler .. BOOKMARKED :D  Seems interesting. I'll post it as a link on the top of this thread, so other people can try it out. Thanks for the heads up gakon !
#40 Posted by X19 (2304 posts) -
@Venom2112: Hey man i'm trying to get threads like this together in one place. 
 
Please check out my thread and see what you think.
#41 Posted by DuderBattalion (269 posts) -
@X19: Hey .. it's a pretty neat idea. But I am not very sure how you plan to implement it. It's hard to get everyone to post in just one thread, but maybe you could keep it updated with all the cool stuff people do on the site. Feel free to link this thread on yours .. 
#42 Posted by Shirogane (3563 posts) -

Eh, sure, i'd be up for it. I'm graduating my games programming course this year. 
C++ is currently my best language, but i've done C#, Java, Basic. 
Bit of C, and i've done some C# XNA stuff too. Also currently using the Gamebryo engine for our final project.
#43 Posted by CaptainTightPants (2834 posts) -

Are there any books you can buy on amazon or online that would be good to get me started?

#44 Posted by Gamer_152 (14058 posts) -

A very good idea for a thread. Personally I have experience programming with Visual Basic, C#, C++, XNA and some simple HTML and have been programming for about three years.

Moderator
#45 Posted by Jiggah (308 posts) -

If people are in need of IDEs to practice programming.  MS has a site that allows students to use full products of their development software i.e. Visual Studio 2010 Professional, XNA Game Studio, etc for free.  You just need a Live account (I believe a 360 account works) and be a verified student at a university/college (don't think it covers highschools, not 100% sure).  This is not the same as MSDNAA.  I had to use this site because my university could not afford to get Server 2008 licenses even though they approved the networking book for Server 2008.
 
https://www.dreamspark.com/  
 
 Again, full fledge working software for non-commerical, personal use only.  It'll allow you to practice with professional toolsets.  There are, of course, free software like Code::Blocks for C++ and Python can be downloaded for free off the official Python website. 
 
http://python.org/

#46 Posted by FunExplosions (5407 posts) -
@Venom2112: Hey man (or anyone else), I've been working with Game Maker (I'm supposed to be embarrassed about admitting this, right? 'Cuz I am), and have made a character run, jump, shoot, kill enemies, etc., and have recently just been editing the hell out of sprites, but I've come under the impression that Game Maker is a waste of time and detrimental to success. That being the case, I'd like to start with another program as soon as possible. Thanks to FluxWavez's past thread, I learned of Python. I don't want to know if that's "a good place to start." I want to know what the best place to start is. I'm a hard worker, but I just need to be put into the right direction.
#47 Posted by Shirogane (3563 posts) -
@FunExplosions said:
" @Venom2112: Hey man (or anyone else), I've been working with Game Maker (I'm supposed to be embarrassed about admitting this, right? 'Cuz I am), and have made a character run, jump, shoot, kill enemies, etc., and have recently just been editing the hell out of sprites, but I've come under the impression that Game Maker is a waste of time and detrimental to success. That being the case, I'd like to start with another program as soon as possible. Thanks to FluxWavez's past thread, I learned of Python. I don't want to know if that's "a good place to start." I want to know what the best place to start is. I'm a hard worker, but I just need to be put into the right direction. "

What do you actually want to do? Proper programming, or scripting type stuff? Try out XNA if you want to do programming stuff. If you want to do scripting stuff mainly you should probably check out some of the game engines out there like Unity. That said, you might have trouble learning that, it's a fair bit to take in.
#48 Posted by Joru (311 posts) -
@FunExplosions: For python, you should into some general tutorials for it (should be very easy to find with google) and then you could use something called  pygame:  http://www.pygame.org/news.html. It's a library for making games, and it's quite easy to use. You should look at the tutorials for it at the site and try to make something really simple like TicTacToe.   

And as for Game Maker, I think if you use it you're more of a game and level designer, rather than a programmer. It's not bad, I've seen people do cool stuff with it and I think in some ways it's even similar to developing with the UDK (Unreal engine 3 development kit). UDK uses something called Kismet (you can google Unreal Kismet to see what it looks like) that allows you to do pretty cool stuff without programming. If you want to do something that isn't an fps or do other more major changes in how the game works, you obviously have to code, but many things in modern engines can by done in ways similar to Game Maker, simply because it saves a lot of time when the game designers need to do small changes. 
 
Do keep in mind though, that game programming is pretty complex. A game is a rather large program that has many different systems working at once, and that can be difficult to manage (especially if you're trying to make a game engine - the thing that actually does that). This is why you should start out by making something simple - to get used to the structure of a game so that when you do start a larger project, you don't have as many problems due to inexperience. They sometimes crop up in the middle of development and pretty much require you to rewrite most of the code, and that can be extremely annoying.
#49 Posted by DuderBattalion (269 posts) -
@Resident4t: If you are familiar with C++/C#, the XNA tutorials online are an excellent place to start. If you aren't comfortable with programming, then I'd suggest starting up with something simple, just build a few console apps that help you get familiar with what classes and objects mean. I haven't really read a book to learn code, nowadays everything is online. All you need is some time and patience.  I found "http://www.cplusplus.com/doc/tutorial/" to be a good place to start. Once you have the basics down, you can then move on to XNA, 2D games and then eventually to 3D awesomeness :D
 
@FunExplosions:
 As everyone else mentioned, GameMaker is more about scripting, and if you really want to make good games, you need to learn how to program. Scripting engines don't generally produce optimized code, and if your game is anything more than casual, it's probably going to be 10 times slower than it needs to be ! For getting into game programming, the absolute best place to start is C++, though C# has an easier learning curve. I have heard that C# is quite competent for 2D games but it kinda dies out on more complicated 3D games. So yeah, C++ if you wanna take on the beast :) C# is an easier entry into the C world though. Ohhh .. and as Jiggah mentioned, C++ IDE's are available on the Microsoft site, free for students (well American students atleast), and I find Visual studio to be a pretty solid IDE. Also, most tutorials online kinda assume you are working on Visual studio so it's easier to follow if you are new to programming.
#50 Edited by groin (838 posts) -

For all you that are interested in 3D game programming, most participants in this thread seem to be unaware that game programming is math heavy. You will need a strong foundation in linear algebra to do anything beyond copy and pasting from tutorials. It is simply not enough to learn a programming language.