18
\$\begingroup\$

My sixth-grader is very interested in FPS game development but I don't think he has grasped the magnitude of the task ahead. He is a Halo fan and so his current goal is to make a similar game but better. Heh. I am not going to discourage him though.

I gave him a Steam account and by himself he has discovered Garry's Mod and installed tortoise svn to add packs (and play them). He has also downloaded and poked around in the UDK and trials of Visual C++ and SoftImage. When I say "by himself" I mean he has asked his online buddies for advice and suggestions, and he has watched countless Youtube "how-to" videos (the classroom of the future).

Although I am a programmer my expertise does not lie in games. I am having a hard time understanding what Garry's Mod encompasses. How far can he get with it and what additional tools should I help him to get?

\$\endgroup\$

6 Answers 6

16
\$\begingroup\$

Garry's Mod is a mod of the Halflife 2 engine. You can make your own mods of the Halflife 2 engine using the Halflife 2 SDK, or you can try to modify Garry's Mod through scripts. I don't think you're allowed to modify the source code to garry's mod.

If he wanted to really make his own "halo" type FPS from scratch, then what he'll want to do is work with the source engine, the halflife2 SDK. This is totally free if you own ANY source game (so you probably already have it, since you have garry's mod on steam). This will provide you with a bunch of C++ projects which wrap the source engine and allow you to do really ANYTHING you want with it. Tons and tons of AAA commercial games and indie games with everything from RTS to RPG to FPS are made using the source engine. Its extremely flexible.

That said, it is going to be EXTREMELY hard for your young son to get involved in. How strong are his programming concepts? He's going to have to be ROCK SOLID on C++ in order to start writing his own game / mod using the source engine.

So, if that sounds way too daunting for him (For a sixth grader, I can't imagine one kid being able to get anywhere writing their own video game from scratch, realistically. Old games like mario and mortal kombat had small development teams, he could TRY to write a 2D game from scratch like that, but its still going to be HARD. Those games took like 10 programmers with degrees a year to write. He isn't that qualified and there is just one of him. Modern, 3D, AAA games require teams of 20-50 programmers and billions of dollars. EDIT: okay, millions, I exaggerate. Even if you were the greatest programmer in the world, it would take you forever to write a blockbuster game by yourself. Practically impossible for anyone.)

Then instead maybe try just little mutations rather than a full conversion mod. You could try using the lua scripting that Garry's Mod supports in order to make small changes to the gameplay, maybe add a new item or a new feature. I haven't played around with Garry's Mod's scripting so I can't talk from experience like I can about the source engine.

You mentioned the UDK, which is pretty cool, but again, thats like taking the source engine and starting from scratch. It takes forever, and its REALLY hard.

The way I got started when I was first programming (and this was in 9th-10th grade, mind you) I wrote mutations for Unreal Tournament. They have their own language (unrealscript) but its pretty readable and pretty high level (it reads like java more or less) and the cool thing is Epic has always had tons of support for mods and mutations in Unreal Tournament. So, you could start just writing a mutation that makes rockets go faster, or rockets go slower, and then you can hop in Unreal Tournament and play your mutation. That way, you can start small. If you try to code a whole mod from scratch as your first experience, trust me, you'll never get past concept.

Hope that wasn't too demoralizing. I think its awesome your son is passionate about gaming at such a young age! (He installed Tortoise SVN on his own, and he's seriously in the 6th grade? This kid is a future software developer for sure!). But kids certainly don't understand how much work goes into building their favorite games, and being able to write your own Halo is a pipedream.

I'd say start with simpler things. Have him write pong, and then space invaders. Then go to Unreal Tournament and write some mutations, and when he's good with mutations, then you can think about mods.

And as far as tools, I did my first UnrealTournament mutations in Wordpad! No joke! Its pretty easy, you write it up, you save it, and then you use command line to compile it using the tools that are already provided with UT by Epic Games.

If you're going to work with the source engine, you'll need visual studio. You can probably get away with visual studio express fine, but you may have to download the windows SDK as well if you get the express version. Other than that, just tons of patience, and good programming fundamentals. :)

