Starting without wanting to find a job

Recommended Posts

I am currently confused about if the way I am proceeding is the right way to go, my end aim is to create a game based around some key concepts I believe would combine into a great game.

I want to create an engine and a game designed around a core concept; That the world does not revolve around the player. This would mean a fully dynamic world, no linear paths, no AI sitting outside a cave waiting for the player to clear it for them. The AI and the world goes on with its day to day order, war, poverty, murder, etc. The player has to find a holding in the world and make what they can of it. Also the gameplay would be highly realistic, meaning locational damage, sword-to-chest meaning death and core survival elements including hunger and thirst.

Regardless of the idea, my main confusion comes from my wanting to become an indie developer (no job in a way) and self-teach everything I need to know.

I have finished Year 10 and left school. People I know say I am a smart guy. I excelled at IPT (computing) and English, and Math (when I was enthusiastic about what I was learning). I could never focus while at school, and though I got A's and B's, I was always thinking about development, engines and games. Last minute assignments and high grades. I know alot about how games work, how engines work, know JavaScript and core programming concepts like variables and functions. I am also skilled at Hardware and PC's.

I have bought Accelerated C++ (understanding it well enough so far) and begun learning the language, gathered people I can trust and are enthusiastic about game development too, some are coders, others are interested in modelling or sound.

Is it necessary to attend college, to finish Year 12 in order to be successful in the Games Industry as an independent developer? Can you succeed with a clear idea, skill and unlimited time?

Share this post

Link to post

Share on other sites

I think you would be making a poor career and life choice if you didn't finish school.

The answer to your question depends on what you define "successful" as. It is certainly possible to develop and release a game on your own time purely utilizing your own ideas and skills. However, the chance of that release becoming commercial success of the order required to serve as a replacement for full-time employment is smaller. It depends both on some measure of chance and some non-trivial measure of the skills you have in the realm of marketing and publicizing your game. If you go this route and the end result is a commercial flop, as is the case with most indie games, you'll find yourself in the potentially awkward position of having a subpar education relative your peers who you may now be competing in the job market against, simply because you need to do something to bring in sufficient sustained income to pay your rent.

There's no reason you should be gathering a team to help you on this game project at this point, you're only just learning the basic skills you'll need to put your game together. You can achieve a huge percentage of the work of making this game on your own, so bringing in other people will only complicate the process for you. Remove that complication and use the extra time it gives you to stay in school. Your future self will probably thank you.

Almost everybody who is technically inclined and/or intelligent has a tendency to develop the notion, at one point during their education, that they don't need school. That they're smart enough already. Most of the time those people are wrong, and the sooner they can be disabused of this notion, the better things will turn out for them in the long run. It sounds like you're going through that phase and you need to work through it -- it's unpleasant, I realize, but you should look for ways to work through the problems and boredom you are facing.

The paper that you linked, for example, is not impressive in any capacity. It's really little more than a large glossary of terms and the definitions you apply to those terms are in some cases wrong and in some cases clearly reflect your own youth and inexperience. It would make a very poor technical reference for anything.

If you're only learning C++ now you have a ways to go before you can really start building a game of any note -- especially since C++ is a very poor choice of first language (and if you already know another language, you could be using that instead to start building games now). Stay in school and work on putting together some games in your spare time. In a few years you'll actually have some games that might be a bit fun and are capable of demonstrating something more than basic core competencies in game development, and not only will that help you along your goal of making this non-player-centric game, but will put you well ahead of many hopeful game developers who will be finishing school and applying for jobs with no games or projects under their belt whatsoever beyond the stuff they were required to do for school.

Share this post

Link to post

Share on other sites

Althrough I often vote against collage education, in your case it would be the best choice to continue education and develop your programming skills in your spare time.

You don't realize yet that it is A LOT harder to make a game than it seems at first sight. I am professional game developer for years, I am doing a game in my spare time (it is fairly complex game, not some puzzle), and I am sometimes overwhelmed by amount of work and knowledge I need to make it work.

And you want to make an engine (absolutely useless waste of time in my opinion) AND a game. That 100x more work then making a game alone, You will need to study dozens of books with hard stuff, you will need to learn collage math.

If you are going to learn all that stuff anyways, why not learn it in a collage and get a degree AND knowledge? It is your best bet.

2

Share this post

Link to post

Share on other sites

For every college dropout success story like Michael Dell, there are a couple thousand college dropout failures like that 47 year old dude making milkshakes for high schoolers down at the McDonalds. Finish school and go to college, kid.

Share this post

Link to post

Share on other sites

especially since C++ is a very poor choice of first language (and if you already know another language, you could be using that instead to start building games now)

In my opinion, this is somewhat subjective advice and should be taken with a grain of salt. Programming languages are tools, and I agree with the sentiment that if you already know how to use a tool to accomplish your goal, it might be a good idea to just go ahead and start hacking away. Game development is difficult enough without throwing the complexities of C++ into the mix at the same time.

However, if you're thinking long term and you have the patience, building super basic games in C++ as you learn the language might not be a bad way to start. It's a pretty powerful tool to have in your belt for a number of reasons. Just my 2 cents.

You know, the stuff you're forced to learn in univeristy and A-Levels?

I have bought Accelerated C++ (understanding it well enough so far) and begun learning the language, gathered people I can trust and are enthusiastic about game development too, some are coders, others are interested in modelling or sound.

Well that's great, but can you [i]learn[/i] from them? I'm sure you'll all be able to learn the basics together, however that's very different from being taught by, or working with, people with bucket loads of experience. You'll learn far more, at a much quicker pace, than you ever will in a group of beginners.

Is it necessary to attend college, to finish Year 12 in order to be successful in the Games Industry as an independent developer?

Most companies have HR departments that filter CV's before they get put infront of the team leads. The filters they use are rudimentary, and mainly involve the question: "Do they have a degree?". If the answer is no, it will be binned.
The [i][b]ONLY[/b][/i] people in the games industry who've made it without a degree, are those individuals who made a name for themselves. For example, I know one guy who was hired as a developer on 3ds Max when he was 16, because for the 3 years prior, he'd been publishing and releasing plug-ins for 3ds Max that were better than the ones written by Autodesk, so they offered him a job. So yes it's possible to make it without a degree, but only if someone is already offering to hire you. Otherwise, no chance.

Can you succeed with a clear idea, skill and unlimited time?

Yes, however you do not have unlimited time, so the answer will always be no. Simple fact is, if you are not studying, you will need to find work sooner or later. Once you start working 40 hours a week, you really won't have anywhere near enough time to spend learning games programming. You'll then be competing against a load of students who can devote every hour, of every day, to doing nothing but learning about games programming. In 5 years time, they'll know a hell of a lot more than you, and their degree will get them through the first HR recruitment hurdle.

Education is what you make of it, and the more you put into it, the more you'll get out. Yes G.C.S.E. and A levels are a bit tedious, but at university, things get a lot more flexible. If you are doing a CS degree, but want to learn more about maths, it's easy to ask a tutor from the maths dept if you can sit in the back of their lectures, and they usually say yes. Learn as much as you can, from as many people as you can, and then getting a job in the industry will be easy. If you simply try to learn everything yourself, you'll just avoid learning the most useful information, and instead end up picking up a lot of bad habits. Go to university. It is worth it in the end....

Half of that stuff, having a double major myself I dont even know. And dont see the point in knowing either.

Well... I'm 2/3 on the way to be an Analyst Programmer (3 year degree) and there are courses for everything of that except quaternions (that's from a course of Computing Licentiature, a 5 year degree), BN notation (never heard of it) and colour theory (probably covered in the Image Processing optional course). Lens physics aren't what I'd call something you would expect from any CS degree.

Anyway, that's the fun stuff actually. Most of the courses deal with systems and organizations (the "analyst" part), software engineering (totally entertaining filling IEEE spreadsheets with requirements) and not so interesting programming ("visual programming" like using RAD Studio with Delphi).

To the point. Being an indie dev is hard... like REALLY HARD. More or less successful people (from Zomboid, Sword of Arkhanox, etc) did have some experience doing games before even starting their successful project, and they tell "horror stories" of eating lentils for entire weeks (if they had something to eat that is) and coding for the game 3/4 of the day because nobody was buying the buggy alpha/beta for example.

