• Advertisement
Sign in to follow this  

How long would it take to make a decent full fps? (One person team..)

This topic is 2167 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.

Recommended Posts

10-20 years? 15-30? an entire life time (Which the acomplishment of an entire fps now wouldn't be anything then...) Just wondering . A game like bf3.

Share this post


Link to post
Share on other sites
Advertisement
Depends on your experience and how much money you have to invest.
Could be done in one year or less if you are a experienced coder and pay someone to do the 3d art (would cost some thousand dollars I would expect).
If you can't pay, well, maybe you can find some artists that also want to make an fps. Your project has less chances of being finished this way though.
If you can't code, and you can't do 3d art, well, you'll have to start somewhere, but then, expect your project to take years to complete (you'll need a couple of years either in programming or art to get at a decent level)

Share this post


Link to post
Share on other sites
The complete game including art etc. ... well.. I guess that around 50-100 people work for around 3-5 years at bf3... that would be 150-500 years so, if you are really super-scotty like-supreme-uber-talented in 1 year...

The real answer would be: nobody knows, but most probably somewhat longer than that blink.png

Share this post


Link to post
Share on other sites
Very rough guess - count number of people listed in credits, multiply by how many years the game took to make.
A game like BF3 would likely be several hundred "man-years" of work, not that this is a very useful figure.

Share this post


Link to post
Share on other sites
Depend on your definition of "decent". Most answers here are as if you start a c++ engine from scratch ( void main() {} ) with no art and want to create BF3. You could simplify that and only donwload UDK, launch the level editor, use included assets, code nothing and still manage to get a "decent" FPS. Well it will mostly be new levels for an existing game engine, but ain't that what most commercial games do anyway?

edit : wow I took your own thread text as an answer for your topic question, time for coffee.

Share this post


Link to post
Share on other sites
Depends on many many factors

Are you making it from scratch?
What languages will you using?
How many work hours are in a day?
How much experience do you have?
How much of the art / sound / modelling will you buy / do yourself?

Theres obviously a lot more other factors to take in account, like advertisement, legal work, accounts, a web site for the project, customer support and then when you have multiplayer which has various other areas to deal with ranging from servers, concurrency, security to databases.

The list probably goes on but for now thats all I can think off, I dont even know what BF3 is so I am not sure how much of the above is relevant.

Is it doable as a single person? The way I see it, even if you dont complete your project it will still be worth it, with so many areas to learn, it is worth doing, I would rather dedicate the next 20 years of my life making an MMO on my own knowing it could fail than making 2D indie games that have a small learning curve that may bring in some ££

In the end it depends what your aim is, if its to become rich then you may want to aim a little lower, if its to learn as much as you can, building even the most complicated MMO isnt a bad idea

Share this post


Link to post
Share on other sites
Well the math is not that hard.. a typical modern FPS a-la BF3 has a development time of about 3 years... with a staff of let's say around 50 people working on it fulltime. Of course they did not start from beginner status.. so let's say they have an average 4 years experience in whatever they do (programming, art and so on) to get into the position of producing something like BF3.

So this will give you:

50 * (3 + 4) = 350 years

It's getting late so you'd better start up now :P

Share this post


Link to post
Share on other sites

Looks like ill never be able to achieve this... Moving on smile.png


The language used is likely to be a major factor in game development, making a game in C# for example will take far less time than C++ and SQL Server is far more easier to work with than say Oracle. Then if you use things like ASP.NET MVC, WCF, WPF your work will be reduced even more and thats just current features, future features of C# for example will make it even more quicker to efficiently develop and solve problems :D

Share this post


Link to post
Share on other sites
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif]

Looks like ill never be able to achieve this... Moving on

[/font][color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif]

smile.png[/quote]

[/font]

One thing to keep in mind is, today, many things are so much easier than the used to be. I can't write a AAA (or even A or B) game title myself, but that doesn't keep me from working on my game projects. It just means I need to target a different audience. You don't need mocap animation or huge high poly models. Modern versions of Wolfenstein or Doom clones are attainable as a 1-man operation, if you leverage the right resources:

Sound and Music: It used to be playing sound in the DOS days meant writing your own sound driver! Grab an OGG library and OpenAL, and in a few days you can have high quality music playing with 3d positional sound. Online you can find decent Creative Commons music tracks, and sound effects. (Or record your own sound effects.)

Graphics Rendering: If you know OpenGL you can have a wolf3d or doom-looking maze running quite quickly. You don't have to write the software rasterizer, or figure out the assembly language for optimal texturing. It's all done for you. You don't even have to have very aggressive hidden surface removal. You mostly just have to focus on the actual gameplay logic.

Graphics assets: Use sprites for the enemies like they did back then. High resolution sprites and high-res textures are easy today. Want a hi-res brick wall texture? No fooling around with PC-Paintbrush, just take your digital camera out and go up to a building. Use a digital video camera and record your friends running around and doing fight moves against a green screen. With hardware you already have and software you can get online for free, in a couple days you can have a library of sprite animations for a couple different character models. This would have taken expensive specialized hardware back then and who knows how much time. I read somewhere many of the enemies in Doom were digitized photos of clay models they built. Go get some action figures, and use stop animation, lol.

