Sign in to follow this  
zcmrfrodo

COMPLETE newb here

Recommended Posts

zcmrfrodo    100
Hi


I've been playing several of my favorite FPS games lately, and have decided that I want to create a mod for one of them. But so far my quest to learn game development fundamentals has felt more like slamming repeatedly into a brick wall instead of a fruitful journey.

I started reading a book called "Beginning C++ Through Game Programming," and have gone over many C++ intro tutorials and read the beginning pages of other C++ intro books, but so far i havent gotten anywhere. Each resource says pretty much the same thing, they tell you to load helloworld.cpp(or gameover.cpp), then proceed to [i]explain[/i] every little detail about the code. My question is: Doesn't learning happen through [i]doing?,[/i] so why are all these books [i]explaining[/i] things when I am lacking [i]doing [/i]experiences to attach them to? I also took a intro to C++ course a few years back, of which I only remember a few things. I also downloaded VisualStudio 2010 express and watched the beginner videos, but the videos were created with visual studio 2005 whose libraries seem to be different from 2010, so what help is that?

I really do not want to spend money for school until I have a good base knowledge of what I may study. I hear that many game developers started their careers by making small mods to already existing games (quake mods, doom mods, unreal mods, hl mods etc.)


Can anyone point me in the right direction?

Share this post


Link to post
Share on other sites
landlocked    103
[quote name='5 fps guys' timestamp='1307852466' post='4822281']
Unity is $1,500? Ahh no problem, let me get the penny-purse. Well, that FAQ is helpful no doubt. Lets see what GameMaker Lite can do.
[/quote]
Unless you made 100k last year Unity is free. If you made 100k and you just don't want to pay out 1.5k then you're just cheap. [img]http://public.gamedev.net/public/style_emoticons/default/laugh.gif[/img]

Share this post


Link to post
Share on other sites
Mayple    187
[quote name='5 fps guys' timestamp='1307841207' post='4822240']
Hi


I've been playing several of my favorite FPS games lately, and have decided that I want to create a mod for one of them. But so far my quest to learn game development fundamentals has felt more like slamming repeatedly into a brick wall instead of a fruitful journey.

I started reading a book called "Beginning C++ Through Game Programming," and have gone over many C++ intro tutorials and read the beginning pages of other C++ intro books, but so far i havent gotten anywhere. Each resource says pretty much the same thing, they tell you to load helloworld.cpp(or gameover.cpp), then proceed to [i]explain[/i] every little detail about the code. My question is: Doesn't learning happen through [i]doing?,[/i] so why are all these books [i]explaining[/i] things when I am lacking [i]doing [/i]experiences to attach them to? I also took a intro to C++ course a few years back, of which I only remember a few things. I also downloaded VisualStudio 2010 express and watched the beginner videos, but the videos were created with visual studio 2005 whose libraries seem to be different from 2010, so what help is that?

I really do not want to spend money for school until I have a good base knowledge of what I may study. I hear that many game developers started their careers by making small mods to already existing games (quake mods, doom mods, unreal mods, hl mods etc.)


Can anyone point me in the right direction?
[/quote]

Hi there!

I highly reccomend you take a step back and just relax for a moment. When you are ready to approach it understand that you will fail. You will create something, and you will fail again. Then suddenly you will fix the problem and the first things you failed on happens again. Its a learning experiance that is caused though ephinay's(sp). I am a web programmer mainly however I have had to write programs to interface with peoples games. I cannot begin to fathom the amount of times I have been just seriously stumped, been in the shower and then it snaps in my head how to fix or start to work on something.

Now that above really isnt your problem. What is sounds like is you set yourself up for failure from the beggining. C++ is a very very hard steep learning curve to learn as a newbie. I am not saying its impossible, but its pretty tough to grasp if your just starting out and don't have the time and energy to do it. I would reccomend looking at picking up something a little easier and start making smaller things than just straight mods. Mods are great, and they teach you alot but they aren't going to teach you everything you need to know. First off is fundementals of programming, ask your self these questions:

Do you know what a variable is?
Do you know basic math procedures?
Could you name these? >=, ||, &&, !=
Do you know what an array is?

These are all basic fundamentals which help out so much. If you want to continue your programming lessons that you have and want to actually be able to do them like they were presented in 2005 VS, then I suggest you get the Code::Blocks dev studio. It will allow you to freely type bewteen before 2010 standard and the new 2010 standard that M$ is forcing down peoples throat.
[i]*MS VS 2010 incorperates the 2010 style standard of C++ programming and the compiler is very strict on recieving only 2010 style, IE declaring an INT auto will force the compiler to hate you*.

[/i]Now for my personal reccomendations, if you want to mod a game, or make something modular for a game I highly reccomend you pick up LUA. Its very very easy to learn, its basically pure english in the form of programming. You can use it in popular MMO games. *World of warcraft, rift* and you can play with a bunch of settings to see how it mods the game.

If you want to learn a language which is fairly easy I suggest you look over learning Python, Python is a very easy language to learn, I sadly had problems with it though being a web programmer as it conflicts with the langauges I know and then I have an inner struggle inside my head. If your not a PHP/ASP programmer than Python should be fairly easy to pick up.

