tags:

views:

250

answers:

2

I was just wondering, if I began learning C#, how long it would take until I would be able to make a game utilizing the XNA Game Studio (4.0) and framework to make an XBOX 360 Live Arcade side-scrolling game.

Realistically, I have other priorities too, so I'm just trying to feel out if the "project" is feasible. Obviously, if I wanted to make a full-blown live arcade game, I would need to find a friend(s) who's willing to do some art design, and probably someone(s) who's willing to help code.

Any ideas? The game would be relatively simple, but I would want to make it unique and visually appealing (more on the artsy side here) to make it stand out.

+3  A: 

Programming a game with no funding is very very hard.
You should learn how to program a game but don't expect any graphic artist to contribute that easily unless he is getting paid.
If your game gain enough interest and have a demand some artists might contribute.
As with any open source project, you start alone and hope people will contribute as you go.
You should try and learn how to program such a game. Try programming it with little to no graphics at first. Even lines and dots will do.
After the game is functional you might get some interest if the idea is good enough.
Just do it and see what happens.
It will improve your programming skills whether the project succeeds or not.

the_drow
Nice, I know what you mean. Yeah, I guess lines and dots would actually be able to be swapped out for pretty effects and smooth animations later on if my idea is good enough to catch somebody's attention.
BOSS
+3  A: 

First of all - you might want to consider getting on Xbox LIVE Indie Games (XBLIG) first, and trying to get on Xbox LIVE Arcade later. The latter requires a proper publishing agreement with Microsoft, the former does not.

Giving you a time estimate is very difficult, as has been mentioned. Especially without knowing your level of experience. My last finished game was a technically-fancy platformer, released on XBLIG, with a team of one, and took 4 months to develop. But I started that with years of experience - and I had to make huge cuts in order to fit inside that time limit.

If you have little or no experience, I would suggest starting small. And when I say "you" - this also applies to your team as a whole. Start with making a very small game (tetris, snake, that sort of thing) or two, from start to finish - including distribution of the finished product. This will give you some critical experience and give you a better understanding of what goes into making a game and how long things take.

Finally - rather than estimate - I would recommend you set yourself a time limit and try to schedule inside of that. For an inexperienced team making a platformer, I would say 6 to 9 months is reasonable, depending on how complex you will make it. (This assumes, of course, that you take my advice and try a small game first. For a small game set a limit of, say, 1 month.)

Andrew Russell
+1: For starting very small, especially if the OP hasn't learnt C# yet, or got used to XNA. But there is no reason why he can't build something simply like http://www.kongregate.com/labs (I know it's in flash, but I learnt XNA by transcoding it). Also, I like the look of your game. Downloading it now :)
Callum Rogers
Thanks for the advice! And wow, congrats on Dark! That looks really fun! Also, how much experience did it take when you developed that game? What method of learning did you find the best, as far as C# and XNA goes?
BOSS
When I started with C# and XNA I already had several years of experience with C++ and OpenGL. And before I made Dark I had made and finished two smaller XNA games (and used it for a few other things besides).
Andrew Russell
@Boss: My own learning style is to jump in and try things - but I know this isn't for everyone. My best advice for someone like me - but also for any XNA newbie is: treat it like a scripting language. You have a main character that's a sprite? Well add `Vector2 position, velocity; Texture2D mainCharacter;` directly to your `Game` class to begin with. You can always refactor it into its own class later. The biggest mistake you can make is to start at the opposite end - creating big, complex architectures with scene graphs and class hierarchies and so on.
Andrew Russell