The point is, a lot of the hard problems are solved, especially if you use an already written engine. Creativity is key. If the game is fun, no one will care the whole world is made of low res cubes. Look at Minecraft!

Share this post


Link to post
Share on other sites
Yeah and these developers are probably putting in more than 40+ hours per week anyway and are way more experienced than you and I.

Working alone is not fun anyway for a complex project like a real game. If you work alone for small games that's certainly doable but fun is not based on graphical quality, but by studying fun itself. I had more fun playing old games than I do on today's bf3's. You can always study and get a job in the industry if you really care about graphics and whatnot.

Share this post


Link to post
Share on other sites
People are calculating a lot of ridiculous numbers here.
It would not take any intermediate programmer alive 350 years to complete Battlefield 3 alone, assuming that person is young enough that the learning process is not over*.
There are many articles written about how productivity/progress does not just increase with each person, and in fact can be lower than one person once you get to around 40 or something people on the same project.

Usually articles talk about how people have to wait for others to complete their work to continue. I would call this the starting point on the topic.
People check in things at my office that break my builds. Sometimes can’t compile. I have done the same to them because my macros were not set the same way as theirs, since they are working on PlayStation Vita and I am on PlayStation 3 (for example). Sorry, didn’t know my changes affected your build.

Aside from build errors there are tons of run-time changes people make that cause others to go wacky thinking they themselves have broken something.
I lost 3 hours of research into a Z-buffer quest just because of a commit from another team member. I was going bonkers wondering why the changes I made had no change to the end result, yet having no change to the end result was not possible. You can’t universally, over the entire engine, swap CCW with CW and see the exact same result on the screen, knowing and confirming that culling is enabled.
Oh, well, I guess you can, if your team member checked in a buffer overflow on the code that handles render state changes.


There is a point when the number of people working on a project becomes exactly equal to having only one person working on the project, assuming all people involved are of the same skill level.
If they are all the same, it is something like 30 to 40 people when it becomes the same as having only 1.
If the levels are varied, the numbers are always fewer than that. More like 15 or 20, because you can always pick the best programmer among them to represent the 1.
If you take that to the extreme and put John Carmack working with only 1 other person, but that person is hardly experienced, then just 2 people are already less productive than 1.


It obviously cannot be solved just by taking the time and dividing by the number of people.
Not only do we not know their skill levels, we do not know how many separate teams were working on it. The above examples I gave only apply to each team.
If a single person has to do both programming and art, then the amount of work is X.
If 1 can do art and 1 can do programming, then, regardless of skill level, the productivity is always increased.
Only inside teams do people stumble over each other a lot. Between teams, there is still some stumbling but since you have eliminated most of the major stumbles, such as those I mentioned, the impact is quite low.
Not to mention that art teams are always relatively more productive than programming teams because artists never modify another person’s art. An artist commit to SVN will not “break” someone else’s art except in the most rare of cases.


There is really no way for anyone to answer this for you, except for the basic fact that if you have to ask you are not able to actually take on the task yet anyway, so there is no real point in giving you an answer.


* And this is assuming the person even has the capabilities at all. Some people simply cannot draw, and that will never change no matter how hard they try. Some people simply have no musical talent. Practice can only be used to reach your full potential. But if you have no potential, practice is not going to help.
So only a person who has the ability (realized or not) to code, model, compose, perform, and design at the level required would qualify as a candidate in the first place.


L. Spiro

Share this post


Link to post
Share on other sites
A suitably dedicated person could probably go from little or no programming knowledge to a decent replication of BF3 rendering tech in maybe 5 years, if they really studied it. Particularly if you're not breaking any new ground. Art is a whole thing though, there's a freaking ton of it, and for it all to be polished is a herculean effort -- The largest portion of staff for any AAA game today is in art. There's probably as many or more marketing and business people involved in a AAA game as there are programmers.

Most of the reason that game studios throw so many bodies at a game is not necessarily because it takes that many people, but that it takes that many people do the job on the time-frame that the publisher wants. From a business perspective, time equals risk because you don't know what people are going to want, what competitors are going to do, or what platforms will be prominent in, say, 5 years. 18-24 months into the future is much more predictable.

Why the obsession of going it alone? Having a small, dedicated team can be a big boon for morale and keep progress flowing in some form. If you try to do it all, you'll be the single point of failure, and are likely to find yourself overwhelmed with all the work ahead of you.

Share this post


Link to post
Share on other sites
I think the question here is the definition of decent. I mean isn't Minecraft a decent FPS? =)
My believe is that programming alone is not the real problem. Here is a book that explains how to program one (i have not read it). The real problem of creating a game like bf3 is the assets: the motion caption, the voice actors, the lip syncing software, the 3ds models, etc. Those are the thing that make creating it literally impossible.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement