I've been reading this thread and would like to say that it's one of the first topics that has actually made me want to join a forum. I'm not on-line much at the moment (should change in the next three months) but would like to help. The creation of a game - by people separated by distance and time - sounds like fun!
A post made by Inquisitor some time ago caught my eye in particular - it mentions the need for a structured plan, design, implementation, testing, bug-fixing. I could not agree more - design is THE most important aspect of any project (this doesn't stop me from going straight to code in a few places, but I know it's naughty) and is critical to a good final product. As a lecturer of mine said 'if you get the design right, the implementation should be child's play' - he neglected to mention researching the libraries, testing and bug-fixing, but it's still a good point. The other thing worth mentioning is that the design should cover everything, from graphics to AI to storyline to voiceovers, you name it, it should be in the design - obviously not all at once

. The other important aspect is to get user opinion - what do the masses want? Sure we've all played FS1 & FS2 and know that we want new stuff, but you'd be amazed what suggestions other non-computer savvy players can come up with.
I'm a final year student doing a Masters in engineering in the UK, specialising in software - my final year project was developing a viewer for the display of large (500MB) 3D objects on low-spec machines (STL file format in case anyone's interested) - as you can imagine, this met with only limited success! Part of it was working on automatic level of detail (something bound to make modellers happy) but lets not get ahead of ourselves! Having said I'd love to help, I'm currently prepping for finals, so give me a 1-2 months and then I'll help, if it's wanted! I'll also see if any of my programmer friends are interesting in lending a hand... but I digress.
I'd also recommend using a pre-made game engine - if it's properly open-source and you can modify it so much the better; it just give you so many more options to work with and you don't have to work everything out yourself. Doing so can be great fun but you can't learn everything - much as I'd like to! Having just spent eight months teaching Direct3D to sit up and beg - without meshes, I might add, due to the requirements of the project (damn them for that) - I hopefully can say with some authority that creating a game engine from scratch is not going to be simple or fast - but then you people already knew that

. My experience with OpenGL is limited, and I agree that cross-platform is good (because Windows is still great for people who know nothing about computers), but I intended to teach myself OpenGL anyway, may as well do it for a reason!
Programming in general requires a leap of faith - that the programmer who designed the library you're using (and that includes the ones for your C/C++ compiler) knew what he/she was doing and that it works. How many of you have found out how new or malloc works? The code is there but we assume it just does the job. Same with a game engine. For the non-programmers out there, Direct3D and OpenGL are not game engines - they are 'non-hardware-specific graphics wrappers'. If one translates this into English, it means that you can do graphical stuff without worrying what hardware if any the end user has - the developer still has to do a heck of a lot of 3D work to get a decent image.
The other things that Direct3D & OpenGL won't do are stuff like AI, collisions, pathfinding, all the fiddly maths that turns a bunch of 3D objects into a real game that fires the imagination. This ignores the other key elements of storyline, plot, nice-looking ships etc... Game engines, on the other hand, tend to have some aspects of collision, AI etc.. built in - modifying code is a great deal easier than writing it from scratch.
Besides, if you, or should I say we

, get the OOP design right, encapsulation means that you can port the overall game code to any engine you like, which means you can write a really super-duper one later, once the game concept is proved. Neat, huh? On a programming note, DirectX deals with all input, networking, and of course graphics & sound within its own sub-departments, DirectInput, DirectMusic, DirectPlay etc... and btw has some really neat things in it (before anyone starts MS bashing, yep I disagree with them on a lot of issues too, but they ain't Satan either) - OpenGL just does graphics - what are you planning on using for the other aspects - if it's going to be cross-platform, you have to get this right?
As an aside, if anyone has any thoughts on auto-LOD generation generally (and yes I'm looking at doing it real-time), please, please let me know - you will get credited! But I get the marks, deal? (actually it's already handed in, but I plan on expanding it).
Phew, one long post for someone who's never been on a forum before - guess I had a lot to say! Hope it's appreciated! If for some reason I don't join in the fun, luck!