Wing Commander Source Code

I do remember something that one of the artists had said in the forums and correct me if I'm wrong but.....when some of the artists would do 3d Renders (like you see on the covers, or even in the manuals, etc.... Sometimes the artist would start the hi resolution 3d render the night before and hopefully when they came in the next morning/day the render just might be done? And I remember that was on a 486 machine. Back in the day I don't believe the O/S programming was all that fast. Amazing.

Has nothing to do with storing text files, though. I can understand that they needed a fast 486 for the compiling, but even several megs of text files were storable on any 386.

This story should be included on the Mobygames Strike Commander trivia:

http://www.mobygames.com/game/dos/strike-commander/trivia
 
Has nothing to do with storing text files, though. I can understand that they needed a fast 486 for the compling, but even several megs of text files were storable on any 386.

Is it also possible that they also had to compile each and everytime they made changes? Which can be time consuming, there's alot of trial and error
 
Of course id and 3DRealms kept very good track of their source code--that's their product! They're both companies whose business models involved developing 3D engines to license to others.

That wasn't what they did back then, though. Maybe id, but 3D Realms didn't make engines. They didn't even make the Build Engine used for Duke Nukem 3D. There were a few (mostly crappy) games based on the Duke Nukem 3D code, but that definitely was not the primary goal in its development. There are tons of old games that have had either their source code released or recent ports released. Companies keep track of this stuff. Maybe Origin was for some reason especially bad at it, but while they existed, it must have been around somewhere.

Moreover, though, since Origin closed I've worked on multiple projects with Electronic Arts that needed the old resources... and they weren't there. I can tell you without a question in my mind that there's no EA archive full of Origin-era source code as great as that would be.

I'm not too surprised at that. What I would be surprised at is if Origin still existed and the source code to their old games didn't, because companies do keep that stuff. I'm saying there are copies of source code made a lot. To send to other teams to port. Taken by employees for a resume. Reused in code for other things. I would be very surprised if the code isn't out there somewhere. Whether or not you will ever actually find it probably depends on how much people who may have it care.

And even if it never turns up, it probably could be reverse engineered. It depends on what people want. If they just want to play the old games again, they don't need to bother with that.

So is the source code to all the games missing?
 
A couple of interviews with the Kilrathi Saga developers mentioned that they had the code to wing commander 1 when they were working on it, but it was so crufty and outdated that they just took wing 2's engine and modified it. I find it very disappointing to think that EA hasn't got a robust backup system in place, but then a lot of businesses don't. I guess where I work is an exception to the rule, with daily tape as well as a large scale storage array etc.

Even Id didn't really make engines until quake 1 which a lot of people wanted to license because it was first to do 3d first person. remember id licensed those games so there were more copies of their sourcecode around. Notice there's no Commander Keen sourcecode release? I bet they lost that too. The entire industry isn't as professional as people think it is. The only reason Linux got quake 4 was a guy made it in his spare time at home with management's blessing.

Still there's an issue with how usable the wc1 sourcecode would be. Based on the era it probably has tons of assembler hacks/tricks to make it run faster. Adding new features even things like hardware acceleration would be difficult. Personally if EA did decide to rerelease wing commander. I'd be more interested if they did something unexpected like take wing commander 3 pc, throw in the colour comms videos, Kilrathi Saga music, hobbes explanation and the news clips and make an ultimate edition. Same thing for Wing Commander 1 and 2 Kilrathi Saga, port to directx 9/11 tweak the sourcecode to fix the bugs that cause crashes and mission objective issues. Maybe add speech to wing 1/2 with the original voice actors/ports audio. None of these things would take very long but would be a big improvement. I think dosbox is a pretty cheap hack way of getting games into windows. I mean it's an awesome program for everyone to run their games, but it's got a large overhead on cpu/performance. Even on a quadcore there's a lot of stuff you don't want to run in dosbox.
 
Well missing source code from "back then" is nothing uncommon. I remember the original "Bleifuss / Screamer" source code being missing as well.
 
There is an expectation-problem going on in the gaming-scene nowadays. The Monkey Island SE-Project got all people hooked up on revamped classics. (me too!)

But if you think about it: I can't remember a good reworked classic, based on the original code. The Monkey-Sourcecode is naturally available, since LucasArts programmed a whole Scripting Engine just for the adventure-games and used it up to Monkey 3. So they had quite an interest to keep the code. Who knows, if the Monkey SE-series is still working on top of the old SCUMM-Engine? I can imagine, that they used the latest SCUMM-Engine.

But nevertheless: Losing Source Code whatsoever is a shame :).
 
I find it very disappointing to think that EA hasn't got a robust backup system in place, but then a lot of businesses don't.

All software development businesses today do. In fact, it is common for data management to be done by specialized companies now, not in-house. EA is huge, though, and it may be the individual divisions that handle this on their own. But you can't be too surprised that EA doesn't have the data for games made before they owned that property. That's not a reflection on how EA (or the divisions thereof) keeps track of their data.

I think dosbox is a pretty cheap hack way of getting games into windows. I mean it's an awesome program for everyone to run their games, but it's got a large overhead on cpu/performance. Even on a quadcore there's a lot of stuff you don't want to run in dosbox.

That's true, but really, emulation is a much more convenient way to keep old games playable. It's a pain and a LOT of work to update every old game for each new platform. But if you have an emulator, all you need to do is make sure the emulator works right on each new platform, and every game made for the emulated platform will work. Plus, even games for which the source code is lost are playable this way. Emulation is great, and I'm glad people are working on these things.
 
That's true, but really, emulation is a much more convenient way to keep old games playable. It's a pain and a LOT of work to update every old game for each new platform. But if you have an emulator, all you need to do is make sure the emulator works right on each new platform, and every game made for the emulated platform will work. Plus, even games for which the source code is lost are playable this way. Emulation is great, and I'm glad people are working on these things.

Yeah, in the last couple years we've reached a wonderful point where we don't have to worry about this as Wing Commander fans anymore. In the budding days of DOSBox 0.63 or so, there were people with 1 GHz platforms who could get WC1 and maybe WC2 going, but then struggled with Armada and had no playability in WC3/4. Now in 2010, any modern desktop/laptop should have no problem running those games. You might even be okay on a netbook now.
 
You can pretty easily disassemble an executable, and there do exist decompilers which can give you back source code in the original language. So no, the source code isn't lost. You can get it back from the executable. Except you will have lost the organization and comments and variable names and likely many original lines as they were programmed. Which makes deciphering it difficult. But in the strictest sense, yes you can get a source code back, modify it and recompile it.

Does anyone know roughly how many lines of code Wing Commander I was?

Stop that. Source code and a decompiled executable aren't the same thing; they never have been, and never will be. Yes, you can get assembly language in there, and there some decompilers can give you a rough working version of C; however, to equate this with source code that's actually organized and documented is a joke. Is it possible to make some headway with this? Sure, Standoff did it by going into the de-assembled stuff and hand-hacking it, if I recall correctly. Is it really conducive to anywhere near the same level of modification that actual source code is? Heck no. Just losing those variable names and the structure of the code alone is a huge obstacle.
 
Stop that. Source code and a decompiled executable aren't the same thing; they never have been, and never will be. Yes, you can get assembly language in there, and there some decompilers can give you a rough working version of C; however, to equate this with source code that's actually organized and documented is a joke. Is it possible to make some headway with this? Sure, Standoff did it by going into the de-assembled stuff and hand-hacking it, if I recall correctly. Is it really conducive to anywhere near the same level of modification that actual source code is? Heck no. Just losing those variable names and the structure of the code alone is a huge obstacle.

I didn't say it wasn't a huge obstacle. In fact, I said that it was. But the fact remains, you can get C source code from an executable. From there, it's not all plain guesswork, though. There are other debugging and probing tools you can use to figure out what the various functions are doing and from there you can go about getting things named and organized as you figure it out. Also, you don't have to have the entire thing figured out to change just part of it. It could still be useful even if you have only been able to interpret the meaning of a fraction of it. It would be easy to find the places you are accessing hardware or an operating system call, so that alone could give you a good start on a variety of useful things.
 
(In fact, I know a private collector who has the Wing Commander I Amiga source... but it's not leaving his possession.)

If someone were to put the effort to try and [STRIKE]retrieve the[/STRIKE] reconstruct a PC source code, they'd propably like to get copy of that, it may be of great help, in combination with disassembling/decompiling tools mentioned above.
 
(In fact, I know a private collector who has the Wing Commander I Amiga source... but it's not leaving his possession.)

Not even to make a copy for fans to port? or to give to EA?

That wasn't what they did back then, though. Maybe id, but 3D Realms didn't make engines. They didn't even make the Build Engine used for Duke Nukem 3D. There were a few (mostly crappy) games based on the Duke Nukem 3D code, but that definitely was not the primary goal in its development. There are tons of old games that have had either their source code released or recent ports released. Companies keep track of this stuff. Maybe Origin was for some reason especially bad at it, but while they existed, it must have been around somewhere.

I fear you're missing the point, the source for the build engine exists BECAUSE the engine was sold, not because they wanted to sell it - once you do sell it though, it becomes a commercial assett to have neatly, well organised and well backed up code!


Anyway, I'm just finishing up my PhD and during that time have written literally thousands of lines of code - every day before i head home i copy my work folder into a folder labelled with that date and every six months those folders are burnt to dvd.

Yesterday I tried to read a data file I output back in February 2008 - in the interim i've changed my output format, my read in format and even the way i do analysis - the point being that the graph i got out was nothing like the one i was trying to reproduce - but was from the same datafile!

It took 4 hours to find the right sourcecode and even then i needed to modify it because the backed up copy, was saved AFTER the build i used to make the graph, but changed AFTER the previous backup.

The code that can be lost in the course of one day is immense. just because you back up religiously and all the time doesn't mean you won't lose stuff. Those data files are only readable now because I happened to save the sourcecodes from that time, and even then, i could have tweaked something during the day and then changed it again before backup.

The point is that sourcecode is transient at best - if no-one else will ever need to read it (by your logic) then it stays rough and ready and poorly annotated. Given even a couple of years and that source can be lost, corrupt, the disc damaged etc. I fully expect that when i move house in a few months, those dvd of source and data files will become stuck in a file with the lab-books in a cupboard. Maybe one will get scratched? When i move again in 4 or 5 years, it might get dumped in a box and not opened till the next move - when - if it's lucky, I won't just throw it out. Maybe i'll look at the dvd and laugh at the small capacity and back it up onto something new before my now ancient dvd drive dies, but what if that little scratch stops me reading that single section of the dvd where the source code of my program on the 16th july lies - I lose it!

When a project is finished, people box up the posters etc and bin all but one, they back up the data to one device and delete the rest and they move on - if it's an amazing place, maybe they'll keep a copy of the game and the advertising etc. But even the best companies (ken williams at sierra?) can't keep everything - and that's how stuff gets lost. Just because these days people back stuff up relgiously doesn't mean that if you tried to get the model of a fighter from a project your company made 3 years back you would almost definitely have severe trouble (where's the disc for a start!).

Sorry about the rant - but when loaf says it's lost we nod sadly and say, maybe there is a copy out there - we don't moan that it can't be lost because everyone backs up nicely these days.
 
Wow, I didn't realise Raylight had no access to Prophecy source code - what a great feat to re-create it so well!

LOAF, two things; you know a collector who has that source code? Won't he budge?! I'll pay him off haha ;)

Also, are you ever in much contact with Roberts or Spector? I'm sure you probably have been and that they've given you everything useful....
 
Anyway, I'm just finishing up my PhD and during that time have written literally thousands of lines of code...

That's great. And how long have you worked in commercial software development?

I fear you're missing the point, the source for the build engine exists BECAUSE the engine was sold, not because they wanted to sell it - once you do sell it though, it becomes a commercial assett to have neatly, well organised and well backed up code!

It's ALWAYS a commercial asset to have neatly, well organized and well backed up code. Even if you don't plan on ever doing anything with it again.

The Build engine was designed from the beginning to be sold, so I'm not really sure what you're getting at there.
 
It's ALWAYS a commercial asset to have neatly, well organized and well backed up code. Even if you don't plan on ever doing anything with it again.

This is like telling someone to buy Yahoo Stock.

This is a brilliant well educated statement in the year 2010 when Video games are doing billions of dollars business, but when WC1 was in development, how much of a commercial asset do you think a Video game was?

No one back then could have known that in 2010, 1 year after the last release and 10 years after the last major release, people would still be clamoring for Wing Commander, or that the Video Game industry was going to become such a mainstream part of our society?
 
You know, this thread would've been a lot shorter if some of its participants had remembered to check their assumptions at the door (so to speak).

A lot of today's WC fans weren't even born when WC1 came out. Hell, going from the last time an age poll was done on the front page (end of May 2009), some weren't even alive when Prophecy came out, well into EA's ownership of Origin, and many were in preschool or just starting grade school. Applying modern procedure to activities 15-20 years ago (well before they were "procedure") is, at best, an exercise in futility.
 
Last edited by a moderator:
This is like telling someone to buy Yahoo Stock.

This is a brilliant well educated statement in the year 2010 when Video games are doing billions of dollars business, but when WC1 was in development, how much of a commercial asset do you think a Video game was?

No one back then could have known that in 2010, 1 year after the last release and 10 years after the last major release, people would still be clamoring for Wing Commander, or that the Video Game industry was going to become such a mainstream part of our society?

Keeping your old source code carefully isn't some modern day revelation, though. The 90s was not the stone age of programming. Revisiting and re-releasing your old games is not the only reason you do that. People generally kept track of source code to things, even back then.
 
You know, this thread would've been a lot shorter if some of its participants had remembered to check their assumptions at the door (so to speak).

A lot of today's WC fans weren't even born when WC1 came out. Hell, going from the last time an age poll was done on the front page (end of May 2009), some weren't even alive when Prophecy came out, well into EA's ownership of Origin, and many were in preschool or just starting grade school. Applying modern procedure to activities 15-20 years ago (well before they were "procedure") is, at best, an exercise in futility.
Gee.... Thanks for making me feel old!
 
Last edited by a moderator:
Well I think the real shame is not that some early alpha build of WC1 is gone, it's that there aren't final builds archived.

You know what, though, I bet there are some old video game source codes or source code fragments lying in dust in the attics, closets or storage areas of a few of the programmers and developers, but they have and probably will remain very tight-lipped about having it due to the possibility of repercussions from having it.
 
Back
Top