Original Post
I'm thinking of doing a research project on using Off The Shelf products for rapid Game Development. The idea would be to use as many high-level systems as possible, and roll them together into a comprehensive "product" or group of products (like the '350 shareware games' of old). They don't necessarily have to be open source, though comparing commercial vs. OSS might make for compelling reading. To me, a quality game starts with a fun concept and ends with replay value, with quality art resources somewhere in the middle. There are plenty of 2D games that I would play a lot longer if the artwork were better, and there are plenty of really beautiful games that I would play longer if the game were actually fun. Obviously, you can't play a game for very long if the replay value isn't there, and varied gameplay and a large amount of content are usually synonimous with higher replay value. I'm thinking content will be procedurally generated in some way, though this has significant R&D costs. I definitely think that each game involved in the study should use the same content resources, just to keep variables to a minimum. If a crappy game is made with excellent artwork, it might skew the favorable perception away from a good game with programmer art. Doing something with an anti-aliased, vector-based rendering system is my first spark on a content system that could be randomized but still be pretty high quality. Abstract and stylistic, but smooth and refined. For varied gameplay, because everything pseudorandom, it's not really feasible to do any kind of scripted events or story progression without a long research period in creating pseudrandom story line generators. The gameplay would have to be something accessible. Puzzles, shooters, resource managers (the Maxis style SimWhatevers), etc. Games that involve progressions of skills probably won't work, as that progression is usually tied to some type of story. Maybe hoping for some form of emergent gameplay might work, i.e. sandbox type games. Infrastructure is also a concern. Keeping system requirements low should minimize the need to QA test the system (if accelerated graphics aren't needed, then you don't have to test against ATi vs NVidia hardware). While choosing the XBox360 as my platform would minimize my QA time by narrowing my supported hardware profiles to a bare minimum, I'd really only have XNA and C# to use in that development. The development language should be fairly free of gotchas and pitfalls, while still being relatively powerful and having access to a variety of game creation resources. So while C++ has the most options, it's also the most difficult to use for a stable system (especially since I haven't programmed anything in it in over 7 years), and while Python will protect me from myself as I rush to make the game, it doesn't have a wide variety to choose from for game dev resources. Finally, some kind of testing and evaluation strategy will have to be defined. For the purposes of the project, some kind of qualitative and quantitative statements on the games themselves will need to be made, so they can be compared and contrasted. Perhaps a focus test with human subjects?