Jump to content

  • Log In with Google      Sign In   
  • Create Account


Self set Challenge: 2 month dev cycle


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
34 replies to this topic

#1 speciesUnknown   Members   -  Reputation: 527

Posted 26 July 2011 - 11:27 PM

I've set myself a personal challenge; to turn around a game inside of 2 months, while also working full time. I've decided that over the next year (starting a month ago) I'm going to work towards being able to turn around a game inside of 2 months.

What has spurred this somewhat bold idea?

So far, I've always worked on one pie in the sky idea or another, and this has usually resulted in a fun, but fruitless, process and very little playable material. I spent no less than 3 years trying to produce something resembling GTA3 with zombies (grand theft zombie or similar), but while I was doing this, the industry was moving around me. If I can reliably turn around a game inside of 2 months, then i will be able to turn around a commercial game product given externally set deadlines. Or so goes the theory.

I've set myself challenges before, but these challenges have had far-future ending dates and uncertain goals. I know based on things I've done in the past that if I focus on something I can churn out a vast amount of not-terrible code in a short amount of time, even with a few arbitrary requirements. I've spent years studying how games are put together and can quite successfully teach others to do it, so why not do it myself?


The reward:

If I succeed within this dev cycle (allowing for things such as moving house at the beginning of july, ludumdare, hopefully visiting some family early next month) I will buy myself a 360 and pay the subscription for publishing XNA games. I've set my deadline for a playable prototype at August 19th, which is approximately 8 weeks after my start date on June, ignoring the week I moved house.

The litmus test:

My game has to have the following features:

Maintainable
The code has to be maintainable; not necessarily perfect, but I want to avoid my usual "object orgy" approach to programming; to this end I'm using a component based architecture. Although some would say that component based architecture is Object Orgy writ large. Rapid prototyping does mean that you can throw away a lot of code but i dont want to throw away ALL my code as this is very wasteful.

Playable
This is critical. the player has to be able to drive around the level, in pursuit of some goal, while being attacked by enemies. I've started implementing a very very basic system of seperation between semantically "engine" code and semantically "game" code. I'll do some cleanup once my goal is achieved.

Performance
I'm using c# and this produces some performance challenges which are outside of my usual comfort zone. I've given myself a slightly challenging goal - no allocations at runtime in normal circumstances (i.e. with basic level planning, I need to be able to avoid too many run time allocations). This is important on the 360 because the GC is not so sophisticated, having various performance issues not experienced on the PC platform. (every 1mb allocated triggers a full recursive mark and sweep). So far, I've used a limited amount of object reuse / pooling to overcome this problem. The ability to use structs (a value type in c#) for math and logic is critical here also and has helped considerably. On modern hardware, it seems that a copy of a small to medium sized value type is cheaper than dynamic allocation.

3D: Yes, the game is 3d. believe it or not, provided I have a reasonable bit of physics middleware, I'm just as happy working in 3d as I am in 2d. I've picked up the physics engine BEPU which so far, appears to be very well engineered, and most operations with it don't allocate huge amounts of shit to be collected by the GC.

Sound, music
Just the basics; placeholder artwork which is integrated properly with the rest of the world, thus demonstrating that I am actually capable of turning around such a system quickly enough.

Scripted events
A storyline is impossible without this. The initial prototype will consist of a scripted demo level, with hopefully about 10 minutes of gameplay.

I have a blog on tumblr documenting my progress here;


http://newoldstuff.tumblr.com/

I began my challenge in its current form on the 21st of June, the same day I wrote my basic lighting functionality for 3 directional lights. I'll be taking a few days out because of ludumdare on the 19th-22nd and so my final prototype should be arriving on the 26th.

Tonight I will implement my damage modelling system to accompany my projectile system (which took a few days but which I'm quite proud of because it works and its damn fast to boot).

[Edit] Oops, I actually started on the 21st
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!

Sponsor:

#2 -Datriot-   Members   -  Reputation: 103

Posted 27 July 2011 - 03:04 PM

I was thinking of doing something like this recently, since I've had the same problems with "pie in the sky" projects that had vaguely defined goals. Good luck with the project, I can't wait to see what you've made by the deadline. :)

#3 JoeCooper   Members   -  Reputation: 338

Posted 27 July 2011 - 03:53 PM

I'm starting something like this on Monday.

#4 GroZZleR   Members   -  Reputation: 820

Posted 27 July 2011 - 11:53 PM

Good luck!

It's very doable. I do this with Flash games right now, for a living. Have you considered making them instead of downloadable games? You might find you can make quite a bit of money working on your hobby. It's also very satisfying to be able to upload your game to Kongregate / Newgrounds and get thousands (or millions if your game is good) of views, feedback and criticisms. Downloadable games generally aren't as easy to share.

#5 ChurchSkiz   Members   -  Reputation: 418

Posted 28 July 2011 - 05:57 AM

Not to be the pessimist but your goal is to turn a game in two months but you're settling for a playable prototype? Why not work to a completed game or polished demo? There's a million prototypes out there, far fewer finished games. Personally, I think 100% completion is the most important part for hobbyists.

#6 JoeCooper   Members   -  Reputation: 338

Posted 28 July 2011 - 06:31 AM

I second Church; my last project was a 3-month project in C++ and I actually made a working prototype (in Java) in a few days.

#7 way2lazy2care   Members   -  Reputation: 778

Posted 28 July 2011 - 08:38 AM

Not to be the pessimist but your goal is to turn a game in two months but you're settling for a playable prototype? Why not work to a completed game or polished demo? There's a million prototypes out there, far fewer finished games. Personally, I think 100% completion is the most important part for hobbyists.


I think one of the rapid fire indie talks at GDC talked about this. His point was that having one finished quality game will outshine 50 working prototypes, so you should work toward a finished game rather than a working prototype. I forget who the opposite side of the coin was, but he showed someone who made something like a prototype a day and considered them 'finished' and claimed that all of his 'finished' games were probably less of an accomplishment than Braid simply because they weren't actually finished games.

I tend to agree. Prototypes are only as good as the finished game you make from them.

#8 speciesUnknown   Members   -  Reputation: 527

Posted 28 July 2011 - 08:48 AM

I wont be trying to sell the prototype - the whole point of the 2 month dev cycle is to eliminate my tendency to over-engineer everything. I need to be able to turn around a product in 2 months.

I'll no doubt keep a lot of what I do for the next phase (again, 2 months) and that product should be saleable. Bear in mind that I'm starting from scratch in a new language and dev framework. I cant go for a 6 month dev cycle and release something polished because there is a danger that I will fall back into my old routine of working for 18 months on nothing.
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!

#9 Luckless   Crossbones+   -  Reputation: 1465

Posted 28 July 2011 - 09:06 AM

I think 2 months for a complete prototype/concept with fully fleshed out features is a good goal. But, along the lines of ChurchSkiz's thoughts, I think it needs to be followed up by another month or two of good polish and finish work.


Good luck.
Old Username: Talroth
If your signature on a web forum takes up more space than your average post, then you are doing things wrong.

#10 way2lazy2care   Members   -  Reputation: 778

Posted 28 July 2011 - 10:43 AM

I wont be trying to sell the prototype - the whole point of the 2 month dev cycle is to eliminate my tendency to over-engineer everything. I need to be able to turn around a product in 2 months.

I'll no doubt keep a lot of what I do for the next phase (again, 2 months) and that product should be saleable. Bear in mind that I'm starting from scratch in a new language and dev framework. I cant go for a 6 month dev cycle and release something polished because there is a danger that I will fall back into my old routine of working for 18 months on nothing.


If you have access to it I'd watch Andy Schatz' presentation on his Monaco development cycle. Definitely don't underestimate the time it takes to finish/polish.

#11 speciesUnknown   Members   -  Reputation: 527

Posted 28 July 2011 - 04:01 PM


I wont be trying to sell the prototype - the whole point of the 2 month dev cycle is to eliminate my tendency to over-engineer everything. I need to be able to turn around a product in 2 months.

I'll no doubt keep a lot of what I do for the next phase (again, 2 months) and that product should be saleable. Bear in mind that I'm starting from scratch in a new language and dev framework. I cant go for a 6 month dev cycle and release something polished because there is a danger that I will fall back into my old routine of working for 18 months on nothing.


If you have access to it I'd watch Andy Schatz' presentation on his Monaco development cycle. Definitely don't underestimate the time it takes to finish/polish.


That sounds like a good idea, but, does anybody have a link to this? Googling turns up various older things.

Its important to note that this is not a team project, its a one-man-band thing, and the first prototype wont have a lot of content (mostly it will be a complete "engine" with a single playable demo level).
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!

#12 way2lazy2care   Members   -  Reputation: 778

Posted 28 July 2011 - 08:17 PM

That sounds like a good idea, but, does anybody have a link to this? Googling turns up various older things.

Its important to note that this is not a team project, its a one-man-band thing, and the first prototype wont have a lot of content (mostly it will be a complete "engine" with a single playable demo level).


I think it's called, "How to win the IGF in 15 weeks," but I'm not sure if you can find it for free anywhere. I know it's in the GDC vault, but that's not free.

#13 zedz   Members   -  Reputation: 291

Posted 29 July 2011 - 03:56 PM

His point was that having one finished quality game will outshine 50 working prototypes, so you should work toward a finished game rather than a working prototype.


what happens if the 50 prototypes are like minecraft and the finished game is anything else (except perhaps warcraft or cod) :D


@speciesUnknown Posted Image

So what are you making?
The most important thing is to have the game playable day 1!

#14 speciesUnknown   Members   -  Reputation: 527

Posted 29 July 2011 - 04:18 PM

His point was that having one finished quality game will outshine 50 working prototypes, so you should work toward a finished game rather than a working prototype.


what happens if the 50 prototypes are like minecraft and the finished game is anything else (except perhaps warcraft or cod) :D


@speciesUnknown Posted Image

So what are you making?
The most important thing is to have the game playable day 1!


I'm rushing every aspect of it, so the polish everybody is talking about might be nonexistent, but the idea is that its a mission based vehicle shooter set in cyberspace. Yesterday I implemented the particle system, by expanding the projectile system, so that particles can be physically simulated (or not) as I wish. You can already drive around, and fire the cannon, tonight I'm adding death behaviour to my current "debug NPC" the "two boxes and a cylinder of doom" (they look like a turret sort of).

I started out with a 2d framework which i and some other students build for a 2d game which didn't go anywhere, so playability in the first day wasn't possible. But now I have the projectile system, i should be playable in the next few days. From that point, any "engine" features I implement will be in direct support of gameplay.
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!

#15 zedz   Members   -  Reputation: 291

Posted 29 July 2011 - 05:40 PM

Heres some games Ive done (excluding work stuff) In total Ive done over 100 so have a good idea of whats required & how to plan
now this statement 'i should be playable in the next few days' is worrying. It should be playable within an hour. Im not joking, it will not be fun or good but at all stages it must be playable

A/ add player
B/ make it moveable
C/ add basic scenery
D/ add an enemy (make it moveable)
E/ add weapons
F/ add it so you can shot enemy
G/ add your particles

I think youve done the first 2, now you should be on step C not step G (or whatever)
Always do the important stuff first

#16 speciesUnknown   Members   -  Reputation: 527

Posted 30 July 2011 - 08:17 AM

Heres some games Ive done (excluding work stuff) In total Ive done over 100 so have a good idea of whats required & how to plan
now this statement 'i should be playable in the next few days' is worrying. It should be playable within an hour. Im not joking, it will not be fun or good but at all stages it must be playable

A/ add player
B/ make it moveable
C/ add basic scenery
D/ add an enemy (make it moveable)
E/ add weapons
F/ add it so you can shot enemy
G/ add your particles

I think youve done the first 2, now you should be on step C not step G (or whatever)
Always do the important stuff first


This is similar to the process I use for a 1 week or couple of days dev cycle, but for a 2 month cycle (something ive not done before, to be fair) i've spread these things out and put them in a different order. The main difference is that I create a basic implementation of each thing before the game is playable and then, in the last 3 weeks or so, i go back and change each basic implementation to suit the game. So goes the theory. This theory will be refined as time goes by.
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!

#17 zedz   Members   -  Reputation: 291

Posted 30 July 2011 - 09:28 PM

So goes the theory. This theory will be refined as time goes by.

well thats the theory ;)
bugger theory, results and reality is what you should be concerned with.
OK If I wanted to call your bluff I'l say ok you had this working demo in a week (now polish so what did you do for the next 7 weeks?)
i.e. WHAT iM TRYING TO SAY IS i THINK YOU (sorry caps lock) might be slipping into the overengineering buzz (Ive also been guilty often in the past, thus Im trying to impart my wisdom)
Hell I started a new game on the 24th (its now the 31st) you can play it and all, u could play it day one (*), it may be fun or it may not, hard to say when you make something, just like writing songs.
I can give you a link to this game, (fresh eyes) you can tell me whats bad and that, but can you do the same? i.e. a game doesnt exist as an idea its physically gotta be explored/experienced first by other ppl.
Mate are you truly serious about doing this game in 2 months? cause the idea of sticking it all together in the last ~40% of project time is not a winning solution. This is me as the guy on your shoulder (wisdom) speaking.

