I think everyone here understand what an amazing amount of work goes into making even the most rudimentary of games. That being said, how do you maintain focus during your project? When you have 8 core mechanics to integrate and perfect, and art to finish, and music to think about, and level design to work on, how to you prioritize and keep from getting overwhelmed?
Develop games in your browser. Powerful, performant & highly capable.
One thing at a time. I set myself a goal for the day - get one thing done. Doesn't matter if it's big of small. That gets me started working (which as I have heard from other devs can sometimes be the most difficult part on some points of a project). If I can get that one thing done, great! I've achieved my goal for the day. I've got some momentum, so I carry it onto the next task. I keep each goal small and realistically achievable, and it results in improved morale since I almost always achieve more than my goal. Kind of a mental trick, but it works for me.
I know what you mean, I tried the whole 'tackling the whole project at once' thing before coming up with my current workflow. It didn't work at all. Thinking of the project as a whole is tiring. It's good to do when pondering the design of the entire project, but when actually coding or making art, I shove everything else aside out of my mind except for what's relevant to what I'm currently working on.
As for prioritizing, I've never really thought about it, because I just work until something gets in my way. Then I code it because I need it to continue. I guess I generally start with systems that affect the most stuff first - like the basic setup for units and their movement, etc. I suppose sometimes I do prioritize easy tasks or tasks that have visible progress as a result afterwards when I need something quick and easy to complete to boost my morale.
Everyone has their own workflow though, so it's important to find what works for you.
I just wanted to see what other people's approach was. I do the same thing that you do Arima, and I set one small goal at a time. I'll concentrate on getting a menu to work right, or an animation to move properly, and then I'll move on.
Sometimes, though, there are several features that are interconnected and it makes it confusing on what to tackle first. Sometimes you have to develop features in parallel.
My biggest problem is when I stumble into a task, and I just can't get whatever it is to work. Beating my head against a desk over a tiny feature that won't work right for a couple of days sucks. I need to learn when to move on from a frustrating problem and come back to it later. After awhile I think I lose all objectivity and I need to come back later with fresh eyes.
One thing at a time too.
I obviously start with an idea, I write my idea on paper, I draw a level example (if the game genre need it), and if the game is complex I write a game design document which describe the entire gameplay of the game.
Then I start to code the basic things, the game's core gameplay using place holders (squares, circles, sticks...) then the features that are more complicated.
After all that I can think about making graphic content. It's useless to make graphics at first because your game can change at the coding phase, and you have to be sure of the asset's size.
Sound and debug come at last.
And yeah it's very important to have a checklist / to-do list. Very satisfying to delete a task when you finally made it :p
I've actually started doing the opposite of a todo list - having a list of things I got done. Not having a todo list only works at the beginning and possibly middle of a project when it's obvious what needs to be done rather than needing to keep track of it all, but on loot pursuit, having only a todo list and trying to compare my progress against it turned out to be a terrible idea, because every time I felt good about whittling down the number of things needing to be done, I would do a quick run through of the game and suddenly have two screens worth of things to do again. When this happens over and over again for a year, it becomes highly demotivating.
When I get to the point of needing a todo list again on this other project I'm working on, I'm going to move the items to do to the 'got done' section so I can have both a todo list and a 'stuff I got done' list, and I'll compare my progress to the stuff I got done instead.
Great ideas here! I have todo list in my head and every morning i think what i should do next. Then i set a goal for me. Today my goal was to finish and adjust game mechanics. Then i didn't know what to do?!? I try your "What I have done" -list —
Wigriff; I work like Arima described, but instead of making a 'stuff I got done' list I try to post my accomplishments on my developer blog in the 'Your Creations' forum. It's really nice to get (good) feedback, really motivating!
Also, when I'm tired of working on animations, coding or gamedesign, I start to make music for my game. I don't know if this is efficient but it keeps me in the momentum and I'm inspiring myself.
I really like to do lists particularly because i generally have several tasks that need attention at a time, so I need the added reminder. It also helps me prioritize, but priorities aren't the be-all-end-all. If something isn't clicking with you and there's something else of similar importance that needs done, jump ship immediately. If you look at it as a total amount of hours needed for whatever, you're still investing wisely.
Most of my game isn't built linearly (ie, not built in the progression the player will get to each layout), so it's nice whittling away on several different things and then bringing it all together/bridging the gaps. You still have all of the detail work building up, but you get large, sweeping progress in spurts--which feels great.
I usually mix everything that I do and it helps me to reveal/consider different solutions. Creating the main focus art, such as the main character and some music helps to motivate and give some faith to the project. But if you do too much art it will kill your creativity and eventually create some frustration. The most important part is to write down a list of things to be fixed and ideas to be made. Once you have this very powerful list it helps you to pick a task that you feel most comfortable on that day. Sometimes you don't know what to do and it's hard to get any motivation, the easiest way is to have a list like that and you can just overline the ones that you have completed and always feel that you're going forward and have accomplished something each day. Remember to save new file every time you manage to create something that works. If you reach a point where things get complicated it's nice to know that you can jump right back to where the game was working.
I don't have specific tactics to maintain focus. What I'm starting to realize is that there are days you really struggle to make something happen.These days suck.
Maybe you spent 4 hours listening to audio tracks and/or sound effects. Maybe the graphics are sub par. Maybe your game logic is flawed. Maybe you have too many layouts, too many event sheets and you know what? it just doesn't worth it.
But then you test for the millionth time the same layout. And suddenly it "clicks". Graphics, music and events all come together to form a level. Holy sh*t, I'm a game designer (not really but you catch my drift)!
To me these moments are the confidence boost I need to maintain my focus.