Problems completing projects, Am I reaching too far?

Started by
7 comments, last by Cromulent 11 years, 4 months ago
Hello again gamedev, I must say after making a few threads in this beginners section I am very impressed with this site and the community. If you have a reasonable question that can't be easily googled you guys are very quick to help and informative with your replies. I like that when I ask a question I usually come away with no only an answer to my question but a better understanding of the entire topic. I plan on stopping buy more often and hopefully repaying the favor by helping others once I get a little more experienced. Ass kissing aside though, onto my question.

I'll try to be brief here, basically I'm a hobbiest programmer(technically a cs student but I've yet to learn anything new from college because I already had much programming experience) and I've been coding since I was about 15, I'm 21 now. I only spent about 2-2.5 years of that programming though because I was very off-and-on with it.

In my first year of programming I rapidly learned visual basic and managed to complete the base of an rpg game, it was 2d with animations, real time combat, items/armor, VERY simple ai, and online capabilities. It was sloppy as hell(I literally can not emphasize how sloppy my code was, every line was in the same form file) and very minimal, but I was proud that I was able to accomplish that within a year of starting to program, and when I got back into it about a year ago I assumed I'd be able to do much more than that by now.

I picked up java when I got back into it and learned good OO practices and became very familiar with the libraries and everything, I feel like I know what I'm doing MUCH more than I did back then in vb, but I really haven't been able to accomplish much more than I did as a young kid. I can write small tech demos that do pretty much anything I want, and I can organize my code and make use of design patterns now, but I can't get a working game polished and completed. I got close on a couple games, one being a tower defense android game that was like 90% done except for the levels and polishing and some more features(which would have been the other 90% I'm sure) but that's the furthest I've gotten, and it was about 4 or 5 months ago, I haven't finished anything since.

Wow this is getting long, I'll try to get to the point. So basically I feel like I have the ability to design a good object oriented layout for a game, code all the logic and functionality for all the classes/components and everything, and theoretically I should be able to complete a game by combining those two. The thing is I never do and I've been trying to pay attention to what it is that causes my projects to be unsuccessful. Here's what I've come up with..

Motivation seems to be at the root, not surprisingly. I mean if I put a few hours every day into the project and just kept progressing it would get done eventually, and I have plenty of free time to do that, but I don't. Here's the life cycle of my motivation as I observe it; I get a new idea and I think it is totally awesome, I'm all motived to work on it and I get started right away. I try to get a FULL design on paper before I jump into coding, usually I get about halfway done that before I convince myself that I need to write some code for a 'test of concept' so I don't waste all my time on a concept that isn't fun. I'll make a sketchy little demo and sometimes I'll think it sucks at that point and quit, about half the time I move on though and do a small amount more planning before jumping into coding the actual game. Although I never fully complete the planning phase it doesn't seem to effect me too much, I never have problems with code getting unmanageable or overly difficult to change/update, however my code does suffer a bit from being lazy and taking shortcuts. I'll usually get a steady 1-3 weeks in and during that time every single day my opinion of the game gets worse and worse. I usually don't get past half way done before I decide that my idea is either complete shit or beyond my abilities to implement and I'm wasting my time, I need to think of a better idea and work on that. I don't know if thats my laziness giving me a justification to quit, or just a negative outlook caused by low self-esteem that slowly chips away at my motivation.