(*)a screenshot is not on the above link, well my last 3 things aint on the above link

#18 speciesUnknown   Members   -  Reputation: 527

Posted 02 August 2011 - 08:03 AM

So goes the theory. This theory will be refined as time goes by.

well thats the theory ;)
bugger theory, results and reality is what you should be concerned with.
OK If I wanted to call your bluff I'l say ok you had this working demo in a week (now polish so what did you do for the next 7 weeks?)
i.e. WHAT iM TRYING TO SAY IS i THINK YOU (sorry caps lock) might be slipping into the overengineering buzz (Ive also been guilty often in the past, thus Im trying to impart my wisdom)
Hell I started a new game on the 24th (its now the 31st) you can play it and all, u could play it day one (*), it may be fun or it may not, hard to say when you make something, just like writing songs.
I can give you a link to this game, (fresh eyes) you can tell me whats bad and that, but can you do the same? i.e. a game doesnt exist as an idea its physically gotta be explored/experienced first by other ppl.
Mate are you truly serious about doing this game in 2 months? cause the idea of sticking it all together in the last ~40% of project time is not a winning solution. This is me as the guy on your shoulder (wisdom) speaking.

(*)a screenshot is not on the above link, well my last 3 things aint on the above link


When you first started out on this rapid development cycle, did you make the game playable in 1 day? Or, did you develop this process much later? I'm entering ludumdare on the 19th, and ill probably take your advice - make the game playable within an hour.

