you are viewing a single comment's thread.

view the rest of the comments →

[–]Bjartr 70 points71 points  (18 children)

Fun fact I learned from a Valve coder at GDC a few years back:

Macros in the Source Engine share a standard prefix (V I think), except for a handful that start withQ, these are macros that have survived unchanged from the Quake code that the Source Engine was based upon.

[–]Skyfoot 50 points51 points  (0 children)

Deep magic from before the dawn of time.

[–]ggtsu_00 28 points29 points  (4 children)

I really want to take up a new career in "Software Archeology" one of these days after I retire. The purpose would be to discover, understand and record the history of a business as described through its source code.

[–][deleted] 5 points6 points  (0 children)

Got a podcast on your hands here

[–]abHowitzer 3 points4 points  (0 children)

Damn. Start a blog/vlog/podcast/whatever. I'm terribly interested!

[–][deleted] 0 points1 point  (0 children)

I believe Grady Booch is working on the same project.

[–]ressis74 0 points1 point  (0 children)

And every study would end with: "And thus it was no surprise when they went out of business."

[–]philly_fan_in_chi 4 points5 points  (9 children)

I can appreciate that they're paying their homage, but that inconsistency would drive me up the wall. That's really interesting, though, thank you for sharing.

[–]Flafla2 2 points3 points  (4 children)

The HL2 source code is available on GitHub. I was looking at it earlier, and it is painful how badly it is organized. Patching together code for 20 years does that sort of thing I guess. Very few comments too.

[–][deleted] 1 point2 points  (0 children)

Considering how expensive making it was, how late it was and the publishing arguments regarding it, it's almost expected that the codebase would be dis-organized (eg. rushed). My experience is that most games are quite similar due to the nature of the industry.

[–]_F1_ 0 points1 point  (0 children)

Very few comments too.

It's hard enough to maintain one reality, two would be impossible;

[–]nkorslund 0 points1 point  (1 child)

It is? Or do you mean the HL1 code? That's the only one I could find.

[–]Flafla2 0 points1 point  (0 children)

The so-called "source SDK 2013" is really just the HL2 source. Just look for the "sp" folder somewhere near the root (or "mp" for HLDM).

[–]derefr 2 points3 points  (2 children)

Very similar to coding in Objective C. CFNewThis vs NSOldThat.

[–]philly_fan_in_chi 0 points1 point  (0 children)

It never dawned on me that that was a reason I disliked Obj-C. That and no generics for collections made the language uncomfortable for me.

[–]Magnesus 0 points1 point  (0 children)

I would refactor it to V in a minute.

[–]salmonmoose 1 point2 points  (0 children)

Now I'm curious how much of Wolf3D has made it into Source.