Scrapped Python, learning C# for Unity. Is 2 years development a naive estimate for a 40hr game?

1    11 Nov 2019 19:55 by u/MrJohnBongo

I dont know if anyone here remembers but a few weeks ago I was learning Python and since then I have scrapped it for C# to learn to program in unity.

I was just looking on here to see if anyone experienced in game development or Unity could tell me if an estimate of 2 years development is a realistic timeframe to get a game that would take 40hrs to complete completely finished, or at least in an early access state.

Realistically I am talking about 6 months of some pretty hard learning and practice of Unity first of all, and after these 6 months are finished, I start developping my game. I have a rough idea for what it would be but it would be a massive wall of text.

Thanks for any replies, tell me if im being naive.

8 comments

0

Depends on the game, really. "Hours to finish" isn't a good measure of complexity.

2 years for a solo dev doesn't seem realistic if you are aiming shippable quality, unless you are making some kind of a mobile "game". Besides, you'd be constantly learning new stuff while developing it, and you might quickly burn out the moment things stop going smoothly. Discipline and good time management are very important. Keep it simple, and try to familiarize yourself with the software first before trying to think of such estimates for your "dream game", they are never right.

0

Okay, thanks for the honest comment. I think I'm getting a little above my head, I just have discovered something I'm understanding and i've got all these ideas that are running through my mind.

The type of game I'd want to build consists of so many genre's that I think it might be a long long long time before I even got halfway finished. I don't think it would be impossible though.

0

That's a very common mistake newbies do, wanting to make that one epic big MMORPG just isn't going to work. Important thing is a game needs to be actually fun to play, you should start by making a simple prototype using placeholder assets and trying to experiment with only the core mechanics present, then build up from there. That in itself can already be pretty challenging, but if you succeed you'd have a better understanding of what you are doing, and most importantly you'd have *something* that kinda works. If you start burning out, focus on a different side of the project, like making assets or level planning, just make sure you open the IDE once per day and DO something, even if it's just writing 2 lines. Procrastination is a killer. Always remember to keep the scope tight, because feature creep will never stop and you'd always have new ideas. Maybe that idea isn't that good in practice, don't be afraid to abandon it and focus working on something different.

0

I don’t know what unity is. But then I am a proud hater of “C pound” and all things micro$oft.

But your question applies to most any environment really.

Caveat: you do t provide enough info by 10% to even guess at a real answer. That said here are my thoughts.

First I dislike your “6 months of learning” as being separate from the game development. Unless you are in a structured instruction program that is organized progression (which it sounds like not the case) then your biggest hurdle will be picking something to write.

That blank screen with a blinking cursor can be quite intimidating to a lot of people. PLUS if you are just screwing around with interesting looking APIs you will waste A TON of time - probably about 5 months worth.

A vastly better idea is to start working on your game. Accept the fact you don’t know what you are doing and will be throwing away bad code. But crucially you will be learning the exact skill you need and will learn why things are done AND NOT DONE a certain way. Things that look great in a 50 line program look like the spawn of Satan in 50,000 lines.

The biggest problem in your 6 month timeframe is what is the game going to do? I can write a game that takes 40 hours to complete in about an hour: the goal is to move your character across the screen but the catch is it only moves one pixel a minute and if you miss clicking by more than 30 seconds you have to start over. I don’t think that would be a commercial success.

It would be good to do some design up front. You need to know what classes you will need and some vague idea what they are going to do. Once you get that you can start to say “this will take 3 days; that will take 2 weeks”. Your biggest mistake will be making gigantic monolithic classes that do WAY THE FUCK too much. Better to have lots of classes that do one thing well than GamePlay.cpp that is 100,000 lines and takes 2 hours to compile and 5 years to debug.

0

I would break down the milestones and put time estimates on them. Your estimates will be wrong, but can adjust as you go. Only way to know is try it! Sounds like plenty of time to me.

0

People can (sometimes) get hired professionally after two years of community college. I would say 2-4 years of guided learning is enough to start being good, if scope of the work to be done is reasonable.

No individual is going to make the kind of AAA games that entire teams of specialists produce. But maybe you could make a basic indie-game in six months of intensive training and comprimises...

0

Depends what kind of vame. You could just make a 40 hour, nicer clone of desert bus...

0

The most important bit of a game is: what is fun about it?

The tech comes after. Minecraft for example - they saved money on art work, yet it was a fun game.

Next, what resources are there to make it? (People-money-time)

What's the simplest way to see immediate results?

List the most important features (spreadsheet?) Implement most important first; maybe never get to the end of the list.

Roughly 100k lines of code is a half year effort for a person.

Start immediately with a minimally functional game rather than commit two years.