Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Programming Entertainment Games IT Technology

Why Game Developers Should Finish What They Start 80

Michael writes "Too often, hobbyists and open source programmers take on game projects that they can't hope to finish. Freshmeat is rife with games from developers who have bitten off more than they can chew. So I drafted an article which takes a look at the major roadblocks to successfully completing open source and hobbyist game projects."
This discussion has been archived. No new comments can be posted.

Why Game Developers Should Finish What They Start

Comments Filter:
  • by gildesh ( 799552 ) on Monday August 02, 2004 @06:58AM (#9862017)
    There are times when I'm working on my personal project (a game, not surprisingly) that I just stop after getting one feature debugged, and I end up doing anything but work on it for weeks on end.

    The way that I get myself back on track is by concentrating only on the code that must get done and then I worry about making it more robust later on. I sometimes find myself worrying about the content. This is A Bad Thing(tm) to do while programming a game engine. It's a lot better just to focus on the code and the functionality first.

    Obviously, there are times when I physically am unable to program for various reasons (real life and all that). But, no one said that being an open source game developer was easy.

    I'd love to post my game URL here, but I'd rather not have my ISP think there's a DDoS attacking me. It's called Ether though, it's a web-based MMORPG. (there's a very uninformative page for it on SF.net [projectname: ethermmorpg])
    • I've got my own unfinished games too, but for other reasons. I really suck at AI coding, so I usually never finish anything beyond PvP.

      I also ran into the problem of a nigh-unusable menu when you're using a slow computer (as I put in way too much OpenGL goodies and the menu actually runs too slowly to move the cursor correctly).
      • I was just thinking about this last week. I have absolutly no interest in doing AI for a multiplayer game. But what if left an api in place that gamers could create bots. As antisocial as the bots seem, with good balance they can still be cannon fodder for real players and maybe get more enjoyment out of smashing another players bot instead of "fighting the game".
    • by Anonymous Coward
      The way that I get myself back on track is by concentrating only on the code that must get done and then I worry about making it more robust later on.

      Rumour has it that Microsoft also use this approach. "Later on" never comes though since they're always busy thinking up new major features to add to the next "service pack". Clippy, the Office paperclip assistant, would have been one of those "must get done" things while security and robustness were put on the roadmap.
    • The way that I get myself back on track is by concentrating only on the code that must get done and then I worry about making it more robust later on. I sometimes find myself worrying about the content. This is A Bad Thing(tm) to do while programming a game engine. It's a lot better just to focus on the code and the functionality first.

      I thoroughly disagree. Work on the content first, then develop the engine and other technology you need to implement your vision and story. There are already too many ga
      • ... and this kind of article seems to ignore it. In fact, he's a prime example of the problem himself: doesn't actually have a game, he's just talking about some super-cool engine with remote debug logging and whatnot.

        The problem is: Games aren't only about programming. Neither are other apps, for that matter.

        Programming complicated algorithms is the fun part, and that's why every kid wants to show off his cool (non-structured, non-indented and generally buggy _and_ unmanageable) clever code. No offense y
      • I've seen this problem in all its glory on my brief tenure as a builder on a LP Mud.

        _Everyone_ wanted to code some cool uber-complex function. Noone wanted to just sit down and write room or NPC descriptions.

        Getting a new _small_ town into the game took 2-3 years, with more team just for that town than some other MUDs have for the whole game.

        Even coding new functions for the game degenerated into uber-complex designs that were no fun for the user either.

        E.g., at one point they wanted to add ranged comba
  • by Chris_Jefferson ( 581445 ) on Monday August 02, 2004 @06:59AM (#9862019) Homepage
    As an amateur game developer, I can tell you I've got more half-written games around than I can count :)

    The reason why people give up is quite simple.. it's fairly easy to get a 80% complete game, and see what it's like. The last 20% however takes 50x longer to do, is really quite boring, and by that point I've had a new idea for a "greatest project ever!", and have decided to go and write that instead :)

    One problem with games that other programs don't have so much is that most games (with the except of fairly free-form RPGs like nethack) is that most people will only play them once or twice, so if you write a game and release a 70% complete version, then 4 months later release a 80% complete version, very few people will re-download and re-play the new version, which is one reason people find it so hard to motivate themselves to finish them, and not just go and write something else.

    Now pardon me while I try to get and think of another great idea for a new game and start to write that one!
    • by trompete ( 651953 ) on Monday August 02, 2004 @07:12AM (#9862077) Homepage Journal
      Amen to that. I'm guilty of this too, and I'll do it again.

      You learn so much from doing partial projects. This time around, I learned:
      LibSDL, SDL_Net, SDL_Console, and INI_Parser.

      Granted, I don't have a product to give away, but I just made the game for myself anyway :)
    • The best way to get around this (for any project, not just a game) is to have accountability to some other person or group. In other words, you *have* to finish that last 20% because those other people keep asking you to.

      This works best, of course, if they really like the project you've developed and can give you positive feedback as well.
      • by Corngood ( 736783 ) on Monday August 02, 2004 @10:21AM (#9862715)
        A friend of mine helped me out writing a little game/demo. He wrote me a schedule and harassed me on a semi-daily basis. I never finish my hobby projects, but he was so much help that I actually made a pretty good demo, which helped get me my first game industry job.

        If you can get people interested, even if they aren't actually contributing to the project, they can be a big motivator.
    • by UnknownSoldier ( 67820 ) on Monday August 02, 2004 @02:20PM (#9864164)
      > The reason why people give up is quite simple.. it's fairly easy to get a 80% complete game, and see what it's like. The last 20% however takes 50x longer to do

      Yeap, the standard joke in the industury is that the first 80% takes a linear 80% of your times, and the last 20% takes an exponential 80% of your time. i.e. ~160% total time.

      Why do you think id, Blizzard, etc. keeps polishing their games before they declare them good enough to ship?

      --
      Original, Fun Palm games by the Lead Designer of Majesty!
      http://www.arcanejourneys.com/ [arcanejourneys.com]
      • Why do you think id, Blizzard, etc. keeps polishing their games before they declare them good enough to ship?


        They don't. They're just a bunch of sadists, and enjoy torturing hundreds of thousands of people by not releasing their games. They actually finish near the initially advertised release period, and then they sit in their offices playing their awesome games all day, all the while reveling in the satisfaction that fanboys are crying themselves to sleep! :D
    • Looks like I'm doing better than average. Of the games I've started writing, I've actually reached 100% for one of them -- a re-implementation of RoboWar. Of course, now I'm bogged down trying to upgrade the graphics to something more sophisticated than basic 32x32 sprites.

      Does anyone know of a C++-compatible scene graph library?
  • by Arngautr ( 745196 ) on Monday August 02, 2004 @07:06AM (#9862049)
    I have found that when I work on personal projects, a couple games amongst them, I get bored with them once the hard parts (those that I haven't had much experience with ie new to me) are done and bug free (as best I can tell ;) ). I then get distaracted by something else that catches my eye and proceed to half finish it, then.....
    • by Black Parrot ( 19622 ) on Monday August 02, 2004 @09:43AM (#9862491)


      > I have found that when I work on personal projects, a couple games amongst them, I get bored with them once the hard parts (those that I haven't had much experience with ie new to me) are done and bug free (as best I can tell ;) ). I then get distaracted by something else that catches my eye and proceed to half finish it, then.....

      Yeah, I tend to think of a problem, program at it just long enough to see how to do it, and then go on to another one.

      I suppose there's a reason we aren't all entrepreneurs.

      • by julesh ( 229690 ) on Monday August 02, 2004 @11:43AM (#9863342)
        Reminds me of a joke [xs4all.nl]:

        From: dhein#NoSpam.onramp.net
        An Engineer, a Physicist, and a Mathematician all go the same
        Conference. University budgets being what they are, they all stay in
        the same cheap hotel. Each room has the same floor plan, has the same
        cheap TV, the same cheap bed, and a small bathroom. Instead of
        a sprinkler system, the hotel has opted for Fire Buckets.

        The Engineer, Physicist, and Mathematician are all asleep in bed. At
        about 2AM, the Engineer wakes up because he smells smoke. He looks in
        the corner of the room and sees that the TV set is on fire! He dashes
        into the bathroom, fills the Fire Bucket to overflowing with water, and
        drenches the TV set. The fire goes out, and the Engineer goes back to
        sleep.

        A little while later, the Physicist wakes because he smells smoke. He
        looks in the corner and sees that the TV set is on fire. He grabs a
        handy envelope, estimates the BTU output of the fire, scribbles a quick
        calculation, then dashes into the bathroom and fills the Fire Bucket
        with just enough water to douse the flames. He puts the fire out and
        goes back to sleep.

        In a little while, the Mathematician wakes up to the smell of smoke.
        He looks in the corner and sees the TV on fire. He looks into the
        bathroom and sees the Fire Bucket. Having determined that a solution
        exists, he goes back to sleep.
  • From the site:

    "There are no games at the moment. When we announce something, we'll put it here!"

    Rik
  • by BoxedFlame ( 231097 ) on Monday August 02, 2004 @07:12AM (#9862081) Homepage
    The article is about HOW to finish a game, not WHY.
  • by tod_miller ( 792541 ) on Monday August 02, 2004 @07:14AM (#9862087) Journal
    I agree with Pitfall one, three is a bit suspect.

    Opensource isn't just a one man band. The best games would have >1 developer to lend a hand.

    Don't encourage rash, hacky programming tendancies to push quantity of quality.

    Of course, fleshing out mist of your game can be a good way of making you want to complete it.

    My advice: Get other people to help with graphics. Go to a site like www.deviantart.com and post a message saying pixel help / 3d help needed for xyz game, AFTER you have an engine that can showcase their work.

    Looking good isn't a crime!

    There are some rgeat freeware games around, and top down shooters using mouse look are excellent, and they usually have some funky particle FX.

    As game development is simplified through libraries, we may see more amateur games, and more skill, pressuring commercial games sales.

    CounterStrike for instance, if this used an open source, free beer 3d engine, then the 'best game' would have been open source and free beer.

    OK quake 1 is open source now for ages, I am not sure what this means for counterstrike source code?

    Valve obv. have license for thier commercial exploits of the game.

    Modification of games is also prevelant, making open source games modifiable, even using md2 model files etc, would greatly increase thier adoption.

    Top ten open source, free games?
    • >Opensource isn't just a one man band. The best games would have >1 developer to lend a hand.

      If you're going at the programming by yourself, I would strongly recommend you use a library to save you from having to write your own low-level access routines (unless you just want to learn about how all these whiz-bang effects are done, but that may distract you from the goal of getting a game finished). Unless you have commerical backing, or are absolutely sure you have the willpower to stick to the proj

  • by NoMoreNicksLeft ( 516230 ) <john.oyler@noSpAm.comcast.net> on Monday August 02, 2004 @07:35AM (#9862119) Journal
    And that's always been the case... of course, being more of a tinkerer of code than a real programmer, there wasn't much chance of it ever happening professionally. I've had so many ideas, and quite original, I'd think. Some go back to the early 90s, and they don't seem dated yet.

    Well, the last few weeks in particular, I've been working on my first game for real. Allegro, gcc on linux. I'm doing the mundane stuff first, menuscreens, trying to get libmpeg to do cutscenes, not that I'll ever actually have any rendered.

    Maybe it was the years of starting to doodle around with code, and never accomplishing anything, but I did realize that I needed placeholder images/video. Done, grabbed random mpegs, doodled out so laughable stuff in gimp. My game will use very little in the art dept, being SVGish in many aspects. At the moment, only the opening menu screens would seem to need any.

    The point is, why does this guy think this is a revelation? I can't imagine that there is anyone out there that isn't using Allegro or SDL, or has io needs so simple that a keyboard routine is all they need. His first requirement, therefor, hasn't been an issue in at least 5 years.

    His second issue, art/graphics. I can see this as contentious. Even so, those who really want to program, to author the game, they give up on it soon. (In some respects, at least... if I were doing a 3d game, I'm decent enough at 3d modeling). So people either finish this part, or they don't. Does he expect them to design games that don't need any, or would he just rather not see any unfinished games?

    It sounds more discouraging than encouraging.

    Offtopic: What in the hell do I do with my game, assuming I do finish it?
    • As someone who watched an open source game project get caught up in stage 1 years ago, I can say that it is a risk.

      At the time, 3D graphics hardware was just starting to become common -- so, initially a rendering engine was written that used allegro's triangle drawing and the painter's algorithm to draw 3D objects. Then the authors decided that OpenGL was the way to go instead (I think Quake had been released a little while beforehand, and everyone thought it was cool back then). While they messed around
      • RTS here, space combat, multiplayer. You design your own ships, and fight them, either cooperatively (2+ players controlling different aspects of the same ship, gunner, pilot, etc) or standalone (1 player per ship). Since design is really only possible in 2d (can't expect someone to design in 3d and be good at it), the game itself is 2d.

        Designing a ship means drawing an outline (the hull) and choosing the hull material. Then dragging and dropping components. Pressurized interiors, life support, computer systems, engines, power reactors, weapon systems. Scripting the control interface. Some stuff, like routing power conduits and data lines might be done via wizard, but a person has 95% design control. Add in real physics, and it could be interesting. Your ship weighs 50,000 metric tons, but you only had room and money for the tiny engine with 2000 lbs of thrust? Oops. You forgot that there are no tires on the ground to turn with? Hope you put the weapons on a turret!

        And then of course, I can calculate exact component damages. They knock out several turning jets, damage a few more to 30% effectiveness, and your engineer is hurriedly writing new script, because the old keystroke assumed all 8 turning jets at equal power. "Cap'n, it'll take at least 10 minutes to get the primary navigation system back in order!"

        Graphics aren't too tough. Some stars in the background, with slow parallax. Bitmap or SVG skins over the ship visuals. (Pet project as a player? Making an authentic Narn battlecruiser design!) Various interface screens will be collections of guages and interfaces... probably SVGesque. All designed by the guy who makes the ship. Some people might even fly totally by instruments... there might not be a "space view" at all.

        I'm also considering a campaign mode, though it might be lame. Thank god for 2d, vector graphics and the stark void of deep space.

        Doubt it could be popular though, doubt even more so that people would buy it. But if I don't write at least this one game, I'll never be happy as a human being.
        • I'd buy it, if it were available for Linux, and especially if it had a campaign mode. Something along the lines of Escape Velocity would be cool, especially with the ability to design your own ship.

          • Development is on linux, needs allegro and a few other standard libraries. I have the option of a windows port, but I may do it on everything but.

            Campaign mode, I'd want cutscenes, but I'm not good enough to make my own. Plus, it's going to be tough, making the campaign missions non-lame. It's not that I don't want to do it, but that may be hard to finish, even more so than the playable engine itself.

            If I do it the way I want, though... there will be plenty of opportunity for others to make entire campaig
    • Offtopic: What in the hell do I do with my game, assuming I do finish it?

      Assuming you want to get a job as a game developer, read through Tom Sloper's Game Biz Advice [sloperama.com] site.

      If you just want people to play it, I'd try places such as freshmeat [freshmeat.net], or the forums at gamedev.net [gamedev.net] or flipcode.com [flipcode.com].

  • If you liked this... (Score:3, Informative)

    by waz ( 89418 ) on Monday August 02, 2004 @07:36AM (#9862121)
    Check out the 'Indie Game Development Survival Guide' as it greatly expands on the article. A great book covering all aspects on how to complete a game (for fun or profit) as part of a hobbyist game-development team!

    http://www.amazon.co.uk/exec/obidos/ASIN/158450214 2 [amazon.co.uk]
    • by Anonymous Coward
      Perhaps it's just me, but this book provided very little value. Most of it was very basic common sense things like don't bite off more than you can chew. Charles River Media pulbishes some great book on beginning game programming/art/concepts/etc, but this is not one of them.

      Also, before writing articles on how to finish a big project like a game shouldn't the author have something finished before he starts wagging his finger and other homebrew developers? It's his personal game studio site and the only ot
  • by dave1791 ( 315728 ) on Monday August 02, 2004 @07:51AM (#9862129)
    "... they focus on strength areas like plot and storyline"

    I have been writing a neverwinter nights modules for what seems like forever and I consider the authors tips, at least in the context of a "community mod", to be pure BS. Writing something good is hard, even on a platform like NWN where the game engine is already written for you and you can focus on the "plot and storyline". Doing it well is hard and takes a lot of work. Anyone who has ever written a large dialog tree for even a single conversation would know this. Think about what a players response to each line might be and write all the reasonable branches. By the time you have reached the grandchild node, it is immense. Oh and if any of these have a plot impact, or you include race or class based differences, it gets even more immense. Even a conversation between two NPCs to advance the plot can have you debugging for hours. A cut scene is a serious hair puller.

    Blowing things up is the easy part. Fights are fast and simple to put together. Putting together an immersive environment with properly placed background noise and placeables - as opposed to empty and lifeless areas is difficult. Good, self consistent stories and smooth play are difficult. That is why 95% of the modules on neverwinter vault suck and that is also why my "soundstage" modules still have a toolset to gameplay time ratio of something like 100:1. And that is soundstage where I can keep track of the plot in a notebook becasue I will be DMing them later.

    Oh and I periodically stop developing because I have a life; plain and simple. Wife, kids, job, friends, other hobbies. Sometimes I get sick of building and even play for a little while.

    So here are my own tips on finishing the project:

    1) If you have a spouse or significant other, they are simply a drag on your time and preventing you from delivering. Divorce is in order here. If you are not married, it is less of a hassle to extract yourself from this situation.
    2) Kids? Give them up for adoption.
    3) Friends. If they are not willing to help out on the project (remember the >1 developer rule), then they are not really your friends. Never speak to them about anything else for the duration of the project.
    4) Other hobbies. And desires to do anything else with your free time is indicative of lack of focus. Sell your hot rod/mountain bike/golf clubs/books/whatever.
    5) Getting bored with your project and need a break? This is the single biggest factor in not delivering. Oh, you say that you will take a break for a few days, watch that DVD, play, see friends, etc and then come back to work on your game again, but will you? Oh you might in a month or six, but your idea will be stale. REMEMBER - YOU ARE NOT DOING THIS TO HAVE FUN!!! Is the project starting to feel like you are still at work? You are. Now get back to that keyboard.
    • I think one should get allies who continue work on the project when you don't want anymore.

      Just read what Linus Torvalds did: he offered others the chance to work on Linux when he reached his threshold, and the project florished.

      Some of the projects on sourceforge I looked at suffer from too much control of the author; for example, if you find the map editor sucks, but the author tells you "I am right now working on it", then he got a lock on it, and it is pointless to continue working on the editor or a
  • Software Design (Score:5, Insightful)

    by Nyhm ( 645982 ) * on Monday August 02, 2004 @08:44AM (#9862192)
    In defense of good software design, there is something to be said for system components that are not inter-dependent. Good design means there is some hope of debugging the system. Achieving this should not take a "bleary-eyed programmer" all night to do it. If this is the case, your software design phase failed.

    Oh, wait, there is no mention of software design in this article...

    I keep forgetting that game development is not about producing good software, but about efficiently pipelining your artistic assets. This misconception transcends this little article. For example, Game Developer Magazine is a worthwhile publication, but should really be called Game Artist Magazine.
    • Re:Software Design (Score:3, Interesting)

      by Arkaein ( 264614 )
      Modular design is important for big projects, and it's something I strive for in most projects, but it should be seen as an end and not a means.

      One thing I've noticed with my own hobby apps is that the most sucessful ones (in terms of actually getting something running somewhat decently) are ones where I just sit down and code. The ones which I spend a lot of time "architecting" tend to be the ones where I have less enthusiasm, and code more tentatively, almost like I'm afraid of making mistakes. Even if
      • It depends on whether it is something you're just doing as a hobby or whether you really want to get something good done (and involve other people in it). There's nothing wrong with either approach, it's just that if you don't design and just keep hacking, the project is far more likely to just disintegrate into a mess of spaghetti code with unsightly hacks. Once that happens, I find my enthusiasm to keep coding fades rapidly.

        I've learnt the importance of design the hard way.
        • I think that depends more on the situation and person.

          For me, I notice that I could sit there and try to make it work on paper, or I could write something that works in practice - and then refactor as necessary. In the end, the latter seems more efficient to me.

          But then again, I don't work on truely large projects where architecture is more important.

    • Software design is important, but having spent yesterday evening trying to read the code of several OSS projects like the ones the article refers to, I'd say there are more immediate problems:
      - Functions that are three or more screens long.
      - class members called undescriptive names like w,w0,w1 etc scattered everywhere
      - No use of polymorphism to avoid switch statement nightmares
      - code copy-and-pasted about with a few values changed rather than factoring out the similar code and putting it in a separate func
      • This is part of software design!
        • I suppose. I guess I'd class it as "being able to program", rather than strictly design.
          • True! I think we're making the distinction between high-level design (a.k.a. architecture) and detailed design (class, sequence diagrams).

            "Being able to program" (at a very basic level, as you correctly point out) is an oft-overlooked quality. I should assume that, but experience has trained me to doubt mere competence.
  • by StressGuy ( 472374 ) on Monday August 02, 2004 @09:11AM (#9862325)
    I don't write games though, I've written software for assisting me as a structural engineer. However, my main motivation for writing it is generally to educate myself on some of the underlying theories and techniques. I figure that, computers are rock-stupid. Therefore, if you can explain it to a computer, you must have a pretty good understanding of it yourself. I've got more than a few half-written projects that I stopped as soon as I grasped the underlying concepts I was seeking to understand.

    While I've never released any of these projects, I suspect that this may be a similar situation with some of the game designers. I.e., the game is mearly a means to an end. If the true goal of the game is accomplished before the game is finished, there is less motivation to finish the game.

  • Rebuttal (Score:1, Insightful)

    by Anonymous Coward
    Point by point, then:
    1. Amateurs don't make games solely because they want a finished game, so of course you don't want to get through technology development as quickly as possible. You're developing a game for fun, or to learn something, or to try to get a job. In all three cases, love the tech. (I'm assuming you're a programmer - if you're an artist, use tools, not programmers, because they love the tech too much.)
    2. There is little joy in mimicking the technology of yesteryear - work on MAME if you want
  • by llefler ( 184847 ) on Monday August 02, 2004 @09:30AM (#9862438)
    This really isn't a problem with game developers. It's not even unique to open source. Even with commercial development, a lot of projects are started but never completed. Some never make it off of the developers' systems because business requirements change. Some projects make it into production 'incomplete', with the intention of going back and adding features, but it never happens.

    It's not necessarily a bad thing. Some projects begin to test a theory that never pans out. Those projects feed into the next iteration that makes it a little further. And some projects are so ill concieved that they never deserve to see the light of day anyway.

    You can look at it as R&D, or as the electronic version of Darwinism.
  • by Sigma 7 ( 266129 ) on Monday August 02, 2004 @09:40AM (#9862484)
    After a quick glance at the article, I noticed that there was information missing (a feeling I had before I opened the page.)

    The reasons within the article are technological reasons about why games fail - pertaining to how the code is designed. It doesn't explain more pratical reasons, such as insufficient experience with programming or mathematics (e.g. you don't yet know how to divide a shape in two efficiently.)

    This sort of stuff needs to be written over a period of time - you can't just write a single small article and say that it's done. That's also why there are books on the subject rather than one section in a periodical.
  • by pilot1 ( 610480 ) on Monday August 02, 2004 @09:57AM (#9862545)
    Happy Penguin's Game of the Month [happypenguin.org] is an effort to fix this sort of problem.
    Every month (or two, or three..) they choose a game to work on, and generally the end result is a greatly improved game. Currently they're working on TuxKart, if you view the screenshots of some of the improved models, they're amazing.
    Anyone who has an incomplete game that they're no longer working on would do well to at least suggest it to the GOTM people, since they have artists and other people willing to do the type of work that coders hate.
  • by cjmnews ( 672731 ) <cjmnews@yahoo.com> on Monday August 02, 2004 @10:42AM (#9862938) Homepage
    After seeing how poorly the "fit and finish" of Champions of Norrath is as well as a few other games I have played, it is apparent that the professional game companies could do with some advice on how to finish a game too.

    Test Test Test! That is imperative. Don't use the same testers on the final version. You need to see different actions than the expected ones to ensure the bugs have been found. I play plenty of Beta modules for NWN and you can see who tests their modules and who releases the latest modified code. I can honestly say there are better developers in the NWN community than some of the professional developers.

    Specific issues for Champions: There should not be "holes" in the graphic walls a character can fall into and be outside of the defined world. There should not be a 10-30 second delay to a response to an action like your pack being full. Simple and common things like accessing your inventory must be fast. Do not force large automaps when you add more than 2 players.

    Other games: If the player moves the camera to a specific position, leave it there. If you have 2 tough areas back to back allow the user to save in between. If you have NPC characters, either move them out of the path of the PC or allow the PC to walk through them. If an activity is not required for general game play, but can help with bonus play, do not force the user to learn it.
  • by Doctor Cat ( 676482 ) on Monday August 02, 2004 @11:20AM (#9863196) Homepage
    I've been saying it for over 20 years now. There's a minority of Developers Who Actually Finish Anything Ever, and a majority of people who Only Start Things But Never Finish Things.

    If a project is to have a chance of becoming finished, it needs at least one person involved who is rabidly determined that it will get done, no matter what, no matter how long it takes. This person needs to have the will to take back responsibility/control from anyone who's not getting some part of it done, and the ability to either do all those parts of the project themself, or to find someone else who will do them. If you have a person with pit-bull like persistence and determination on a project, it is decently likely to get done. If you don't, it's hard to finish unless you're doing something pretty easy.

  • This is a nice reminder to me to get my butt in gear! I've got all of these ideas swirling around in my head, but not too much code on the ground yet. Lately, I've been focusing on art work, and having a lot of fun at it, but gotta get back to the code!
  • by Anonymous Coward
    Gah, don't remind me. I just got back on track dusting my code off and really getting work done on it when I remember that Doom3 gets here Thursday (not that the download isn't going as I type this). So Thursday and Friday will be a mad rush to finish Doom3 so I can get back to getting real work done. Speaking of real work, I need to stop posting to Slashdot and get back to that...
  • You need to get through technology development as quickly as possible. If you disagree with this statement, you care about something else besides finishing your game.

    Of course we care about something else - it's a hobby project, isn't it? Having fun is more important. And the technology development is the best part! Who cares about finishing this stuff, that's work.

  • by cjellibebi ( 645568 ) on Monday August 02, 2004 @01:08PM (#9863798)
    Another piece of advice: If you are writing the game just for fun, anyone who offers to contribute to it in anyway is not under any obligation, and may never get round to it. So try and rely on yourself as much as possible.
  • Pitfall #0 (Score:3, Insightful)

    by droleary ( 47999 ) on Monday August 02, 2004 @03:43PM (#9864655) Homepage
    People

    Most games (hell, software projects of all kinds) don't get finished mainly because they are started by the wrong people. Some joker with minimal OpenGL experience comes up with a "wouldn't it be cool" idea and then immediately thinks they have to announce it to the world. They then spend all their time without a solid plan engaged in activities that do little more than stroke their own ego. Those people are best told not to finish, but to not even start.
  • by PIPBoy3000 ( 619296 ) on Monday August 02, 2004 @05:16PM (#9865248)
    About two days ago, I shipped Demon after a year of development. It's a mod for Neverwinter Nights, the sequel to Shadowlords and Dreamcatcher. Both are in the Hall of Fame on the Vault and the Dreamcatcher series was Module of the Year. Yadda, yadda, yadda.

    The closest I've come to understanding why I keep making these things is a comment made by a writer. They didn't write because they wanted to write, they write because they had it.

    I make games because there are these stories inside me that keep wanting to pop out. Characters that demand being brought to life. Making the games can occasionally be fun, but the bugtesting and release is usually grueling and unpleasant.

    So, I think I'll keep my day job of code wrangling and tip my hat out of respect to professional game developers. It's a tough job, putting something you've invested so much of yourself out there for the world to poke at.
  • My way around this is to simply admit I am never going to complete a game.

    I'm tackling the content side instead, sorta. What I have written basically is a terrain tile generator. I noticed a lot of the 'craft like games suffer from lack of good graphics, and figured that terrain was part of the graphics that might be easier to generate than to render individually.

    If you are morbidly curious my stuff is at gasnippets [sf.net] but I don't consider it finished yet. Working on DirectFB and OpenGL variants of the s

  • by shotgunefx ( 239460 ) on Tuesday August 03, 2004 @04:27AM (#9867679) Journal
    From 92 to 96 I was working on and off on a 3D driving game. At the time, I was driving a truck and the frustration with the barrage of idiots I constantly had to avoid got me thinking, "Wouldn't it be great if I could just run them off the f*cking road" or worse... (yeah, real healthy, I know)

    So my idea was to make this driving game where you had to race across country, but that was just the plot for plot sake. (It was about as much plot as Doom had in the readme.txt)

    The race didn't matter. It was just an excuse for the different locales. The actual purpose of the game was to race, rob, carjack and maim everybody and anybody you felt like with your vehicles. I thought most drivers could identify with this on some level and the idea at the time was "out there" and sure to make some controversy.

    I was working around anywhere between 1000 ~ 2000 hours a year on this. (Depends which years) Every time it got close, a new game would come out and raise the bar. Like an idiot, I'd start all over because I wanted it to be as good as anything out there. Well, seeing the target for this 3D game was originally a 386DX, later 486DX DOS/32, mostly everything had to be done in assembler. (Actually, in hindsight, I probably could have gotten away with a little less optimization) it took forever for it to go anywhere. Just when I'd get the renderer in order and start adding the other elements of the game, a new game would drop and it didn't look so slick anymore.

    Anyway, I took a break for almost a year. I decided to finally just finish it and get it done. Thought it would be easier in some ways now that base targets were lot more powerful. Well shortly into it, as I'm coding, I see on the television a story about Carmegeddon and GTA.

    F*CK! I gave up right there, my thunder sapped. The first GTA was alright, but what I was envisioning was a lot closer to what the GTA series has become. It's weird looking back at notebooks with drawings of golf carts and cars dodging planes on the runway. (Though some of it would be dated, like the LA segment during the riots)

    I've had a PS2 now for over a year and outside of trying a rental or two, there is only one game I own and play. Vice City. Though it's missing a few elements, (Where's the steam roller?), it's pretty much, for me, the ideal game. (Might change my mind after I play Doom3 though)

    I try and take it with a grain of salt when I see how fantastic it panned out for them. Though it's hard not to think, if I hard only gotten that second 90% done, if I had just got it out and didn't keep revisioning it.

    Oh well :(
  • by Anonymous Brave Guy ( 457657 ) on Tuesday August 03, 2004 @06:05AM (#9867913)

    I think the underlying issues mentioned in the article -- principally aiming too high in various areas -- hold back a lot of personal developments, games or otherwise.

    Now, I'm as much a fan of good design as anyone. I advocate it frequently, and I believe it more than pays for itself in time and effort over the lifetime of a project. But there comes a point where the best is the enemy of the good, and good enough is what matters. There is never a perfect architecture anyway, simply because projects evolve and you rarely know exactly what the future holds.

    Similarly, you have to know how much one person, or a small team, working in their own time can realistically achieve. I have a few useful and significant techie projects under my belt, but for the majority I did nearly all of the legwork in a weekend or two, with occasional tidy-ups and fixes during the weeks immediately afterwards.

    Perhaps the most impressive project I've worked on non-professionally was a complete redesign and content update of a reasonably large web site for a club I belong to. Without going into all the gory details, we're talking about well over 100 pages, a new graphic design, a new navigation system, and a completely reworked technical architecture based on XML+XSLT. The basics of that project took several hundred man-hours, of which probably the majority came from me over several weeks. However, I had help from a couple of other people on the web design and architecture front, checking things over and filling in some blanks. We also had several of the other club organisers providing content. Then one of the guys spent considerable time porting existing "minor pages" to the new scheme, etc.

    Now, I could have done all of that on my own, but realistically I was always focussed on the technical architecture, the overall site structure and graphic design, and the top 25-30 content pages that everybody was going to see. I might have taken on the "project lead" role, but without all the back-up, a lot of it probably still wouldn't be polished up even now, a year later. As with the games, you've got to know, honestly and realistically, what you can achieve yourself, and when you need help if something's going to get done.

  • I think it comes down to the fact that most good designers are bad implementors. Once designers grasp the concepts, they get really bored with the details. Or they get bogged down with the details initially (pitfall #1). So I can see how speeding through the bare-bones implementation might help.

    Maybe better promotion of your game idea will encourage detail-oriented developers to join you? ie. create quick storyboards and notes and publish them.
    I dunno -- I'm stuck with lots of ideas and half-finished pr

Time is the most valuable thing a man can spend. -- Theophrastus

Working...