If you want to learn console gaming, your best bet is to learn some C#/XNA. Don't expect yourself to make a game overnight, or over the next week. Its going to take time, you will throw it away, come back to it, throw it away again, and then delete it. Then maybe your spark for a game will happen. That calculator you learn to build, everyone has probably built, however its fundimentals your learning, not making a kick ass game!

If your looking for more of a Drag and Drop style, editor, powerful tool and easy scripting I would reccomend using Unity. Unity is a very powerful tool which allows you to click build and edit alot of properties that you usually have to program in. The programming script language known as UnityScript is built off Javascript and is extremly easy to learn. While your at it, start learning some C#, next thing you know you got a game!

-Mayple

Share this post


Link to post
Share on other sites
Khaiy    2148
As a general comment, programming is something that you learn by doing for sure. But you have to know [i]what[/i] you're doing, hence the explanations in your books.

If you were learning a second language, say a dead one like Latin (since you won't be able to immerse yourself in C++ all day every day), do you think that you could just start writing out Latin phrases, and reading Latin translations of famous books? Of course not. You need the explanations like grammar and syntax before you can [i]do[/i] anything. And even then, there will be a while before you can do anything of note on your own. And until that time, you'll be putting together crappy sentences using the few words that you actually do know. You certainly aren't going to be able to write a paper or carrying on a meaningful conversation with someone else.

It's unreasonable and a bit impetuous to complain that the first chapter of your book dares to explain things to you. You want to do something? Type out the code in the book. Especially at the beginning, that's what you're going to be doing in learning to program. Once you have a few more concepts under your belt (and it won't take all that many), you can branch out on your own.

Play around with it, get it to do different things than the book says, or do them in a different way. Experiment in combining different things you've seen before to see what effects you can produce, and how well they work. But at the start, what did you expect? In hello world, you learn about cout . What more do you expect to be able to do with that? Especially if you can't be bothered to be shown how it works?

The explanations of how data is being manipulated and what the code is doing is what will allow you to do stuff on your own. You'll get there, and the more motivated you are to do stuff on your own the faster you can make that happen. But don't whine that intro programming books have the gall to try and teach you what it is you're doing.

EDIT:

What I wrote above relates more to learning to program directly as opposed to trying to mod a game specifically. I assumed that you were interested in the programming side moreso than the modding side since you were starting with general introductory programming textbooks. If your goal is to mod, then tackling C++ itself from scratch is a slow way to get there, as you've discovered. Have you tried googling around for tutorials on modding your game of interest? If not, that would probably be a good place to start.

If you don't understand concepts in a tutorial, that would be a good time to start digging into that subject via textbooks or possibly online tutorials, depending on how advanced that particular topic is. It probably wouldn't be a bad idea to mix the two a little bit as well. Play with mods for the game for a sense of accomplishment, and go through the educational texts to gradually increase your understanding of the language and programming in general.

There is no path to developing programming skills that does not include understanding how the things you use in code work. You are unlikely to get a well rounded grasp of that by experimentation alone-- at some point something won't work, and you won't know why, and the only place you can go is a reference material where you will be reading explanations of how X feature works. In vastly more complicated detail than anything you'd find with "hello world", no less. But you can certainly get started modding without too solid a footing in programming.

Share this post


Link to post
Share on other sites
Hodgman    51328
[quote name='5 fps guys' timestamp='1307841207' post='4822240']
Doesn't learning happen through [i]doing?[/i] I hear that many game developers started their careers by making small mods to already existing games (quake mods, doom mods, unreal mods, hl mods etc.)[/quote]A lot of people learn by [i]doing[/i] (myself included), not everyone though.
I starting learning C++ and decided to make an ASCII RPG, but didn't get very far, because, well, I sucked at C++ and had trouble learning from my books.
I got my first [i]real [/i]C++ experience by downloading the HL1 source code and messing about with it. To begin with, I'd just find numbers like beam colours, or number of pellets per shotgun blast, etc, tweak them and recompile, and then celebrate having [i]done[/i] something! I then followed more and more complex tutorials from the HL scene, like adding a new weapon, or changing a monster's AI, etc and learning bit by bit by making small changes to existing systems...
I kept doing this for six years until I understood every last nuance of the HL1 code-base [img]http://public.gamedev.net/public/style_emoticons/default/laugh.gif[/img]

Share this post


Link to post
Share on other sites
jyk    2094
[quote name='5 fps guys' timestamp='1307852466' post='4822281']
Unity is $1,500?[/quote]
As noted above, Unity has a free version as well.

Share this post


Link to post
Share on other sites
zcmrfrodo    100
[quote name='jyk' timestamp='1307891174' post='4822401']
[quote name='5 fps guys' timestamp='1307852466' post='4822281']
Unity is $1,500?[/quote]
As noted above, Unity has a free version as well.
[/quote]

Yea, its free for only 30 days.

Oh wait no, yea they DO have a free version. ok. got it.

Share this post


Link to post
Share on other sites
jyk    2094
Hidden
[quote name='5 fps guys' timestamp='1307905208' post='4822485']
Yea, its free for only 30 days.[/quote]
No, the free version is free, period (provided you're under the 100k limit, as mentioned previously). What you're referring to is the 'pro' trial, which allows you to use the features of the 'pro' version for 30 days on an evaluation basis.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this