I'm not sure how I could have made this game playable within an hour, or even a day. I started out without any physics or logic at all - it took me a day or so to set up the physics engine I'm using and get a tank to drive around. Then I spend a couple of days on the ballistic system.
Don't thank me, thank the moon's gravitation pull! Post in My Journal and help me to not procrastinate!

#19 zedz   Members   -  Reputation: 291

Posted 02 August 2011 - 03:03 PM

When you first started out on this rapid development cycle, did you make the game playable in 1 day?

not sure at the start (its a few years ago) Im not sure exactly when the change came, for work (flash developement) I had to show stuff within the day (this was the catalyst, do it or dont get paid is a great motivator)
Q. do you need physics?
i.e. its not absolutely essential to the game is it! this is what I mean, just get the tank moving when the player presses the key (later on you can flesh it out with semi-true physics or whatever) if you think it will improve the game.
Focus on what is essential to the game first, youve set yourself a tight deadline, thus you have to do this or else whats gonna happen is the deadline will loom and then youre trying to put all the pieces together & youre running into problems, or it doesnt work as you imagined. This will happen mate.

#20 mikeman   Members   -  Reputation: 2049

Posted 02 August 2011 - 03:09 PM

I was thinking the exact same thing the last few days, and with the exact same deadline(2 months). I think it will help me get focused and drag me out of these eternal unfinished projects. So, good luck to you and me I guess!




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS