I realize the discussion has started to move in a different direction,
but I would just like to briefly state... something. I wouldn't really
call it an opinion. This might be a bit long winded (and I should warn
you a cuil-like, nearly nonsensical metaphor is approaching), but bear
with with me :)

I view Valve as one of "the three", when it comes to first person
shooter technology. Id, Epic, and Valve. Each studio seems to focus on
a particular aspect when it comes to development. Id focuses on the
technology, Epic focuses on the art, and Valve really doesn't care
about their tools, but rather the end product (as long as the player
wants more). And this is, I think, apparent when viewing the ad-hoc
way in which features are added (or should that be bolted? :P) on to
the Source engine, as opposed to say Id Tech, or the Unreal Engine,
where large portions of the engine are written with each iteration.

Now to get to the metaphor of engine technology I call "The Burger".

Let's assume for a moment, that Id software has created a burger. It's
the first of its kind (to be released), and the cook, John Carmack, is
quite pleased with this creation. Everyone loves it, and some say it
will be the future of cuisine. John tells those who wish to listen
about what is in the burger, how he had to change the ingredients to
ensure that everyone in the world would be able to eat it, and enjoy
it, as well as some of the challenges to make it look and taste so
amazing. But, as a problem, nearly everyone in the world has begun to
hack together their own kind of burger, but only by looking at John's
Burger (because not everyone has the money to pay for the recipe).
Regardless, the Cheesequaker was a huge success.

Meanwhile, a man named Tim Sweeney began cooking his own burger as
well. He was aware of John's Burger, and had started to create his own
before John's would be released to the public. A few screenshots of
what Tim's burger *could* be were enough to entice burger fan's
everywhere. But instead, a young man was brought into Tim's Kitchen.
The burger's ingredients were delicious, but the burger could
definitely look better, so this young man named Cliff added some
pizazz to the burger. Once released, Tim allowed people to purchase
the ingredients, as long as they promised not to tell anyone what was
in them, they could create a brand new burger, independent of their
own (indeed, one such restaurant was 3D Realms, which promised The
Duke, a burger that would satisfy you, *forever*). Even fans of the
burger were told how they could add zest, and spice to this "Bunreal".

Around the time of the Bunreal release, a startup approached John
Carmack, and told him of an idea they had for a burger, built on his
recipes. John, rather than be an megalomaniac, gave them the recipes,
parting with the words "Make something great". This startup did. Using
some as of yet unreleased at the time additions to the Cheesequaker,
they were able to create a wonderful masterpiece. "Half Fry-fe".

Let's skip forward several years, and ditch this metaphor because the
punchline has been told, and the horse has been beaten to death
(horse? don't you mean cow? hahaha). And I don't want to iterate all
of FPS gaming in the past 15 years for everyone with burger jokes,
because I'm fairly certain a majority of us were all there for it. :)

Part of why I think the Source SDK is starting to feel old and
decrepit is because of design decisions with the tools early on. I
emailed Valve back in and Mike was kind enough to respond. I asked
what toolkits Valve used, with nearly everything, and was told that
Hammer (and friends) used the old MFC framework, with a few tools
relying on Mete Cirrigan (of Milkshape 3D fame's) mxToolkit (though
this is mentioned in the copyright statements for the Source SDK).  I
don't believe this is Mike's fault, nor do I think anyone wishes it
was, and if anything I think he is slowly trying to phase it out, or
at the very least, quickly phase it out in favor of OS X support. And
yes, the code for Source itself is most definitely not the cleanest
code. From clear cases of code that is ingrained with some instances
of code that hark back to the QuakeWorld version of the engine (I have
no way to prove it, but the ZPool/Memory Pool is most likely somewhere
within the confines of Source in some way shape or form. You can't
*not* have a memory pool. Otherwise I would question how Team Fortress
2 is able to allocate so much memory), to routines that return
allocated memory, to "C With Objects" code, to preprocessor macros
that have a blatent disregard for sanity (http://i.imgur.com/maP8P.png
<-- seriously guys, you couldn't use a va_list? I mean I'm all for
type safety, but at some point you've just got to step back and say
"It's ok to have a little overhead when calling a script from C++".
I'm pretty sure that list gets bigger too. I'm *not* diving back into
that code), to a small amount of template usage, and function
overloading, to even possibly the hungarian notation naming convention
(int* pX; // I'm not sure if this is a pointer, you guys.), it's quite
obvious that with alternatives such as Unity3D, the UDK, and even
smaller more recent engines such as Love2D, that continuing to deal
with Source is no longer the requirement to "strike it big" in the mod
scene.

Now I did mention some C++ specifics above, and I would like to
briefly say, I would rather not turn this into a C++ flamewar (if I
wanted that I would just post on HackerNews, or proggit).

Perhaps a more recent example of older tech trying to compete with
"The new hotness", would be the gcc vs. LLVM/clang war, in which the
old and venerable (and to be honest source wise, quite confusing) GNU
Compiler Collection is starting to lose ground to Clang. And though
GCC is trying its best to keep up with the great new features that
LLVM and clang provide, there is only so much they can do, without
rewriting everything from scratch. Perhaps this is why we have heard
no word on Half Life 2 Episode 3. Maybe Valve is cooking up some "hot
new tech" to wow and amaze us, now that they have so much "FU" money
from Steam, maybe they're trying to reassess what they can do with
Source at its current stage in life. But there's only so much you do
can do before everyone realizes "Oh, this was made with
(Gamebryo|Unreal|Id Tech {3/4}|CyrEngine {1/2}). It's a shame that it
was because otherwise I would most likely enjoy modding with it."

And perhaps Valve is trying to mitigate this movement away from Source
with the Mannconomy in TF2 (Artists), or Alien Swarm (Programmers),
and possibly even the new DOTA (designers? possibly).

I'm sure that time will tell, but either a change needs to be seen in
their tools soon, or they'll turn into a relic with which several
groups cling to, proclaiming their superiority to others, while the
rest of the world moves on to the "stronger, better, faster"
technology allows folks to do. Not because they're prettier (ok,
that's *one* reason), but because they are designed more for putting
out content in a more timely fashion.

On Thu, Oct 28, 2010 at 1:53 PM, Cory de La Torre <gear....@gmail.com> wrote:
> I don't feel that the idea: "Not in valve's best intentions to care that
> much about the SDK like Epic" is an excuse any longer. Regardless of the
> fact that source is lagging behind in it's own way, I feel this wouldn't be
> so much of a problem if there weren't so many fucking engine versions. I
> don't wanted a better version of Orange box, I want a better version of
> Source, one thats currently present in games like left 4 Dead2, or Portal 2,
> AS, etc.
>
> I feel that if valve we're to (if they really love engine versions) create
> a separate version just for modding, they could dump a lot of new engine
> features (minus gameplay and game specifics) into that branch, thus solving
> the problem of using a shitty version of Source, and a different
> version altogether.
>
> On that note (and as far as I'm aware: Mike Durand is the *Only *guy up at
> valve working on the SDK. If this is true, valve needs to seriously hire
> some more people. I don't know what keeps Mike busy everyday, so much to the
> point where most promised SDK updates get delayed months, but it needs to
> change. My liking of modding on Source isn't wanning because of what the
> engine can do, it's wanning because I'm not sure if I'm going to commit my
> time and resources onto a project, for it only to be crippled by some update
> for the SDK in the future. Even more so, for me to sit there and wait
> an indefinite amount of time for a fix to come along.
>
> Lastly I also feel the whole "you're getting this for free" isn't a valid
> counter anymore for this subject. Free is an entirely different side when
> Valve almost seems, and feels obligated to release a SDK with every game
> they release. Sure, it's free, but thats only because it's
> within their model of business. Even so, I don't think charging people for a
> Level editor to make custom maps or what have you is really going to work
> out. We need to look at the obvious situations that would arise had valve
> sold the SDK to begin with. They continually highlight the availability of
> tools for each title they release. My point being here: Promising tools only
> works if the tools you release aren't going to require updates for them that
> get delayed, or semi working tools, or features entirely missing.
>
> Because there is no actual: "*Heres everything you can touch and can't*"
> type of document, we've been left to figuring out the majority of this stuff
> out on our own. That vague line between what the tools can even do to begin
> with is reason enough to argue about them being broken.
>
> Overall if people are getting tired with modding on Source, it's reasonable
> now. People at Interlopers are, PP, Steam Forums, Mapcore. Source is getting
> a lot of flak now, from many corners of the internet, and it's kind of sad.
> I love source, but god damn do I hate the tools. Oh man speaking of which.
> Remeber when Valve said multicore support was to ship with Half Life 2
> Episode 2? Yeah that was back in 2007. It never *fully worked* until 2010.
> Oh and thats right, we modders can't use it yet, because that promised 2009
> mod support update was mentioned 5 months ago, and *still* hasn't happened.

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to