Torque Network Gaming Library Released Open Source 183
An anonymous user writes "GarageGames launched the Torque Networking Library under the GPL today - this is the PC game networking technology behind Tribes and Tribes 2. It's also available under indie and commercial licenses for closed source projects, but OpenTNL.org is the home for the open source release, which also has an official FAQ online. Along with the library itself is a master server implementation for game tracking, a graphical test app, Zap and a retro-styled space shooter."
Re:Linux Games (Score:5, Insightful)
Re:Linux Games (Score:5, Insightful)
They create awesome games, awesome software. The technology rocks and is generally the cutting edge for their market.
Then a couple of years later they open up the whole thing and give it away. "Here community, take this and learn." Classy setup they have there.
Also, don't forget they started this with Wolfenstein. I think this was 1995. So they've been doing it for a while. They were one of the first commercial game houses to do so, if not THE first.
wbs.
Step in the right direction (Score:4, Insightful)
This, along with the recent announcement [slashdot.org] that Tribes 1 and Tribes 2 will be given away for free, I wonder what kind of cool mods / enhanced will be possible?
Re:I've been working with Torque (Score:2, Insightful)
Well now that it's been released open source anyone can do that, right? :)
Re:Awesome news! (Score:1, Insightful)
So indeed, 60 players all who have line of site with eachother (or who are constantly moving in and out of LOS).
id is not being generous (Score:4, Insightful)
Id is not being selfless or altruistic, they are being self serving. They are doing the right thing for their business. That OSS advocates like this is a coincidence. You need to keep in mind id's business. It is not necessarily to sell games but to license their engine to other developers. That is why they can afford to be cutting edge. Their games don't have to run on typical systems, their games are in part proof of concepts and demos for the engines. By the time some other developer licenses the engine and has a game ready to release typical systems have caught up. They can afford to open the previous generation's source because they want a large body of programmers familiar with their engines. This puts pressure on developers to chose an id engine over someone else's.
Again, I am not saying id is doing anything wrong, quite the contrary. However don't have silly thoughts that they are doing this purely out of the kindness of their hearts.
Re:id is not being generous (Score:3, Insightful)
I'm not some fanboy, but I appreciate the fact that id will always release their games on Linux, despite the fact that it's not cost-effective to do so.
It isn't entirely "out of the kindness of their hearts," but more like "it's the right thing to do."
They know that, and act accordingly. Your points are valid, but they're not the entire picture.
Re:id is not being generous (Score:2, Insightful)
Would be good in theory - if each different generation of theirs engines where similiar. For better or worse, they are often not. The obvious case here being the jump from Doom to Quake, but even each iteration of the Quake engine has had significant changes that would make a change over far from trivial.
Case in point would be Daikatana - if anybody was going to be "familiar" with id's engines, you'd think it would be a former co-owner and employee. Originally Daikatana was designed and written using the Quake engine, which John Romero had been working with while it was being develop. Then, when the Quake II engine made it's first appearances, Ion Storm decided to change over to it; afterall it would give them coloured lighting, hardware acceleration and it was based on the Quake engine, so it couldn't be that hard, right?
Unfortunately, as they found out, the differences between the two were enough so that large sections of Daikatana had to be thrown away (see this [gamespot.com], if you want to check that out). Admittedly there were many other issues with Daikatana's development, but even Romero himself said that basically 11 months of coding with the Quake engine were useless once they switched to Quake II.
Plus, id have done other things, outside of OSS, that have contributed to the community. Michael Abrash, who worked on the Quake engine, was also writing for Dr. Dobb's Sourcebook at the time. The subject of his articles? The tech that was going into the Quake engine - often with sourcecode. To put this in perspective, this was over 6 months before Quake was even released, yet there they were showing code on how to do BSP tree generation and rendering, descriptions of their lightmap system and so on and so forth. Stuff that, essentially, ended up in the game when it was released about half a year later. Hardly in their company's best interests if they want to be purely self-servicing.
Hmmmmm... that's starting to sound like a id fanboy rant, but there you go.... :)
Re:id is not being generous (Score:3, Insightful)
That's not quite right. Some things, like the alias models, are identical*, either because there was no need for change, or because they were introduced while Quake 2 was still the same code base. Lots of other things, like the game dll/QuakeC, share very similar designs such that the differences are mostly just the changes from QuakeC to C dll, or those needed for the different monsters and maps.
*GLQuake read the MDL format and dumped it into something similar to MD2, I don't mean to say that MDL is similar to MD2.
Re:id is not being generous (Score:3, Insightful)
If so, his belief in open source is less than his belief that he should make money selling closed source software, because he's not open sourcing his newest stuff. If open source was his first priority, then the Doom III engine would be on sourceforge where a thousand eyes can help him debug.
This takes nothing away from id Software. They should be lauded for open sourcing code that they feel they can. I'm sure this benefits students of 3-D graphics and game design. However, based on his actions, Carmack believes in the closed source model of software development and sales.
Now, intentional or not, open sourcing old engines has the following effects:
DDJ articles more self-serving than old engines (Score:3, Insightful)
No one is saying that the next engine is dropin replacement for the previous. The next engine is going to contain some re-engineering to take advantage of additional hardware support, to take into account lessons learned, etc. However there will be common concepts and ideas found in both engines. Picking a scenario where the develop changes engines midstream is not a very good example. My point is that a bunch of programmers familiar with the Q3 engine will aclimate themselves to the D3 engine more quickly. You have to understand an engine before you start writing code for it.
Michael Abrash, who worked on the Quake engine, was also writing for Dr. Dobb's Sourcebook at the time. The subject of his articles? The tech that was going into the Quake engine - often with sourcecode.
Actually publishing conceptual and technical info with source for the current engine is more self-serving than releasing the old engine. It was absolutely in the companies financial interest. Again, you have to keep in mind that a large piece of id's business, maybe the larger piece, is to license their engines not to sell their own games.
To be clear I am not saying everything done by id is financially motivated, after all they admit to supporting Linux because it is cool not because it makes sense financially. I am merely trying to point out that their long history of sharing is not selfless and altruistic, both sides prosper.
Re:DDJ articles more self-serving than old engines (Score:2, Insightful)
I agree with the latter part of this, but not so much the former. Largely because I believe, primarily through experience, that having intimate knowledge of a system (or, in this case, engine) can often lead to a slower understanding of a new system. Why? Because you'll go into working on the new system with a good deal of assumptions and beliefs regarding how it will work, only to have those beliefs made invalid. Thus, you not only have to learn a new system, but also actively undo all the assumptions that you had in equating it to the old system. This can sometimes be very hard - even (sometimes especially) if it was the same person/people who wrote the code for both iterations.
This was my point with the Daikatana example. They appeared to have the belief of "Well, they're essentially the same engine, so it shouldn't be hard to port our stuff over". As I said - a dangerous, but probably unconcious, assumption.
Now, if you have stated that people who are fimiliar with older id engines will be more likely to use them again because they have a relationship with id, or that there is something that they like about their design process, I would agree. However, I don't believe that they will necessarily be able to aclimiatise themselves to the new engine just because they used their last one.
Nah. If they had released technical info that had been along the lines of "Here is how you make a model for use with our engine" or "Here is the SDK for our engine so you can write mods for it" then I would agree with you. But they were giving away source for things that would already been known by people working in the industry (BSP trees, Z sorted spans, etc are hardly anything new - they've been around for decades). The people that this would have benefitted were those in the community at large - ie. individuals who want nothing but to learn, and probably couldn't afford an id engine if they saved every penny they had for 5 years.
Used to be non-free (Score:3, Insightful)
Re:id is not being generous (Score:3, Insightful)
Personally, I rather think it would a bad idea financially to write the engine in an open source manner. Think of the hoopla behind the leaked HL2 src, etc... The game engine market is pretty competitive... There are a number of competing current engines: Doom3, HL2, Unreal, Renderware, Crytek...
But, that aside, Carmack has specifically said that he has made the case for open source software before. I think he said he would like to try it for at least 1 engine. But, he is only a 1/3 owner of id software, and it is hard to convince his (non-programmer) co-owners about the merits of open source, when id makes $500k per engine license.
And the flavor of the year is... (Score:3, Insightful)
P2P!
Why in the hell is everyone spouting stupid crap like parent here. Explain to me what good would P2P do for a MMOG?
And I'm not merely flaming parent here, but you people in general who generate instant karma from likely minded slashbots who have no clue of how networking or software works.
Imagine this:
Really Smart Software Engineer: What you observe here is a higly optimized algorithm for generic cryptoanalysis.
Point to Point Idiot: *has no clue but nods*
RSSE: And this is the networking core. It fetches data to be analyzed from the central archive, processes it and sends back the results.
P2PI: *Still has no fucking clue but hears the words networking and central* *Eyes bright up*
P2PI: Why don't you put P2P in it to make it go faster!=!=!1!?1+1!?1+1
RSSE: *WTF?!*
Different for games (Score:3, Insightful)
In the case of 3d games especially, the clients' fancy 3d card won't do much good unless the server sends it rendering information. Having the server determine "what can be seen" by a player beforehand gives excessive overhead, so in most cases you're sending such info to the client regardless of whether it is intended to be rendered. With the code for server/client communication, you could create a proxy or crack that would allow you to sniff data that should be hidden... like that guy hiding behind the crate you shouldn't see.
And, of course, in the same situation one could do all that by using a modified video setting which makes textures partially transparent... allowing you to see through the crate without any changes to the game binaries needed.
It might be OK for RTS games where the calculation of visibility is less intensive on the server, but not FPS or MMORPGs with 20+ players.