With the kind of dedication (madness!) you need to do that, you wouldn't be asking in a forum if its possible, you'd be moving oceans and mountains to getting your game complete already.

Nobody is forcing you to make the next Minecraft, and its not like Notch is the only happy dude in the world. So take it easy.

1

Share this post

Link to post

Share on other sites

I decided to go back to school next year, go to university and during all of this slowly learn and write what I need for my project. I will use this year to get ahead in 3D math and programming, so that Year 11 and 12 math is easier. Here in Australia we have an OP, and it goes from 1-20. My OP estimate was 7 (while slacking off), university requires at minimum 15.

Yeah, it's probably not necessary to be an expert in every single mathematical and engineering subject to be a good game programmer. Most of the stuff you cited can be looked up on the internet or in a book without needing to remember it. Sure, knowing calculus is very useful, having a good grasp of geometric optics and how pipelined processors work helps a lot, but if someone asks me to spit out the computational complexity of [insert obscure datastructure here] or to evaluate [insert complex integral here], I'm not going to waste my time trying to recall that information or spend fifteen minutes integrating by parts and starting over because I made a sign error, I'm just going to look it up on google/give it to mathematica respectively. It's not being lazy, it's being pragmatic.

Never memorize something you can look up. Oh, and another one I like: the important stuff is never on exams. So learn in your own time, if possible before you cover it in class, and use high school/university to guide you to your next topic and patch up any holes you might have missed during your self-learning (that last point is very important! if you don't regularly recalibrate your own knowledge with some reference curriculum you will crash and burn very quickly! and remember to practice what you learned as well, just "knowing" is useless). That's always worked for me, so I recommend it though people vary in how they learn so YMMV.

Half of that stuff, having a double major myself I dont even know. And dont see the point in knowing either.

Then you still have a lot to learn ;)

People often say that all you need to know are matrices, quats, trigonometry, and maybe some newtonian mechanics thrown in as well. Whilst you can 'get-by' using this stuff, knowledge of the aspects I listed above will be very helpful in the long run. As an example, consider statistics (that branch of mathematics everyone hates). I used to consider stats to be completely pointless, utterly useless, and hated the fact I was forced to learn various distributions at A-Level. Fast forward ten years, and I then realised that stats can provide a really useful tool when trying to compress data assets. If you know the mean of the data set, its standard deviation, and the distribution it follows; it's very easy to come up with a compression scheme that's tailored to your data set.

You might think that knowing how to derive the equations for matrices/quats/etc is completely pointless (because you can just find a bit of C code online that does the computation and use that). In reality however, you'll often need to make that code work with SSE/alti-vec/neon instruction sets. If you take a routine optimised for the FPU and try to fit it into SIMD, it usually ends up being less efficient than the original FPU methods. If however you understand how a formula was derived, you can usually find a solution (from first principles) that will fit the hardware better.

One of the first things you learn at university level mechanics, is that newtonian methods are very simple to understand, but they require a hell of a lot of computation. Transforming the problem into lagrangian mechanics give you a much more efficient (and numerically stable) way of computing dynamics simulations. If you ever need to look at the solver code for Havok or PhysX, this stuff will be immensely useful!

So you might consider all of those topics completely pointless. I however, consider them to be really useful tools to simplify and optimise some of the harder problems you'll find when developing computer games. All knoweldge you learn, will one day become invaluable - it's just very hard to see why that's the case when you're first learning a topic.

0

Share this post

Link to post

Share on other sites

I will play devil’s advocate just so the other side of the fence gets some representation. It is always good to see every viewpoint.
Disclaimer: It doesn’t mean you are advised to drop out. A lot of my situation is luck, but honestly you make luck happen, so it isn’t really so much luck in the end.

You know, the stuff you're forced to learn in univeristy and A-Levels?

I learned all of these either on the job when needed or on my own through my own projects.

RobTheBloke, on 24 Apr 2013 - 03:45, said:
Most companies have HR departments that filter CV's before they get put infront of the team leads. The filters they use are rudimentary, and mainly involve the question: "Do they have a degree?". If the answer is no, it will be binned.
The ONLY people in the games industry who've made it without a degree, are those individuals who made a name for themselves. For example, I know one guy who was hired as a developer on 3ds Max when he was 16, because for the 3 years prior, he'd been publishing and releasing plug-ins for 3ds Max that were better than the ones written by Autodesk, so they offered him a job. So yes it's possible to make it without a degree, but only if someone is already offering to hire you. Otherwise, no chance.

I can assure you there is a chance.

I dropped out of high school and have no degree.
Which is why I was able to get a job overseas in game programming with no prior experience (never worked in America) and a career traveling around the world making video games from Ghost Recon 2 to Final Fantasy games.

Not because I dropped out directly, but because of the same thing that made me drop out: My motivation for the field and unrelenting can-do/will-do attitude.
Other 14-year-olds went home and played games after school. I went home and made games. It was my calling and nothing would stop me.
By the time I was a senior I was fed up with school not teaching me what I needed to know for my future. I had skipped 2 years in math and still had to learn relevant math on my own in my spare time outside of school. “Oh, vector math. Come on, I taught myself that 3 years ago…”
I got fed up with not learning anything useful, dropped out, and started my career, which has since taken me to Thailand, Laos, Cambodia, Malaysia, France, America, and Japan.

It’s obviously possible.
Just keep my disclaimer in mind. It’s possible and trust me it is the high life when you are traveling all over the world and being paid for doing what you would be doing as a hobby anyway.
It’s also not a likely outcome, and you don’t have much of a chance unless you really know what you are doing (how to end up in such a situation) and you started very young.

So the way I see it is that by following all the advice above you certainly will get a job. It’s the safe and obvious way into the industry.
Which is exactly why it will land you exactly equal to all the others in the industry: As a number in a big corporation working 80 hours per week, single and childless at 31 (quoting a recent article on the subject).
Taking a normal route will definitely get you into the industry, but you likely won’t be so happy/satisfied with where you are.
Taking risks is the only way to really live, to travel the world, to work on your dream games (it was my goal since I was a child to work on Final Fantasy), but when taking risks there is usually some risk involved. That’s why they call it “taking risks”.
You could fail miserably.

But what’s the worst that can happen? Assuming you don’t make the choice to take your own life, you always have the option to try, try, and try again.

L. Spiro

4

Share this post

Link to post

Share on other sites

You should finish school. It is important because it gives you a well-rounded knowledge about life and yourself. If you got unlimited time, the more polished you can provide to your game. It is hard to tell if an idea is brilliant or not because we cannot read the minds of one yet even millions of people. If you have done game programming, keep challenging yourself. There are many areas to explore in game programming. It is also good to have a sense of project scope and simplicity to your initial design.

People love to see a good game prototype. If you can make a good one, let more people know about it. Feedback is valuable because people who give good and bad feedback will help you shape your game to be one they will probably play in the future.

Share this post

Link to post

Share on other sites

School is a useful tool. If you are and school - and can aready write a game - and have done so. To the point of spending more time on your career is a more valueable thing then school. Then drop out - I knew a kid who dropped out 3 days before graduating because he turned 18 and went to work for his fathers construction company. Prefectly fine choice. Dropping out to work on a game and engine... not so much if your not funded and don't LOVE living with your parents. I am also building a game and engine a lot like what your talking about - I've been learning c++ for 8? Years now and have been working on my game for about a year and a half. My estimate right now to with what I've done so far - to write and engine and decently comlex game like what your talking about, no less then 5 years for anything I would consider to maybe be a moderately polished game (by yourself). Could easily be less, could also easily be a lot more. Do you have that much spare time and very little want to move forward in life until its complete? Also learning some concepts without someone experienced to teach you them can be very difficult. Things like - should I use indexed triangle lists or triangle strips to draw my models? And depending on the site and when it was written, you will get different answers. Triangle strips have there place however a lot of sites say to use them for speed, while a lot of newer sites say to use indexed triangle lists because they are easier - don't involve having to find optimal strip patterns and the amount of data being passed to the graphics card usually isn't a major bottleneck.