Our source on the Source is interviewed here. I give you, in this corner, INQUISITOR!Date: 05/01/03Interviewer: StunaepHi. Let's begin with some general information, for those who do not have the patience to click the profile button: What's your name, and what do you do for a living?
My name is Edward Gardner, I am a Senior Technical Manager at Novell, Inc.That's basically tech support in-house, yes? What does Novell do?
We're currently helping a credit card processing company deploy a secure accounting system, lots of custom code, lots of security, that kind of thing.And where have you learnt your 'l33t coding sk1llz' ?
Hehe, I'd hardly call them 1337...
I graduated from college about 10 years ago, with a degree in Geology, spent some time in graduate school, published a bunch of scientific papers. Along the way, I picked up some how-to in general technology. Things like connecting Mass Spectrometers up to PC's so we could do something with the data.
So I had to figure out how to manipulate both the machines and the data, sorta self taught, except for 2 Pascal programming classes as a freshman
One mid-life crisis later, and I had some computer skills that got me a job with an education services company. from there, I got transferred to their software division, where I managed the release of million CD titles.
We laughingly called it "edutainment"
So let's get down to Freespace. DaveB has said that the FS2 Source Code contains
Originally said by DaveB
both razor-sharp coolness and horrifying atrocities
How complex is the code really?
Well, I personally don't think it's that hard, but my responsibilities as the project coordinator don't see me in the guts of it all that often. I have a couple general observations though:
The code is well organized, and pretty well commented, it doesn't take long to get the gist of what anyone piece of it does.I think it's a powerful testimony to the codes ease of use by looking at a couple things
1) the icculus.org port: They kicked ass and got a working Linux port in mere weeks after release. WE were still trying to figure out what we wanted to do.
and 2) Bobboau and the other programmers who didn't have much experience. If you believe Bobboau, he'd never done C++ before, and if you look at the list of features we've added, a significant amount came from him. OpenGL was another big surprise for me, Phreak got that working in record time. And Random Tiger, while the Dx8 port isn't in the official build, managed to both understand the engine, and learn DX8 quickly.
Granted, all the SCP team members are REALLY smart, so we might have had an edge, but the code is decent to work with
so, how is the work in various branches going?
Well, we've managed to get everything into a central branch except DX8. SO I would say it's going well. Goober is a great new addition to the team, and codes like a madman, so that's been fun.
When might we see this DX8 build then?
Ah yes, DX8! A little background on that first, then I'll answer it.
Random Tiger was the DX8 king, and we wanted to give him a safe playground to work on it, mostly because the DX8 SDK was 150+megabytes, and making everyone download that would have gotten us shot at
. So we gave him what we call a CVS branch. The way branches work, is that they take a snapshot of the code at the time you make a branch, and copy it to a new part of the CVS server. The problem with that is, you have to be religious about updating your branch form the main code base, or things will get out of synch, quick.
Well, needless to say, we were not religious about that.
So right now, we have this wonderful DX code that includes things like the movie player, but we can't use it till RT comes back, or UP gets his connection back (Unknown Player was the other principle DX guru). I want someone who wrote the code managing the merge, because I know there will be conflicts.
Best answer I can give on full DX8 is "soon".
We'll extract the movie player in the coming weeks so we can do cutscenes, but the full DX merge is still a few weeks beyond that. Phreak tossed us all a graphical bone with an OpenGL upgrade. I should have a launcher to enable that anyday now, it's IN the code base now, in 3.4, just have to edit registry settings to enable it, hence the launcher.
But we know everyone is dying for cutscenes again, so we're gonna get that movie player code ASAP For the OpenGL thread, see
here , for the DirectX8 thread seehere .
Now, to work with the source, I guess you have to be pretty good with how FS works. Have you looked into the world of FREDing and Moding?
I can't FRED to save my life
Mostly, I understand software development in a video game (which is what we are doing) has 2 parts:
1) honest to go software dev
2) art and creative dev
The programmers try to give the content and art people the tools they need to do their jobs, and outside the fan community, it's rare to have people good at both.
I have the art skills of roadkill, and making levels, missions or whatever you call it in a particular game is definitely art
. So, while i can muck about in FRED, any of my attmepts are unplayable, mostly because I haven't learned the art
We DO have some incredibly knowledgeable people on the project though - people who get the "art" of mission making
.Such as Sesq, I take it.
Have you worked on some other similar project? (basically any other videogame)
Yes, as a matter of fact I have!
About 7 years ago, when I was a PhD student, I worked with a professor who was a Magellan scientist. Magellan was the most successful NASA mission to Venus, NASA is STILL analyzing that data! anywho, she had all these Unix workstations that processed the data, really cool stuff, and they made all these simulations of flybys on the surface of Venus based on that data.
Really made me go "ooooo".
So, after I got out of Geology and into computers, I would always see these video games that did cool terrain effects. I had some virtual walkthrus using commercially available software (cousins to Bryce) and some experience with VRML, but none of it really captured what I wanted. Then I started modding Descent 3.
that started getting me the results I wanted. so it was this really cool thing, to hop into a pyro (and later, little custom ships) and scoot around the surface of Venus in real-time. And some of the levels were even fun to play, lots of nooks and crannies to hide in.
But to do a professional looking thing, meant i needed to license the engine and get at the source, and I didn't have the 250k that Outrage wanted. So, I embarked on a quest for the perfect game engine. Led me around the net, made me spends
of money on books. I played with them all. Till I sumbled on Tribes 2.
I ported my Venus stuff to the T2 engine, and got an even MORE favorable result. Adn THEN, Garagegames.com released the source to T2 - for 100 bucks, Icould build my own custom app.
And again, as I was building the app, I had people help me test it, and I eventually added guns and vehicles so they could remain interested. as I was doing this, I was comparing my experience to my "day job" and I realized, this could be a fun job some day.
I published my paper on using a game engine to do science, and focused on trying to make a game. I am currently helping a company called Maxgaming Technologies, LLC pursue a real publisher for real money on a real game. We've put out playable demos, I have put up some personal builds of some playable stuff over time, including a proof of concept for the "Freespace Forever" project, which became the SCP when the source was released . early playable work od my own can be found here, including the little demo that has 2 freespace ships running around blasting each other.
Oh, and I also helped test
of fs2 stuff when I was running the Ross128 site, but I keep forgetting that For the demos and Inquisitors other project see
http://www.shatteredstar.com/friendlyfire/ and http://www.deckersds.com/endeavor/ .
Well, that's good enough for this evening, ladies and gents (well, mostly gents), and that was Inquisitor. Good night, and see you back at the forums.
And last but not least, I present you: INQUISITOR IN REAL LIFE(tm) (his wedding to be exact)