I feel like I have a reasonably good idea of what is causing my problem, but that is not helping me solve it very much. I tried planning out 2 hours a day minimum that would be set aside to working on that project only(I tend to jump around between projects and work on many at the same time also, in an adhd kinda way, the more time I spend working on one the less interesting it becomes and the more interesting the other ones become, and my focus drops to -8 when I don't find something interesting) but In the end the exact same thing happens. I decide taht my 2 hours a day would be better spent starting a new project. It's hard to explain how I can be so stupid.

anyway I just wanted to kind of have a discussion with other people who may have had a similar problem or maybe have some insight/advice to offer me for my situation. Sitting here and thinking about it by myself is getting me nowhere, if I had the answer in my head I would have found it by now. So I'm open to hearing anything, sorry for the long post and I hope to hear from you guys, thanks!
Advertisement
as you can tell from my post I sometimes have trouble staying focused on one task haha. I have periods where I am super-focused and can get rediculous amounts of work done in a short time period but it is to rare of an occurrence to be relied on for finishing a project. I'm now thinking that this is the the reason I can't finish a project. 90% of the time when I sit down to work I can't keep going for more than a half hour without getting distracted. It's not like I get bored and decide to go on facebook or something, but I lose my interest after a short amount of time and I can't force myself to keep thinking about what I'm doing. The longer I try to force myself to stay on task the more frequently my mind drifts into thoughts about other unrelated things. And before I know it I'm making a really long unorganised post on gamedev
I actually have similar issues, though I don't have any solutions to suggest. I'm not a programmer but the same applies to any large project, such as writing a book or making a series of artworks. My attention span for _anything_ seems to max out at 2 months, after which I'm just burned out. Even playing an MMO can't hold my interest for longer than 2 months, and that doesn't take the kind of creative energy that a serious project does. Sometimes if I set a project aside when I am starting to get tired of it I can revive my enthusiasm for it months later, but that's not a very productive way to make progress at a big project. I find myself in a no-man's-land because I don't like small projects For example, I love novels but don't really like to read short stories. But I just don't have the endurance to write a novel. I designed a game of the simplest kind I could really get enthused about, which was a tycoon/sim sort of thing. But two months of design and artwork turned out to be a bit less than half of what a game that size required. I have looked for a way to extend my motivation but haven't found much. :(

I want to help design a "sandpark" MMO. Optional interactive story with quests and deeply characterized NPCs, plus sandbox elements like player-craftable housing and lots of other crafting. If you are starting a design of this type, please PM me. I also love pet-breeding games.

I'm yet to complete a serious game of my own, other than Uni projects. University is great for motivation, I've made Tetris in java (as a group project) which looked pretty good in the end. I've made Reversi in Haskell. But Ive started at least 5 different games in XNA without finishing them. But I learnt a lot. And since I started using SlimDX I have mostly been working on a single project (for 12 months now). Working at home and by yourself is hard. But you have to stick with it. My own project has changed a few times throughout the year, at first it was 2d on a single screen, then i rewrote it to have normal maps and lighting. Now I have rewritten it again to have some 3d geometry and a panning camera across a multi-chunk map. But always I moved back towards the original concept (tile-based rpg/puzzle game), even though I added new features or made it more sophisticated. You have to stay focused on your concept and take it to it's natural conclusion.

Don't be distracted by new ideas, If you have an idea for another game, that is bloody fantastic :) But whatever you do, don't start coding it now, don't even give it too much thought, make some notes and some quick sketches about your ideas and file it. DON'T start another project. And don't have many projects going at once. Have a core project and maybe a couple of minor projects (if even that). I have my game as my core project, then I have my model class and model viewer / editor as my secondary project, but it is a supporting project to my game, so that's OK. Then I dabble in C++ and inter-op and trying to work out how SlimDX/SharpDX work and necessarily a little bit of DirectX, but that is absolutely and by necessity a minor project. My girlfriend will often make sure I stay focused on my game, because she knows that I can get distracted by these other 'shiny' things. That actually really helps. Because if I'm not careful I can suddenly lose 3 days reading about languages and compilers 8-.

You have to have 1 core project and 1 only. Seriously, if you are doing 7 different things, you are probably doing 6 things too many. Sit down and decide which project would you like to complete, and balance that with the likeliness of completing each project based upon it's difficulty. It's OK if it's difficult, but you might be working on it for 2+ years, be prepared for that. I have been working on mine for 12 months now, but it has been my core project at all times. I didn't do very much work on it during semester, but my holidays are always gung-ho on my game.

Whatever your core project is, keep working on it and keep making it better, eventually it will be finished and it might not be great, but it will be done.

Anyway, I gotta go, hope that helps.
This is a common thing. There are more people out there who start and never finish projects than there are those who finish them. Some people can find the motivation, and either the time or the willingness to sacrifice other things, to stick through a project to the end. Others can't. Then there are people like me, who can't focus on one thing long enough to get to the end. I start a project, get off to a nice start, then get interested in something else (another programming project or one of my numerous hobbies), get sidetracked and never come back. Or I think I would be better off using this tech, or that language, instead of what I started out with and then start over from scratch.

There's no one-size-fits-all solution. We all have different personalities, interests and habits and have to find our own way. But it does help to hear what works for others. I'm much, much better about it now than I used to be. For starters, after a painful process, I've cut down on the number of hobbies I have. I've kept the ones that are good for me physically (hiking, cycling and going to the gym), mentally (reading, programming) and that give me the most satisfaction (movies!). So now when I sit down to program I have fewer things I could otherwise be doing so I'm not so distracted. I make sure I try to keep each hobby to a semi-regular schedule, which helps mix things up. Before I would go for weeks spending all my free time at the keyboard, then in a fit of guilt spend two or three months exercising and reading without touching a line of code. As to the act of programming, I now work on multiple projects at once, usually one on one day and another the next, or split up over several hours in a single day. I'm not doing anything commercial, so there's no reason for me to stick to one project continuously. And I like to use more than one language so that I don't grow bored with one. Doing this, I feel, keeps me sharp and helps each project feel fresh longer.

Anyway, it took me a long while to recognize my shortcomings and try to fix them. But once I did, I became more productive on hobby projects than ever before. The good thing is, I didn't have to force myself to do it. If that had been the case, I would have dropped programming like a bad habit and focused on something else.
Try doing smaller projects first. I mean, not like "do small parts then build on them until you get the big project done" but I mean like... do SMALL projects first. Think of an idea you have for a really cool game you want to do... but something you could code in just a few days of work. Like, a shmup that only has one "level" but the difficulty increases as time passes, and the point is to get the highest score you can before you die. Find your personal twist on a simple idea like that, get excited about it, and start working. When you actually finish a project, you will have a good feeling about it, and it makes you wan to actually finish more projects. If you try to take on big projects first, even if they are well within your abilities, you can lose motivation because you have a sense of intimidation or feel overwhelmed. You also may get excited about another project before you finish and forget about the current one. Another suggestion is to keep a list of all projects you want to work on, and feel free to add to your notes and designs for them when the good ideas hit, but force/promise yourself not to start a new project until one is done. Then part of the motivation for the current project will come from the desire to start new ones. I have a similar problem with not just games but everything in life I try to do pretty much.
Can relate to this subject quite a lot. My motivation always seem to wander away. Sometimes I realize that my design was faulty and the game isn't fun which require reworking the design. Or I come up with another game idea I want to explore. I work alone so I also usually derail when I cant create the sounds/graphics I want or lack of encouragement.

To counter this I've started to document my ideas much more before staring working on them. Creating some concept art work to go as well as deeper analysis of the idea and where the fun is. Even if I abandon a project I still got the idea and work I've put in if I wish to continue or revive the idea at a later point. I've also started refraining from jumping the gun and start coding without some rough sketch of the code and how to handle everything. This has also resulted in better quality of my games as well as much more reusable code/design. Solid code is easier to change which also helps preventing abandonment of the project because I cant be bothered to redo what I've already done. Having some design sketches also makes it easier to go back to an old project since you don't have to remember all the details about it.

And last but not least I've started to work a bit more with a few friends, getting help bouncing ideas and getting graphics done. This also helps with the motivation part.
I sort of have a similar but different issue. I get overly motivated with too many things and as a result I never finish anything because I don't have enough time to dedicate to all of my projects. Right now I have at least 4 projects on my table that I am very motivated to tackle but I get no where on any of them because I want to do all of them. I know I can't do all of them and I like all of them so much I can't choose. So maybe I can give some tips to stay motivated.

RULE 1 of Motivation: It has to be a project or idea your a desperatly passionate about.

IE: if you can't stay motivated making a game maybe you should find something else that motivates you.
An example with me is I can't stay motivated making games what really drives my passions is the technology behind the games. So I focus my passion twards learning the technology behind game middleware.

RULE 2 of Motivation: Small little tasks. It is hard to stay motivated on a large project so use sub projects of the large project to drive your motivation. It is easier to stay motivated if you notice you are making solid progress. The best way to do this is guage progress off the sub tasks not the large project as a whole.

Hope this helps. It helps for not only Programming but aslo writing in sunandshadow's case. I would suggest for him to tackle that novel. But focus on chapters rather then the overall picture. The overall picture is nothing more than the combination of the peices.
I have the same issue. I find the only way to actually get work done is to remove all sources of distraction. So I generally unplug my ethernet cable, get out a couple of reference books, make myself a cup of tea, put some music on and then crank out the code for a couple of hours. Then I'll give myself a break (a couple of multiplayer games of Call of Duty normally does the trick :)) and then I'll carry on.

The trick is to not allow yourself to do anything other than work. Motivation comes when you make progress so you just need to slog it out for a couple of days until your mojo comes back and then you'll find that you'll want to spend your time working on your project and that you won't need to be quite so hard on yourself any more.

This topic is closed to new replies.

Advertisement