Almost a year later...I wonder if anything has changed. I still hope all you guys are still in on this discussion.
Now, this does not apply to the open-source model alone. But rather, to all the "garage game makers" out there who are doing this without commercial backing and those who are doing this on their free time.
Anyway, most of what I think has already been said. I totally agree with Sindwiller's statements, especially that games are drawn and not coded. (For those who might join in the discussion, please try to read a couple of posts before impulse-posting that games are indeed coded).
Having worked a few years for a programming company (not a game company), I've had the pleasure of also making design specs and managing a small team. Though I've never tried developing a real game, I think many lessons from software development can and should be applied to game development as well. After all, games are software.
<long discussion starts here, skip if you like>
First of all, before any of the coding starts (quite possibly even before learning some technologies), you have to work out your goals (Requirements Definition phase). "That's easy!", you say, "my game will be a 3D MMORPG set in a mafia run alternate New York!" Wrong, that's just the idea, but it doesn't clearly define your goal. And I think that is the single most prevalent reason why only 2% of games in SourceForge are mature. The developers keep wanting more features, believing "oh I should have this feature." and "Mr. X's suggestion is also nice", and game development never ends. It has to be written (written down, whether an OOo document, a text file, or a paper napkin at Starbucks) in a clear and defined way. Bullets would do.
- 3D MMORPG that can accomodate 1000 players
- Players can join clans
- Level up system
- Good computer AI (May need more defintion)
- 8 towns spread over 3 cities for V1.0 release
- You buy items by trading in sacks of corn obtained from killing wolves
Once the goals are about say 80% met, assuming they were properly made in the firstplace, you can say you have an Alpha version. When practically everything is in there (or sometimes you had to scrap a feature to make the deadline) and just needs some ironing out, you call that a Beta.
When everything is done (or decide that some beta bugs are too minor or will take too long) then you can say you have V1.0. It pisses me to see a game that is labeled 'alpha' that has a long list of to-do. Also keep your goals reasonable. You can always make a 'part 2'.
Second, you must have a plan or schedule where you would put in the estimated time frames. For garage developers, if you can put in an hour a day, factor in that it would take about a week to do a day's worth of work. Factor in how many people will be working on it. Make (reasonable) target dates for completion of each module, character, level, whatever, as long as you break it down into small, granular parts.
You're probably thinking, "when can I actually start BUILDING my game??". If you consider designing your game as building, then it starts now. A good design is possibly more important for you, the guy with the idea. This way, you can oversee your team, and even if you're doing it alone. This is another pitfall for many games I think. As with the goals, you have to flesh out most of the details of the game. Write it down. The important thing is you have design documents you can refer to during the code development. Though softdev doesn't need a storyline, a good game does. And I'm thinking you have to start making the story here. If you are a lone developer, you may need to finish it before moving onto the next phase.
Next, you either learn the technologies needed, train those who will need it, start the coding yourself, organize the art department, mobilize the music department, think of the financial department, etc. etc.. While ensuring your code does what it's supposed to do and do it well, don't get to obsessed at this stage, there's still the test phase later.
Ok, so you finished coding most of it and you think you have an Alpha, what next? At this point you can start getting Alpha testers. IMO, this is the point where you release your source code. As bug reports come in, and you're struggling to complete the rest of the modules, you have to iterate through phases of UT (unit testing, testing each granularized module), IT (integration testing, making sure the modules are working together), and FT (function testing, this is where your game testers come in).
Gosh, I'm sleepy writing all this stuff. Anyway, you might not think this is appropriate for your game, but if I were to start one, I'd probably try to follow this.
In this sense, B0rsuk actually made the right decision not to release his GPL game to the public until it reached alpha.
LordRaiden also had a good idea by focusing on the "game" itself instead of the assets. He's the guy with the idea, it would be natural for him to develop the basic design, perhaps make the detailed design as well. And then either code/draw the game or break it up into small modules that he can share to his friends/colleages/team members.
Again, story is also very important. And it is one of the reasons some game sequels can get away with little innovation because of a compelling story. Frankly, I've tried and have had enough "tech demos", deathmatch fps, and "game engines". For once, I want to play (or maybe eventually develop) a game that actually leads to something. Progressing a story brings about a different player satisfaction than your next thousandth frag.
I also believe that the shareware + opensource model just might be crazy enough to work. I had high hopes for the ransom model, but it doesn't seem too viable now that I think about it.
PS. Takmadeus, Neverball is a clone of either monkey ball or hamster ball or some xxxxball before them.
Last edited by punong_bisyonaryo; September 4th, 2008 at 05:48 PM.
I've helped it seems like a million projects that eventually went in the can, but all of the game projects I actually have led have been successful. The above poster has nailed the reason for why I've been comparatively successful at finishing projects when a lot of other people haven't.
The trick is the same as in any David versus Goliath scenario. You have to pick your niche, and just do that very small thing very well. So, for making games as an independent developer, you need to have an extremely good "game nugget" with as few other features as possible. The "game nugget" is what one of my professors would call the core gameplay mechanic of a game (I have a BS in ... what do you know, game design and development).
The most important thing I've come to realize about independent game development is how fun-to-work-efficiency works. This efficiency factor is basically the ratio of how fun a game is to how much work was put into it.
Coming from this idea, its interesting when you realize that puzzle games are the most fun-efficient. Even though you might not have as much fun playing one as a FPS or RTS, they take orders of magnitude less work to make. They only have a nugget, with no superfluous abstractions or extras -- all games are centered around puzzles, just most computer games have them hidden under graphics and other abstractions.
Most modern AAA titles have low fun-efficiency factors because they take such astronomical labor to produce. They are, however, successful because their fun-to-price ratio is high, so they sell huge volumes. This fact shows that fun-efficiency is essentially equivalent to profit margin, where fun-to-price (plus marketing budget) has more to do with units sold. Independent games will have basically nill marketing (and thus low volume), so they need high profit per unit to finance their future games -- this is why fun-efficiency is critical for indy devs. In terms of OSS development, where there is no currency "profit," the profit is instead in terms of man-hours-committed -- OSS games will get more developer support following essentially the same ideas as above.
Anyway, that's enough of my comments for now.
Last edited by curvedinfinity; September 4th, 2008 at 08:32 PM.
that is just why Wesnoth became such a good game over the years... it started out with a simple and strong idea and took 100% out of it
I've been playing quite a lot of both commercial and open source games, and there's one main thing that, in my opinion, separates them. The open source games are often a lot of fun to play, have good graphics... but they lack something very important, a storyline. Of course not all games need a storyline to be good, but it's still a very important thing. I've played some games that I'm going to remember for years because of their atmosphere, really deep and interesting story, memorable characters with their own personalities who you can actually get attached to even though it's just a game... some of these games even have their own worlds with a unique history and culture... but none of these games are open source. When it comes to games like Final Fantasy VII, Fallout, Fallout 2, The Longest Journey, Dreamfall, etc. I know I'm going to remember them all my life because the stories in these games are amazing. I wonder why open source games can't be like that... if the open source community can include very good programmers and very good artists, then I think it could also include good story writers....
Last edited by Starlight; September 5th, 2008 at 10:53 AM.
@Curvedinfinity, that is quite interesting about fun-efficiency and fun-price ratios. For some reason though, I hope that most indy developers don't realize this, because I want to see great OSS games, despite a high fun-price ratio. If only an opensource game would be commercially made that could reach a wide audience, that would really leverage the fun-price ratio and invite more game development...hopefully. Realistically, though, as much as I want it to, I can't see it happening in the near future.
However, the annual Independent Games Festival seems to be able to get seemingly nice quality games from independent game makers. I see this as a route for OSS game devs for inspiration and make a buck a long the way, possibly to launch even better games. I mean, if they can, the OSS community can too.
And another thing I noticed, some of the finalists have STORYLINES. Starlight couldn't have said it more clearly; a good storyline sticks with the player long after the (digital) dust has settled. Are there no good writers who know about OSS games (or OSS game devs who know how to write, for that matter)? My personal best guess is that most Linux users/OSS game devs are mostly (NOT ALL) techhies, coming from some field of computer studies, and the like, who are quite adept at creating mean code, but need a bit more flexing on the other side of the brain (I am SO gonna get flamed for this, please don't). That is why we need to tap into our non-techhie group of friends, convince them to release their creative works with an open-source compatible license (CC By-SA, etc.) to complement our tech-savvy.
well after those last few posts, i guess theres something I could contribute to a game design team, while I've been reading this (yes, I read every post) my heads been oozing creativivty . I'm a mediocre python programmer (not even that, if you want a program that can do a basic calculation, maybe something that youd connect to a sensor in a security alarm, then I'm your guy, but a game engine would be over my head, ai maybe I could do with a little bit more practice), I'm a little to impatient to be a 3d moddler (the complete lack of artistic ablility doesnt help) but anyway more to the point. My idea is for a game thats slightly inspired by quite a few games, mostly that spring to mind, Tombraider, Counterstrike, Hidden and Dangerous, and gunman Chronicles. It would be sortof a warzone type game, when you first run the game, youd run through a single player level, that went through a training area (like gunman chronicles) and taught you the basics of the different weaponry, and ways of manuvering round the battlefield (which would be inspired by tombraider) then, when you got through the tutorial, get given a bonus or something, like an extra weapon as your basic hand gun (theres probably games like this, but that one is uninspired). Then in the battle field, it would be sort commando teams, online, with teams of human and ai comandos, wed be able to incorporate different modes like capture the flag and hostage rescue and stuff, I'd hope that wed be able to make everything up to the quality of the elders scrolls: oblivion, for the highest settings, in terms of texures, animations and effects, otherwise, it wouldnt have much appeal over the current commercial games, and if it were too much better itd get a bit laggy for online play. of course someone else might know better than me... I also figure that if we were to have more bonus items (like the tutorial reward) as premium content, that was either bought or won in tournements, then that would generate some income to fund other open source games...
well theres my opinion, af few friends and I were talking about making an mmorpg, but I've been aware from the start that as the closest thing to a programmer (besides one guy who makes macros using VB) that doing it on our own would be pretty impossible, So far in our team is me (I can compile stuff, design intricate maps and floorplans etc) four other guys who are full of ideas, two of which are actually reasonably artistic (learning to use blender, if theres a better program then someone feel free to tell me) and that other guy who knows VB, as for his artistic skills, I dont know him that well (friend of a friend situation), so yeah, thats our team so far, if anyones interested then, post after me i guess and if we get enough attention we can sort out some sort of basic struture of how to go about it...
By the people, for the people.
I wasn't saying that all indy games should be puzzle games... I was just saying that indy games shouldn't even consider the normal molds of commercial games -- FPS, RTS, RPG, etc... They require so much work, yet aren't really so fun as to warrant all that work.For some reason though, I hope that most indy developers don't realize this...
@ punong_bisyonaryo and starlight
A very good discussion, and after some thoughts and curvedinfinity's post I think there is a good way in which good games could be done and it is novel adaptations.
Why did I come up with this? I was remembering when i played Indigo Prophecy (Fahrenheit was its alternative name).
It was not an action, rpg, MMORPG or fps game, it was a novel adaptation (not exactly a real novel actually) and the game had a simple engine and had all its bets in the storyline. Now, that's the kind of games we need nowadays, not the simplistic formulas we have been offered lately.
what do you think?
What I can't seem to understand is the big difference between indie freeware games and indie open source games. Look at places like TIGSource or IndieGames.com and you'll find a steady stream of new, interesting, and often innovative titles. So why can't the open source community match that? Frankly, I've yet to come up with a good, solid answer to that question. All I can say is that I hope we do make some headway, the sooner the better.
So yeah, this discussion is a good idea. It helps bring this problem out into the open and maybe even answer a few of the proposed questions. But it also proves that talk isn't worth much. This thread was started way back in May, 2006 and in that time the situation has changed very little. There is a little light, though. Free Gamer is a pretty active little community aimed at open source game devs. It's the only site I know of centered around open source games that actually seems to be driving some innovation and the closest thing to an indie games community we Linux users have. May Free Gamer live a long happy life and may open source games flourish