Recommended Posts

I wanted to know if anyone here had experience making a game on their own and how many hours would you estimate for its complete development (programming, sound, sprites, etc.). I am currently starting a small game myself and would like to have an idea of how many hours it would approximately take me.

Of course I understand that certain factors may cause a great deal of variation. For one, I have very little programming experience and have never completed a game in my life. I also know that other things like fidelity of graphics, sound and overall size and scope of the project could determine length as well. As such, I will give a clear vision of my game with regards to those parameters.

I plan to make a 2d action adventure game. The graphics fidelity will be on par with something in the middle of Nintendo and Super Nintendo Entertainment Systems. So nothing as smooth and detailed as Super Metroid, but definitely more involved than Legend of Zelda. I've already started sprite work.

For sounds, I am just going to record my voice for a few voiceovers. The rest of the effects will probably be taken from a public domain database or a sound database where sound effects are cheap.

For the size, there will be one large area with several rooms (similar to Resident Evil's mansion). There will be no over world or much of an outdoors setting outside of the immediate area surrounding the facility. For game time, there will be a max time (it will be timed) of eight hours, but the game will likely be able to be completed in a few hours.

In terms of scope, the game mechanics will include shooting, running, walking, throwing objects, environment interaction (closer to point and click than anything as involved as environmental damage), shooting and stabbing. There will be normal enemies and boss types. There will also be different endings depending on certain factors upon game completion.

The game will be written in C++ and I will likely use SFML (I am still learning about this in school and don't plan on starting the game until summer vacation). It is a small project, so I don't really care about it having the highest level of quality. I do plan on using it for a portfolio of work, so I don't plan on it being utter trash. Point is I am realistic about it and know I am not making a AAA game on my first try. I also understand that what I am undertaking is still very large for my level of experience. Even so, I have a lot of time this summer and plan to work full time.

I just wanted to know, based off other's experience in conjunction with the information I've given, how many hours do you think a game like this would take to be completed? Does 500 sound too small?

Edited April 6, 2013 by aspiring newb

1

Share this post

Link to post

Share on other sites

Honestly - assuming you have all the art done all the sound files ready.. 500 hours is possible.. Do as much as you can in 500 hours and then see where your at.. what will it hurt? You'll learn a ton.. come here or to other forums when you get hung up don't spend too many hours on one silly thing it its possilbe to work on another..

go for it

0

Share this post

Link to post

Share on other sites

I plan to do what I can in the time I will have this summer, which comes to around 500 hours. I've written a novel on my own time (unpublished of course and in desperate need of editing, but done nonetheless) so I'm not worried about time lost or anything like that. I'm just a micromanager who loves to plan. I've got a lot of the (very rough) designing for the game done and am still working on art assets while my semester goes by. Just no programming. And if my sprite work isn't done by the end of the semester, that means even less time devoted to programming. Guess I'll likely be working on it well into my school semesters, but I don't mind.

0

Share this post

Link to post

Share on other sites

It took me 3 months to figure how to make an arcade shooter clone with the basic meat: like collision detection, adding monsters and skills and ship health system, adding music and adding gameover on top that I also have college coursework. I worked long hours in the span of 3 months and it's still not done since there is so much I wanted to add like a button-based menu. This is also taking into the fact that I am experience with the language but adding features to the game seems a bit abstract but if you start applying the programming concepts, it makes sense and does not appear abstract as it was before.

That project taught me a videogame can be made by one person if you are super dedicated and passionate about your game getting done. Notice I said made and not finished. There will be some concepts you need to know along the way and figure out with a bit of research. It can be done since I been working on mine for the past 3 months. I would not have learned so much on my own if I did not start this video game project.

Just remember: it is all about having fun working on it and being serious about eliminating bugs from the game. It is important to finish a project than have one that is not finished.

Link to post

Share on other sites

one person can do the one person equivalent of a AAA title in about 2000+ man hours. once you have the basic skills, the tools, and the design, and are ready to code.

I spent a year on my first game, a text based D&D clone written in basic, but i was also learning programming at the same time.

my second game was a flying saucer shooter, about the same complexity level as missile command, with vector drawn graphics, written in basic. that only took a week or two, but i knew programming by then.

my third game was a Star Trek flight simulator, written in pascal. i built the first version in 6 weeks. it became a top ten download on AOL, and checks started pouring in, in the mail. and just like that i was making 60K a year as an indie gamedev. this was around the same time Castle Wolfenstein 3D came out.

Does 500 sound too small?

it really depends on your skill levels, and the amount and quality of content.

I'd try to keep the scope small and the quality high since its for your portfolio. but make sure the scope is sufficient for it to qualify as portfolio material.

0

Share this post

Link to post

Share on other sites

2000? Wow, that's a lot. But I guess one person equivalent of a AAA title is a bit ambiguous to me. Can you give any examples of such indie games? The original Cave Story perhaps? Even your Star Trek flight simulator (first version) would have been done in 336 hours if you worked every day for 8 hours on 6 week schedule. Can you refer to some indie games that probably would take 2000 man hours to develop so I can have an idea of the scope you're talking about? Thanks.

0

Share this post

Link to post

Share on other sites

@Norman, oh by the way, I pressed the down arrow on the score of your question by mistake. I didn't even know what that number was for and scrolled over it. When I did I mistakenly hit the button. Oops! Tried undoing it, but it doesn't seem to work. If you end up reading and answering again, I'll click on an up arrow to even it out.

0

Share this post

Link to post

Share on other sites

I was going to say 300 hours, but that would be only the programming part. you need to art an equivalent for the artistic part and the gameplay part will take a variable amount of time depending on how far you want to fine tune it. so roughly put between 600 and 700 will get you there. You should however drop the C++ and go for C# unless you want a (almost) direct portability to linux and mac ? Because it saves the time of having to setup and understand boost and stl, memory overrun issues and dangers of temporary references and other joys. C++ needs to code while concentrated and focused at 100%, with rigor, (apply RAII, careful design thinking with SOLID, avoid smells...)
Whereas in C# you can code correctly even after a beer, and the compiler is much much nicer in its messages. Sometimes it even gives you the solution directly. Also there are virtually no build times which accelerates code-to-test cycle. I could go on and on...
I know SFML has C# interfacing, but I know that SFML is not en engine, and you will lose time having to do other things like level editor and stuff. Though you're in luck, C# has built in serialization, that will save you tons of time to save and load your levels, and the current game state. Even if you go with doing your editor yourself. Now even with that, I'll recommend trying to find some platform game engine with an editor, if you can find one that will not limit you in your project.
Because yes, engines are good, BUT a new game may not be doable in an engine that's already done, even with the most generic thinking from the author, you cannot support all future ideas and game paradigms.
good luck, go for it

-1

Share this post

Link to post

Share on other sites

Thanks Lightness for the in depth break down of time as well as the advice. The only thing is I am not solely doing the project to finish it. I am doing it to gain experience in coding using C++ for the simple reason that it is the industry standard. So even though other languages might work better, I am trying to grind it out with C++ for the experience. This project serves multiple purposes as stated before. The experience is specific to possibly getting a job with a game studio so even though I am aware that I can use any language to make an indie project for my portfolio, I want to expose myself as well as show to potential employers that I can finish a project that is coded in C++. Thanks anyway!

On a somewhat more serious note: To make a good estimate, you need to subdivide the project into small enough parts. The parts should be small enough to make it possible to estimate each of them with confidence. If there is a part you don't know enough about, then you have to revert to the formula above.

3

Share this post

Link to post

Share on other sites

It is hard to come up with accurate estimates for another person. Programming time required depends on the individual developer. What may take me 30 minutes may take you one week. Something you may do quickly I may do slowly.

I recall reading that estimating software development times is a lot like measuring mountains that you are unable to climb. You can either compare it to other mountains of known size, or you can take apart the mountain and measure the parts.

The second half of larspensjo's reply above is actually pretty good on that:

To make a good estimate, you need to subdivide the project into small enough parts. The parts should be small enough to make it possible to estimate each of them with confidence. If there is a part you don't know enough about, then you have to revert to the formula above.

That is the method of measuring rocks. The biggest problem is that by only counting rocks you miss a lot of other stuff in the mountain. You can make a good guess by breaking it down into smaller and smaller pieces and by getting more accurate measurements, but it will always be imperfect.

When you have a few years of experience you can estimate by comparing against other mountains. "This thing is like that other thing I did, and that took three months."

0

Share this post

Link to post

Share on other sites

You should however drop the C++ and go for C# unless you want a (almost) direct portability to linux and mac ? Because it saves the time of having to setup and understand boost and stl, memory overrun issues and dangers of temporary references and other joys. C++ needs to code while concentrated and focused at 100%, with rigor, (apply RAII, careful design thinking with SOLID, avoid smells...) Whereas in C# you can code correctly even after a beer, and the compiler is much much nicer in its messages. Sometimes it even gives you the solution directly. Also there are virtually no build times which accelerates code-to-test cycle. I could go on and on...

I can absolutely sign my name under that (which is something I NEVER do). I did spend few yrs writing 3D engines and games in C++ / OpenGL / DirectX, so I have a meaningful base for comparison.

Now, I know, you could object, that I now have more experience than I had 8 yrs ago. And you could also object that the C++11 is waaaaay different/safer/feature-rich from C++ under Visual C++ 6 :-)

But it still freaks the crap out of me, when I just copy/paste 7-10 C# classes (for a new gameplay feature or a massive refactor) that I wrote in Notepad++ (without an access to a compiler) and the beast just works right out the box. That's just insane and it happened to me very rarely in C++ / DirectX (not even mentioning the time it took me to LEARN to write the stuff without any memory leaks whatsoever without smart pointers)...

Of course, if you want to do C++ profesionally later on, then you just gotta get burnt, there is no real substitute for that kind of an experience. Reading about a bug fix on a forum and spending a day (or evern a week for that matter) under the debugger are two drastically different things...

Share this post

Link to post

Share on other sites

I wanted to know if anyone here had experience making a game on their own and how many hours would you estimate for its complete development (programming, sound, sprites, etc.).

For one, I have very little programming experience and have never completed a game in my life. I also know that other things like fidelity of graphics, sound and overall size and scope of the project could determine length as well. As such, I will give a clear vision of my game with regards to those parameters.

[...]

I plan to make a 2d action adventure game.

First congrats, you are asking an excellent question that most new game programmers do not ask.

Personally, for someone with limited programming experience and no completed game experience, I think you should walk before you run. Start with things like Pong and Chess first, then start moving onto isolated features of your game (each as their own mini project initially) like a simple 2d Tile system with arrows moving, etc.

Trying to jump right into something like Zelda is way too ambitious. Beginners often believe it is a short-cut to jump right into a fairly complex game since doing things like Pong would be throwing away code as they don't intend to sell it, but that is not true. Jumping into a project far too complex for your skill level (as Zelda is for you with limited programming experience) is not a short cut, it is a long-cut. You start trying to juggle far too many concepts that way without having the basic skill foundation, and you will inevitably see an exponential increase in bugs as the lack of understanding in the isolated areas cascades as the different functional areas interact. That causes a game so buggy that it either takes forever to make progress or more likely is so frustrating the code base gets abandoned and restarted from scratch. It's far better to first gain a lot of confidence and skill via tiny projects of increasing but feasible difficulty.

Of course, if you want to do C++ profesionally later on, then you just gotta get burnt, there is no real substitute for that kind of an experience. Reading about a bug fix on a forum and spending a day (or evern a week for that matter) under the debugger are two drastically different things...

100% agree. I'm using Lua and Go instead of Objective C or C++ and the difference in productivity is massive. I'm working on a 2-3 year project, that would instead take 4-6 years had I worked on it natively using Objective C / C++.

Not only that, but many professional studios these days are switching away from C++ anyways to higher level languages for the majority of their game programming, so even on the job front it is losing some of its luster and I expect that trend to continue as studios increasingly see less benefits in reinventing the wheel when excellent SDK's such as Unity and Corona already exist for cheap.

0

Share this post

Link to post

Share on other sites

I plan to make a 2d action adventure game. The graphics fidelity will be on par with something in the middle of Nintendo and Super Nintendo Entertainment Systems. So nothing as smooth and detailed as Super Metroid, but definitely more involved than Legend of Zelda. I've already started sprite work.

Personally, I'm remaking a NES game. Started in last year summer and on hold since January of this year. I had a lot of inherited code from previous projects... most of which just plugged in perfectly.

It took me a full week to reproduce level geometry alone (with no logic associated).

0

Share this post

Link to post

Share on other sites

This topic is 1707 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.