\$\endgroup\$
5
  • \$\begingroup\$ I don't think there has ever been a game that has had a budget of a billion or greater. \$\endgroup\$ Dec 6, 2010 at 2:58
  • 2
    \$\begingroup\$ "budget of a billion or greater" - Duke Nukem Forever? \$\endgroup\$
    – Cyclops
    Dec 6, 2010 at 3:05
  • 7
    \$\begingroup\$ +1 For answering the question asked instead of saying "Use this instead!" \$\endgroup\$
    – rlb.usa
    Dec 6, 2010 at 20:46
  • \$\begingroup\$ I like this answer the best because it has tons of useful information which is appropriate for the 'learner' tag. Thanks. (The other answers are also useful, so keep them coming.) \$\endgroup\$
    – Henry
    Dec 8, 2010 at 4:20
  • \$\begingroup\$ "I'd say start with simpler things. Have him write pong, and then space invaders." Game Maker and The Games Factory are both excellent for getting into this sort of simple 2D thing. \$\endgroup\$
    – James
    Dec 13, 2010 at 17:28
13
\$\begingroup\$

I highly recommend that you/he check out Unity3D. It's a fantastic game engine with a visual world editor and some solid scripting options. It has a great community and it's totally free to use for indie development.

Garry's Mod is great if he wants to just learn and play around, especially with FPS stuff, but I'm pretty sure you can't make commercial games with it (although I don't know if that's even your son's goal).

\$\endgroup\$
1
7
\$\begingroup\$

When I was around your son's age (13 or so), the thing that first got me into game development was a program called Klik n Play. It was a program that allowed you to make simple 2d games without any coding at all by using a point and click action/reaction Event Editor to "program" it. It no longer exists, but I believe its descendant, Multimedia Fusion (http://www.clickteam.com/eng/mmf2.php), is still supported and available, which boasts a similar low barrier to entry, requiring no programming. The down side to these programs is that the end result might be less than inspiring, as it's pretty much limited to relatively simple 2d games.

Alternatively, I would also highly recommend Unity (http://unity3d.com/), which has some great tutorials, and is similar in functionality to UDK but in my opinion much easier. The pluses are that your son will be able to quickly create some pretty impressive 3d games (and 2d as well), though the minus would be that there is some (relatively little) programming involved. Again, it's easier than UDK, but with similar results. The programming options include Javascript, C# and Boo. As I mentioned, there are some incredible (at least two of which are like 80+ pdfs teaching you how to do a lot of cool stuff) tutorials on their website, which made it a breeze for me personally to learn, although my disclaimer is that I started using Unity having already been programming professionally for several years, which might bias me (easier than UDK though!).

Unity is free. Multimedia Fusion is like $100.

\$\endgroup\$
6
\$\begingroup\$

Mods for Garry's Mod are written entirely in Lua. If he can get a hang of Lua, and learning Garry's Mod API which is really well documented on that Wiki...I think he could get pretty far. He can use the 3d models, maps, and sounds that come with the game, and just start out buy just scripting different weapons and move to more advanced stuff like game objectives as he get's more comfortable.

\$\endgroup\$
4
\$\begingroup\$

I think that there is nothing better to start your games/computer graphics programming than XNA. That is not engine but just library with tons of useful functions and classes. Also allows you to very easily port your game to xbox. There are limitations if you want to make something big, but thats not your sons case for next few years:). My first game was written in it and it opened me door to greater programming in real directx&opengl.

I also recommend to not try to make 3D game for the first try. 2D games are much easier. And doesnt need too much math because you can imagine or draw everything to paper. If your son wants to start programming in 3D. I would recommend him to start study linear algebra, thats what you need in 3D everyday.

Also I wanna encourage him to do it. I was little boy who wanted to make game too. I sticked to that dream and now i am working in movie industry programming renderer for real movies. I can't imagine better job. Computer graphics are so much fun to work with. Same for artists and engineers.

\$\endgroup\$
1
\$\begingroup\$

As far as Garry's Mod goes, I'd probably place it on a level similar to that of Game Maker for use. You can do Lua scripting, and I have played some very nice mods with it (my favourite was called Trouble In Terrorist Town, which played like Call of Duty mixed with Murder In The Dark).

However, it did remind me of the time I played with Unity 3D. To get further, I would probably say Unity3D like Matt Rix has, just because of the resemblance to GMod that it has - most of the action is in the WYSIWYG window, but because the scripting plays a larger part, the customizability is greater too.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged .