
IMO, a large part of the problem is how closely the network code has to be coupled with the rest of the game. All game state data has to be transmitted, as well as the position, orientation, velocity, etc. Add in scripted events, and there's no simple general purpose solution to reusing the network logic.
Also, the internet is so unpredictable and varying in capabilities it is really hard to tune for bandwidth, loss, and latency. I know a lot of Descent 3 players were telling the game they had T1 speeds when they really were on dialup. That caused lots of dropped packets, terrible bouts of delayed packets (which looks like horrible lag), etc. All because they tried to send too many packets in too short of a time, thinking "faster is better" would give them a better experience.
As one of the Kahn developers (another one of them is sitting in the office next to mine), and one of the programmers of Descent 3 I have to respond.
First off, the Kahn/Kali days were loads of fun, playing Descent 1 over the internet back in 1996 is a great memory I still have.
IMO, the problems with D3 was that we never got the scale right for flying. D1/D2 had a feeling of speed because the tunnels were smaller and simpler. In D3 the designers tried to achieve a sense of massive complexes, which meant larger rooms and tunnels plus outdoor terrain. The problem there was the sense of flying fast was lost. I think this is the thing that disappointed most Descent fans. But I don't think that is what kept it from being a commercial success. I think the problem there was 1) feature creep made the development of D3 cost too much, 2) As you mentioned, the game was released in an era that had loads of hardware video card driver issues, which lead to tons of returns, and IMO the biggest issue: 3) Descent fatigue (lots of people bought D1/D2 because it was a unique idea, but by D3 they had already been there and done that).
Contrary to what you say though, D3 wasn't primarily developed for Glide. It was originally developed for Glide, but that's because at the time development started that was the only real option. A lot of effort was put into OpenGL, but there were constant driver issues causing us grief.
Also, I'm not sure what you mean about complaining about the use of TCP/IP for the online game play. I wrote the network layer for D3 (the same layer is used for other games including Freespace II if I remember correctly), and it used only UDP/IP for in game play. I think a lot of the complaints about laggy play were unfair given the networks people were playing over (no fast action game works well when pings get to 700ms or more).
I'd love to be involved with Descent again, but I really doubt it will happen.
BTW, my son was born right after D3 was released, and he really likes to play it now, which is pretty cool.
Re: Sid Leach, the attorney who filed the motion:
I've personally worked closely with Sid on a case several years back where I was a technical consultant for the company I worked for on an IP case. Sid totally changed my opinion of lawyers for the better, and I seriously considered going to law school after my experience working with him. He's a super nice guy, and extremely smart.
We would meet late in the evening the night before a court appearance, and the next morning he would have a amazingly well written brief he stayed up all night writing based on the meeting the night before. If I ever need an IP attorney I would hire him in a second (If I could afford him). It's great to see him doing such important work.
Hackers are just a migratory lifeform with a tropism for computers.