From Coder to Game Designer?
"I am a coder by trade, so I would like to try and get a job as a game designer. What kind of experience (besides other game company experience) grabs attention of gaming companies? Project Management experience? Software Architecture experience? Create a design document (high and low level) for a game?
Most people say 'You need a demo or create a game for gaming companies to consider you', but the time it takes to make something like that isn't available to all; yes, I understand that most gaming companies require long shifts, which I am fully capable of doing, but that isn't the same as having the extra time to design and code a game. Is there anything besides a lot of luck that will help get a job in the industry as a designer? As a side question: Do designers make enough to support a family well, or is the pay pretty low?"
IMO, that is a gross word. I am pretty sure it is not even a real word. The abbreviation of "source code" to "code" is common, and betrays a lack of education and poise. The further corruption of this noun into a verb, "to code" (what's wrong with "to encode"?) is likewise an abomination. And I refuse to believe that anyone has tried saying "coder" out loud. Try it. You like how that sounds? Didn't think so. FTLOP, let's just use "programmer".
Karma: Good (despite my invention of the Karma: sig)
Join in Tux-Racer or other open source games.
Without having to have many-many spare hours you can do something demonstratable and perhaps discover if game-coding really is for you after all.
Sam
blog.sam.liddicott.com
You don't have time to design and create a full-blown massively multiplayer game, fine, I understand, I barely have free time. Have you at least taken the time to build your gaming related coding skills?
How familiar are you with the various 3D interfaces, have you built small demo apps to teach yourself anything? How is your knowledge of physics and calculus, been there done that, have a textbook on the shelf or in a box somewhere? Or have you been touching up the old math skills lately?
See where I'm heading, by taking an active interest, learning the basics, understanding what's involved, you are making yourself more attractive as a prospect. If I was looking for folks, your experience would weigh in well, but how much am I going to have to teach you from scratch. Compared to someone who at least has done some short demos, or has built their own games, you're looking like a lot of extra work.
You mention design as well. Have you ever sat down and roughed out a complete plan for a game? Planned out the artwork, the psuedo-ai, the plot, the music.
Here's my 0.02USD. Build a game from scratch (I know what you said, hear me out). It doesn't have to be Quake IV, build a toddler game. Something that talks and puts up pretty pictures when a kid hits a letter on the keyboard.Pretty basic sounding, but it's complex enough to give you some time with developing the app (make it cross platform to really impress) designing the app, test usability on peoples children, go all out.
You may find that you absolutely despise game development. I know I did. I think a lot of people have a pipe dream about how cool it would be doing game development, and the reality check is might harsh.
It's hard to do game programming well. It's a very specialized skillset not easy to pick up as you go. Game companies are under huge stress to get the thing to market, right now. Hence they don't want to mess around with someone who is extremely interested but has no experience, because by the time they have got you up to speed they are already going to be out of business, etc.
As I said in the subject, this is just what I've heard. If this is true, then a game company is going to be interested in one thing--"What can you do?", and they will want to see proof of that with the corresponding "What have you done?".
Therefore, I think your best bet is to gain some marketable experience. One person has already suggested working on an open source game. Sounds like as good an idea as any. But, although you may have to do whatever is sitting there to be done if you join an established product, I think you would fairly quickly need to move in the direction of doing something that you can easily demonstrate as something that _you_ did.
You say you are interested in design. Maybe you could put together a lightweight demo that shows that you understand gameplay/ai/whatever you are trying to get a job doing?
If I were doing this, I would try to get in touch with someone in the industry and ask them what you need to be able to do, technically, to be able to get the job you want. Then do it.
Like another poster said, you might find out that you really don't like the work. That is valuable information, too.
Liberty uber alles.
Getting A Job In The Game Development Industry
How To Get A Job In The Gaming Biz
So You Want to be a Game Designer?
You Can Get There From Here
(At least two of these articles have sections pertaining to programmers.)
A common thread throughout the articles seems to be that you should know someone who already works in the gaming biz.
If you have been succesful in finding a job, read this:
You've Been Given a Job Offer! (Let's Try to Avoid Getting Screwed)
plus a quote:
A former aqaintance of mine designed a game which he mocked up in Visual Basic and sold to a real game company. The game company rewrote it, but used his story/structure/etc. He had a day job, too. I don't think the game went anywhere. But the fact that he was able even to do that suggests to me that a "real programmer" would have just as much chance. You might not get paid to do your first one, but if you're any good it would get your foot in the door, I would think.
If it's the design that you are trying to emphasize, try doing it in a RAD environment, like REALbasic (I know, it has the word "basic" in it, but it's really quite good. At least the Mac version is.)
(Wow, I'm really asking for it--praise for a Basic and non-disparaging comment about a Mac in the same breath.)
Liberty uber alles.
But anyway... you want to design games? What's that got to do with coding? If you want to work for a gaming company, you need to know one of the following:
When you are an expert at at least 2 of them, you can start thinking about designing a computer game.
--jdp Maintainer of VisEmacs
So, how would I go about getting into game development? I'd look for a position as a developer doing the sort of game work I want to be involved with, with the intention of evolving into a lead developer/project manager in the nearish future.
I would not expect to be dropped into a game dev project management position without a year or more of project management experience, particularly if I hadn't had any game PM or development experience before.
But, besides the above, I have to wonder if what you think is the role of the project manager is what the role really is.... My understanding is that the PM tends to have a lot of responsibilty, but not as much as design control as people sometimes think. For larger companies much of the initial design comes from "on high", so to speak.
Anyway, hope this a little useful.
"Why should I be content to simply live in this world, when I, as a human being, can CREATE it?" - Oertel
I work for a company doing mobile games, and while I can't say we have the niftiest of games in the world, we're doing well.
The cool part about smaller companies is that we have a collective pool of people working on game designs. Basically, anybody can submit a cool idea, and we have a group that consists of graphics artists, coders, and product managers like myself who work out game concepts. We don't have any real restrictions as to who can attend those meetings.
If you have Java skills and feel comfortable with J2ME, I'd definitely look at the mobile gaming side, as people are looking for coders and there is no hard-set design style for that area yet, as there is in, say, the console market.
The power of accurate observation is commonly called cynicism by those who have not got it. - G.B. Shaw
If you are in the UK then a good place to start is to read a magazine such as Edge which has lots of adverts for positions in it's recruitment pages (along with yearly features about how others have gotten started working within the industry).
I guess another source of good information is the Gamasutra website.
I have friends who have gone on to work for games companies and they are encouraged to tell the company about other good people... So just knowing someone who can certify your qualifications is one of the best ways to go.
as a programmer trying to make two transitions: computer professional -> game industry -> game designer, your odds are pretty terrible.
these days, a coder/designer is extremely rare. you will find them at small independent shareware type devs, but not at larger developers.
a designer HAS to understand not only the basics of gameplay, but also design documents, write the game manual, level design, and tie in art/technology to make something fun. it does help (wrt being adept at using a level designer), but is not a main issue. designers are more often from other more creative industries, like writers. so in a way, your technical background could hurt your chances.
payscale wise, you won't be able to make the transition to a single game designers wage with a family. to get positioned into a game designer, MAYBE you can squeeze in as a level designer implementing written specifications. but that will mean drastic changes in lifestyle.
programmers who are in the game industry and making decent pay (almost never necessarily on par with the tech average) usually start off being paid beans in QA/play testing and then work their way up.
for a better sense of pay, check out Game Developer Salary Survey. mind that the majority of developers are in CA, with higher cost of living, so don't think "WOW, programmers average $65k a year"
Having spent 2 years as a senior programmer at a game company, I would reccomend you ask yourself if you really understand what you said about long shifts.
:)
If you can't find the time to make at least a simple game, you are never going to be able to deal with working for a game company (I know I couldn't, which is why I left), many of which will require you to pull 14-16 hour days during crunch mode, which often lasts several months, and happens several times a year (e3 demos, releasing a game, producing demos to get project funding, etc).
Having said that, I know at least one programmer who came on right out of college and worked his way into a design position pretty fast. All he did was work hard, and contribute a lot to the game design process while he was working as a programmer. It quickly became obvious he was good at design, so he was put in a design role. Getting into a game company as a programmer would be a good start, and if you really are talented as a designer (just wanting to design games doesn't mean you *can* design fun games) and express your desire to management, you probably will get there pretty fast.
Personally, I'd rather code, and work an 8 hour day.
If you know someone who already works at a gaming company or in the industry, talk to them, keep contact going, tell them about the stuff you're working on. In just about every profession I've seen, networking (as in people) is just as important as experience, portfolio, or education. Having someone suggesting to their manager that they take a look at your resume gives you that one extra shred of credibility.
Find me in ~/.sig
> As most coders, I'd eventually like to crack into the gaming industry.
If by "coders" you mean programmers, I don't know where you would get that idea. Maybe amongst your peers. While writing games does indeed require great skills in a lot of areas, many programmers tend to aspire to slightly more lofty goals for their creations than to merely capture the attention of distracted teenagers for brief periods of time.
FIND the time. Got a laptop? Take the train in the morning. Hack code. Sunday mornings get up at 6am, 3 hours before the wife, and go sit in the park and code. Stay up 2 hours after her. Code code code. Sitting in a boring meeting? Sketch. Need to use the men's room? Take a copy of Game Developer's Magazine.
Get it? No magic bullets here (maybe there'll be some in your game, though) or in any industry switch that needs such specific experience.
And for the love of god don't try to jumpstart it by reading any books with "Extreme", "Black Art", or "21 Days" in the title. They take away from your coding time.
www.HearMySoulSpeak.com
The pay you make may be enough to support your family but why would you be willing to work 14+ hour days if you do indeed have one? Especially if you have kids! Or was that a what if situation?
So you want to be a:
This assumes you have the requisite intelligence and aptitude for the position. It's possible you don't, and that always sucks. Generally speaking, any position requires a background. I know one guy who graduated the year before me in EE went to work for Electronic Arts (Hi Jess, if you're reading this). A background in physics and calculus was a definate asset. If you don't have this background, you'll have to get it. Start reading.
Nobody will listen to you right off though, even if you have a degree. So save up some money to live off of, move back home, live in a slum, and sacrifice six months or a year of your life becoming a master game programmer. Write code to demonstrate physical principles. Make some AI demos. Write some catchy action games (no, some stupid thing won't cut it anymore). Get on the mailing lists. Compete in competitions. Get networking, the kind without cables. No, this isn't easy. Yes, you have to live poor. Yes, it will be worth it. In short, go learn, and make time to get the skills you need.
This is all extremely obvious, but if you aren't willing to put the time into it, it's unlikely you'll be able to handle the pressures of game development in the real world, because it's not all roses. Of course, doing that if you have other obligations like a wife or kids is damn near impossible, but that's a job hazard, since 14+ hour days with unpaid overtime are the norm due to horrible management and design practices in the software world. That's another rant, though.
Have fun :).
..don't panic
I was working at a big game company for 2 years when our project got canned. The company decided that real time networked games would not be a major seller in the near future. So everyone got canned, except for a few who were allowed to remain for a few days to try to find work with other game teams. I interviewed with most of the teams. They all needed people with game design experience, 3d graphics, some kind of AI background (very important), micro-coding and assembly/optmization knowledge, and knowledge of the inner workings of the latest game consoles' rendering pipelines.
Having worked with RenderWare is a big plus, if the dev house is using it. Also, knowledge of 3D modeling software and formats (Maya, 3D Studio Max, etc..). DirectX or OpenGL is a must. They often need to write plugins for these packages.
I had very little of this, so I was not even considered. Dont mention the words 'Java', 'Object Oriented Programming', 'High level languages', 'Design Patterns' or anything else that might give them the idea you are not a complete hack. Hope that helps. The game industry is very fun, I enjoyed the two years I had in it more than any other job.
Me personally, I have the same ambition. I've always wanted to work for a game company (Blizzard was my choice a few years ago, after Starcraft came out...it just plain blew me away). My buddy and I had the goal of working for one and then (eventually) starting our own. We figured we've played plenty of games in our lives, we know what people like, why couldn't we do it?
To start the process, we're designing a MUD based on Operation Overkill (BBS door game from days long gone). I know, no graphics, but even if I went into game programming as a career I would want to stay away from the graphics part of it and concentrate on the algorithms, math and gameplay. MUDs aren't terribly complex, so we're designing the MUDlib from scratch (read: every line of code is ours). My hope is to be able to gain a better understanding of game design, mostly the AI and shared world time between entities. I figure, what's a game like Diablo except a MUD that has a really snazzy frontend?
My hope (and I could be completely wrong, someone please tell me) is that if I can intelligently speak about AI, sketch out sample data objects that would be used, give a flow diagram for a game and even write some quick code, and point to an operational (if not tremendously popular) game that I've designed, I should be able to get my foot in the door. After this initial MUD release, we were planning on incorporating one of our other friends who is currently a frontend designer for 989 (did they get bought out?), who does Playstation 1/2 games. Taking some of the backend, revamping it and throwing a graphical interface on it will come with his help.
Honestly, one of the best ideas I had to learn game development was to take an existing game and try to design/redesign it yourself. Empire (anyone remember it?) was a great game that you could easily redo, including graphics. Pick an old RPG (Ultima?) and redo it with adjusted plots or AI. Something to get you learning to think like a game designer, instead of a data mover.
--trb
Heh. Basic does indeed blow. But REALBasic makes it tolerable, and has some handy GL and sprite libs for games. There's no way to develop REALBasic on Windows, but it can target Win32 from te Mac.
Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
Every game company has one common goal: to make as much money as possible. The responsibility of the game designer to create a product that meets this goal. Period. If you could get a million people to pay 50 bucks for an empty cardboard box, and have them feel good about it, you too could be a game designer.
With the traditional retail business model, a game makes a lot of money if it sells a lot of copies. Holding production costs down helps, but nothing boosts the bottom line like a bestseller. So as a game designer your next question needs to be, "How can I make a game that sells well?"
Glad you asked. First of all, you need to do some market research. What type of games are people buying? What are the trends in electronic entertainment? Is there a genre that is hot? Are some genres pretty much dead, like side scrolling platform games? You'll need to get a feel for the market as a whole. Fortunately, you usually have some help.
In fact, a lot of times this step will happen before you ever get involved. When the executive producers (the guys with the money) tell you about your next project, they might phrase it something like this: "Our next game MUST be an isomorphic 3D massively multiplayer real time fantasy roleplaying driving game in an immersive universe with both a movie AND a soft drink tie in." When you hear that, you know they've been banging the chick in marketing. Refuse to listen at your own peril.
Where are we? Oh, still trying to make our game sell. Did you catch the movie tie in above? That helps. So does making a sequel to a smash hit. Sports games do well too, but the genre gets pretty crowded. Familiar characters, like Mario or Sonic, also work well. When people are standing in the rack of games at the local CompUSA, they are looking for something familiar. It is all about branding.
With branding you have two options: license one or roll your own. Lets say that you are making a board game based on arranging rows and columns of letters to make words. Will your game sell better under the Scrabble brand name, or as 'Genericabble, the word game made by that guy who used to be a coder'. Scrabble will crush your sorry ass. Rolling your own isn't really an option in certain niches.
Here is another example: You have the choice between two basketball games. One is officially licensed by the NBA. You have Shaq and Kobe playing on the Lakers. The other isn't licensed at all, but it has Shack and K. Brian playing on the Lackers. Which one do you percieve to be higher quality? Which one would you be proud to play with your friends? Which one would you buy? Chances are that you'd only buy PoserNBA 2002 if it cost MUCH LESS than RealNBA 2002.
On the other hand, if you have a new spin on a market proven idea, you can try establishing it as its own brand. Good luck. It will take more work and more money (advertising, bought game reviews, free demos) than you realize. Try to score with the girl in marketing. It will make the long nights that you spend on that side of the building worthwhile.
We're in eight paragraphs deep, and we still haven't covered the number one reason most people want to be game designers:
"I've got this great idea for a video game and I think it will be a lot of fun!"
Take a number and have a seat on the bench over there. Yes, next to the homless guy. Yes, his number is 22 lower than yours. Yes, he's got seven more years of programming experience. Yes, he also has a Phd in physics. No, he's not here for the game designer job. He wants an entry level position in QA/testing.
So how do you get to skip the corporate ladder and go straight in as a game designer? Make a game to get your foot in the door. I know you don't have the time. I know you have a family. Big dreams require some sacrifice.
First create a demo.
Your demo needs to demonstrate the following:
* You understand the market.
* You can work with a team of underpaid people and a deadline, and still deliver a product.
* You can take a concept and mangle it to make it sell better.
* You can actually deliver a product. Not just the code, but the branding, the box, the website, the manual, advertisements, everything.
* You can do all of the above and still make a fun game.
Why did I wait until way the hell down here to mention making a fun game? Because it is the most imporant part (unless you already have Star Wars, Duke Nukem, or Harry Potter lined up). Your game needs to be fun for it to sell well. The challenge is that you must do it within the context of ALL of that marketing BS above.
Designing a game is much more than just coding. I emphasized some of the marketing skills that you need to prove a point. To be truly successful in an interdiciplinary field like game design you need to be well rounded. Knowing how to manage and motivate people helps a lot. You need to be a project manager, able to control the creation of software. Finally, you need to know how to build something fun. That is the most elusive part of all. I believe it is a true talent, and if you have it, then you only need to broaden your skillset beyond just coding. Prove that you can make fun, and prove that you can manage a project designed for the mass market, and you will be well on your way.
I'm sure you can poke around and find out where I'm coming from, but where you're lucky enough to have actual support for the technologies you use in your games, the companies doing the support have this giant, perpetually unfulfilled need for capable, interested coders doing documentation and tools.
I say perpetually unfulfilled because most people who come into these positions aspire to be game programmers, and eventually game designers, and so they come in to learn the ropes, punch out a few really high-quality, in-depth docs to get themselves noticed, and then get poached by game companies to do in-house tech. And sure, they contribute back to the support team for a little while, but after they feel they've repaid their debt, they're gone. They start out doing in-house tools and cleanup/robustness stuff, and maybe they contribute a neat gameplay feature or effect here and there, and by the time the next project comes around, they're doing much more programming because they end up knowing the tech better than anyone else. It's not far from lead programmer to lead designer in some circles.
But as other people have posted, game programming is probably not where you want to be. Gaming is the Hollywood of this industry, which means a few people are rich and famous, and (in most places) everyone else gets paid 1/4 to 1/3 of the normal salary everywhere else, and is fully expected to work 16 and 18 hour days until crunch time, when you should start sleeping at the office. You're perpetually indebted to your publisher, you have nothing but unrealistic deadlines and overwhelming pressure to perform, and someone coming from a cushy IT jockey job would probably realize they don't have to put up with that kind of shit.
And they don't.
If you want to get into the game industry because you want your work to be fun, because you're winding down your wage slave responsibilities, but don't want to stop working, because you want to do cool shit again, get into support and tools.
It's the best of both worlds. Every game company using the tech you're supporting will see your work, read your documentation like the Bible, and ask you questions as if you were their priest. Every new tool and feature you make gets praised to the heavens. You get to write sample code -- mini game demos -- to show off new features and functionality, providing you with 100% of the fun with 0% of the pressure or workload. There's always something new to work on, and you never have to dote on the old stuff (except to keep it updated with new versions of the technology).
A lot of you might be saying that you still have to write documentation, and documentation sucks. Well, I agree. That's the drawback, but that's also what you're getting paid for. You get to screw around with expensive technology, work on video games all day, and all you have to do is write down how you did it when you're done. That's it. Small price in my book.
So if that sounds interesting to you, ask around, see what companies support their tech, and see what kind of turnover they have. If you've got a solid C/C++ background, have done Visual Studio or CodeWarrior plugins, scripted Max or Maya, worked with COM or debugged drivers under Linux, and you have absolutely no aspirations to be the next Warren Spector or Shigeru Miyamoto, but just want to do fun code and cool shit without the pressure of actually publishing a game, try support and tools.
This can get pretty complicated. You use "game programmer" and "game designer" synonymously; this is sometimes the case, but not usually.
Most teams I've seen are composed of:
A. Programmers - Write code for the game.
1. Systems guys - Write engine code; generally code that's not game-specific.
2. Content guys - Write game code, which is usually game-specific.
B. Artists - Make art for the game.
1. Modelers - Make models.
2. Texture artists - Make textures for models and the world.
3. Animators - Animate characters.
4. Environment artists* - Make game levels.
C. Designers - Design game play.
1. Game designers - Design global game play systems.
2. Scripters - Implement game design through high-level coding.
3. Level designers* - Make game levels.
D. Management - Uh... management.
1. Producer
2. Director
So... there are really two ways into a "game design" job -- move up through level design (more art skills) or through scripting (more programming skills). If you're interested in pursuing the latter, grab a single-player Unreal-based game (like Deus Ex), learn UnrealScript, and put together some "mods" that will serve as a portfolio of your work.
As for programmer/designer, in my experience, it's not a good idea for the lead programmer to also be the lead designer. You really want a balance of power between the art lead, design lead, and programming lead. Otherwise, it's easy for an entire discipline (and game element) to get neglected.
* On some projects, level designers are responsible for making game levels; on others, environment artists do this. It's really the same job, although artist positions usually pay more.)
It's obvious, isn't it?
Start with the open Quake engine, hook in a little TCP interface to download "scenery" during startup, and code up a server engine to keep track of the objects.
Oh, wait. There's no money here. Pop up ads during battle unless you pay.
I'd like to contest that statement.
Entertainment does not neccesarily qualify as art...by the same token, lumping literature, theatre, sculpture, et cetera together with games and other "entertainment" you are really disparaging the lot. Games *may* (or may not) be a lofty goal, say what you will, but entertainment --while valuable-- is an achievement far short of art and much further short of constituting life's goal.
No other culture in the history of the world has made as much a fuss about entertainment entertainers as ours (the modern west, particularly America). Sure, people have always liked entertainment but we are fools to idolize it. When asked what other person they'd most like to be, most Americans will actually pick movie stars, rock stars or other entertainers. Does this strike anyone else as being crazy? Are we naive enough to believe than being well known == a fulfilled life?
I'd personally love to design games --it sounds fun...but even more than that, I'd like to solve problems; I'd like to believe I'm doing something meaningful. --And I will not bow to nihlism, there is more to this existance than wasting time until you die.
Entertainment is just a diversion, art has to do with real life.
IMHO, all the effort that goes into making a mad 3D multiplayer game is worth it to almost nobody. Too many variables, too many things that can go wrong, too many things that can delay a release, too many things that can wreck the gaming experience and tarnish your brand, too many system requirements...
Obviously if you are starting out and you don't eat derivatives for breakfast, set your sites on a simple text-based or 2D game. Single player. Do one thing perfect instead of a million things wrong. How easily we geeks neglect a vast world of gaming that isn't 3D, and how simpler and better our chances would be if we tabled quantum physics until our fourth or fifth game release. ;)
One suggestion - try working on a mod for an existing game like Quake III or Unreal Tournament. That might be coding, modelling, sound or level design - all good experiance using 'real' technology. A lot of games these days are written on top of engines like these, so its a useful skill.
Regarding 'middleware' - Vito makes some good points, it can be a lot of fun! You get to work on interesting game tech without pressure from publishers, stupid time pressure etc. It's also quite a good way into the industry!
The downside is, you are unlikely to see something you did directly on the screens on EB! Sure, you'll know that your code is running under the hood, but the lack of real input into the process, and having to always solve other people's problems rather than your own, made me want to get a little closer to the process.