Saturday, 21 June 2014

How To Get Into The Games Industry Part 1: Exclusinterview with Scott Harber

Image from
In a 2 part series, I'll be looking at how you can get yourself a job in the gaming industry (We've already looked at Journalism!) by speaking to multiple people, from industry veterans to indie devs. Today, I've managed to grab an interview with Scott Harber of one man indie studio sc0tt games, the creator of acclaimed mobile games like Rocket Drop and The Ingenious Machine! He's also currently developing a new game, Chaos Ride ( picture above) coming out for iOS and Android on the 4th of July that looks damn cool. Anyways, I'll stop with the praise and cut to the chase!

Gadgets And Khajiits: How long does it take to develop a decent game by yourself, and what skills are most important?

Scott Harber: "It depends on what you're making. You could make Flappy Bird in an hour, but making Grand Theft Auto by yourself might take a decade or two!

In terms of the required skills. It varies massively, depending on which field of the industry you wish to enter. The following list isn't exhaustive, but it covers the fields I know:

  • Engineering: C++ and C# tend to the weapons of choice for most studios. Ideally, if you learn the fundamental principles behind software development (architecture, coding standards, optimisation, best practices for iteration, etc), then the actual language you learn becomes less relevant. The ability to adapt and develop and grow is also essential. As an engineer in the games industry, you'll often be given tasks that are outside your current sphere of knowledge, with the expectation that you can do the research and learn what you need to know in order to deliver within a given time frame (this is not a skill you can learn, you'll just need to have this!). 
  • Art: Most studios use Maya or 3DS Max for 3D art, and Photoshop for textures. But as an artist, you will be sat in front of a lot of bespoke tools and software and be expected to learn them quickly and use them well. So as with coding, learn the fundamentals and the software won't matter; Core art skills (i.e. visuals that don't involve a computer), an understanding of 3D modelling principles, optimisation (if a programmer doesn't have to chase you to get your art into budget, they will love you!), core computer graphics skills (LODs, mipmapping, tri-stripping, draw calls), etc. Some scripting skill is also a bonus, as it will make your life easier.
  • Everyone else: Audio, QA, production, design, pre-vis, marketing, dev management, cinematics et al. I don't know enough to comment on their required skill sets, but I wanted to acknowledge that there are other routes into the games industry that don't involve art or code!
  • Technical Art: LEARN ALL THE THINGS!
  • Indie Developer: Also learn all the things. But if you can't, then design your game around what you can do well. More on that later...

In terms of commonality, I'd say the most important skill that every developer needs is that of project management. My opening remark about Flappy Bird vs GTA was something of a telling statement. What you can do, what your resources comprise, and how much time you have, ultimately dictates what you can deliver.

Any developer who understands this core principle has nailed game development, because it's the hardest lesson to learn.

For example, if you're a AAA developer, this applies to everything that you can control. In other words, the scope of your schedule or your team's schedule is directly dictated by how many people you have, how much memory/performance your engine will allow, how much money you can spend on more staff, the training costs of adding more staff, and how much time you have left.

If you're an indie developer, this applies to everything, full-stop. For example, if you're not great at art, then you should probably design a game that doesn't need high-end graphics. If you're not an amazing programmer, then perhaps you should limit your design to a relatively simple game mechanic. If your cash flow is limited, you should probably target shorter development cycles. If you're only one guy working alone, maybe you should shelve your massively-multiplayer open-world masterpiece until you have a larger dev team!
This Youtube video is a prime example of what I'm writing about. Fundamentally, it's the charming story of a indie who ultimately failed to estimate the scale of his project before he started coding it.

Basically, any time you hear about a team “doing crunch”, or a team getting laid-off at the end of a project, or a project being delayed, or an indie game being cancelled, or an Early Access game on Steam that never gets finished, it's the result of someone somewhere not managing their scope in a realistic way."

GAK: Would you say that anyone can make a decent game, if they have the time?

SH: "I would say that everyone has the opportunity to make a decent game, which hasn't always been true.

Digital distribution has led to third-party publishers becoming less and less vital. Low-level engineering has become less of a barrier to entry since the likes of Unreal and Unity literally began giving their engines away. With high-end freeware like Blender, Gimp, InsaneBump, LMMS et al, even content creation isn't something that has to cost a small fortune to produce any more.

It has never been easier to make a game, and we are demonstrably living in an age where a bedroom programmer could take on a AAA dev team and win, if they were so inclined.

But in the end, all the above amounts to is free tools. As with everything ever, success in the games industry amounts to a perfect balance of talent, expertise, hard work and luck. Some of it can be learned with time and practice, some of it is innate within an individual.

Though there are well documented examples that games development is not for everyone."

GAK: What's the best platform to start on for a budding developer?

SH: "PC. Definitely.

Pretty much everyone has one, so the install base isn't an issue. You're developing for the same platform that you're developing on, so performance is easier to track. You have near unlimited options with regards to input devices (mouse, keyboard, microphone, controller, Oculus Rift, Kinect...). Plus, with the likes of Steam, GoG, IndieGameStand, Desura etc, there are plenty of distribution options to choose from when you're ready to release your game."

GAK: Are there any course or qualifications someone could take to further their developing knowledge?

SH: "Pretty much any computer science course would do for engineering, though some are obviously better than others! A lot of what you learn in a traditional CS course is directly commutable to games.

Most artists tend to join the industry through computer graphics courses, though I have heard of successful artists joining the industry through traditional art courses.

The path to design can be a bit of a mixed bag. Some designers attend design courses, while a lot have been known to enter the industry as unqualified QA testers who build their experience on the job."

So, as Scott said, there are a huge amount of jobs you can get in gaming, all coming with their own responsibilities and challenges, but there's almost always a qualification or class you can take to get there. Now, it's easier than ever to develop your own game, so if you and your friends have had a great idea for a game, or you've just thought of something small that's never been done before, you can do it. As well as free engines like Unity and Unreal, there are also a number of free programs you can use to learn more about coding, or to actually code a game. Codecademy is a good, free website that lets you learn any code language, from HTML5 to Javascript to PHP, and it's what I personally have been using to further my knowledge. Also, sites like JSbin can be used to create your app, which is also another website I've been using. Really, anyone can make a game, as long as they put their heart into it.

Remeber to check out sc0tt games' next game, Chaos Ride, when it comes to iOS and Android on July 4th, and also look at his IndieDB page and his Facebook page. Stay tuned for Part 2 tomorrow!

1 comment:

  1. I have just downloaded iStripper, and now I can watch the sexiest virtual strippers on my desktop.