Slashdot Log In
Quake 1 GPL'ed
Posted by
Hemos
on Tue Dec 21, 1999 09:13 PM
from the only-a-matter-of-time dept.
from the only-a-matter-of-time dept.
WarSpite was the first of many to write with the news that id has open-sourced the Quake 1 Source Code. This includes WinQuake, GLQuake, QuakeWorld, and GLQuakeWorld. Yes, it's been released under the GPL [?] . id's ftp site got the goods.
This discussion has been archived.
No new comments can be posted.
Quake 1 GPL'ed
|
Log In/Create an Account
| Top
| 479 comments
(Spill at 50!) | Index Only
| Search Discussion
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
The obligatory mirrors (Score:5)
ftp.idsoftware.com/idstuff/sou rce/q1source.zip [idsoftware.com] ftp.cdrom.com/pub/idgam es/idstuff/source/q1source.zip [cdrom.com] ftp.3 dgamers.com/pub/3daction/00archives/quake/unsuppor ted/q1source.zip [3dgamers.com] ftp2 .3dgamers.com/pub/3daction/00archives/quake/unsupp orted/q1source.zip [3dgamers.com]
Walnut Creek mirror (Score:4)
or the file itself: /idgames/idstuff/source/q1source.zip [cdrom.com]
ftp://ftp.cdrom.com/pub
Amazing... (Score:3)
Mac glquake should be pretty easy now (Score:4)
Producing a version of the software renderer with decent performance would be VERY HARD. A huge amount of effort went into the assembly optimization for the PPC, and it still didn't quite measure up to the x86 code.
John Carmack
Is the Metaverse nearing practicality? (Score:3)
Now that a fully 3-D rendering engine, which supports 3-D acceleration is available under the GPL, I can only hope that a few aspiring programmers can take all of that code and begin development on some true Virtual Reality software. With high speed access such as cable and dsl becoming available in more and more areas, such an environment is truly becoming feasible.
The way that I see it, all that really needed is a large amount of artwork and new networking code. Imagine that each MetaQuake server is a node in the metaverse, each server acting as either a room, a building, or an entire city (based on available bandwidth), where people logged into one server can interact with one another directly, but you use a "subway" system to transfer your information *between* servers, allowing you to enter new buildings, cities, etc. If all of the servers were interconnected similar to the way the internet itself is connected, it could work. There could even be sub-programs written into the engine in which you can pick up a virtual pay phone, and video conference with someone on another server (or not logged in at all) via a direct connection.
I think that the Quake codebase would certainly be an excellent start, but it's more likely that Quake2 or even Quake3 would act as a better environment to do such programming in. I know that Quake1 modules had to be written in "QuakeC" whereas Quake2 modules could be written in full-blown C, which in my opionion would be better suited to the "videophone applet" or other such modifications. Also, the original Quake networking code wasn't so hot (hence the need for QuakeWorld) whereas Quake2 was much better about it, and Quake3 was actually *designed* for online-only usage.
Perhaps if a small band of programmers started messing around with this sort of stuff right now, we'd all be ready to take advantage of more advanced engines, such as the Quake2 and Quake3 engines one they become available (which they most likely will, the way that iD has been doing things -- Thanks guys!)
Can anyone speak from experience if/how well models and skins, and/or maps created for Quake1 can be ported into Quake2 or Quake3? Is there anyway that level designs for a "metaverse" could be later re-used should iD be so gracious as to release the source to their more recent engines?
--Steven M. Castellotti
Re:Thats great but what about other OS's? (Score:3)
Two: I think Westlake has to Open-Source their stuff now, including all six Quakes they did (software, 3Dfx, RAVE, QWsoftware, QW3Dfx, QWRAVE). They were based off the original Quake source, after all, and probably still contain chunks of it (particularly the QuakeC engine and the file-translation routines).
I should also point out that the 3Dfx (and, if I'm not mistaken, RAVE) versions were themselves ports of GLQuake with the rendering engine changed as appropriate. So while the Mac doesn't have a "true" GLQuake, it has pretty much the same thing already. A true GLQuake would be nice, though, and shouldn't be too hard since we already have two very similar programs.
NEWS: Richard Stallman Missing (Score:3)
Open Source Superstar "Nowhere To Be Found," Report Police
CAMBRIDGE, MA (AP) - Richard M. Stallman, better known as "RMS" by the open source software (OSS) community, has apparently vanished off the face of the planet. After missing several speaking appointments and coding commitments, many of his fans have begun to ask questions about his whereabouts. Stallman is the founder of the GNU project, which is dedicated to providing free, open source software to the computing world.
Eunice Bleyfeld, Stallman's neighbor, seemed surprised by Stallman's absence. "I hadn't noticed anything out of the ordinary," she commented to the Associated Press. "He wasn't acting strangely or anything like that the last time that I saw him." However, Mrs. Bleyfeld recounted a strange incident that took place in the middle of the night a few days ago. "I woke up and heard what sounded like an altercation at Mr. Stallman's," she said. "He shouted something like 'I'll frag your ass.' Minutes later, I heard him yell something to the effect of 'Eat my pineapple, bitch!'"
Police psychologists were puzzled by Stallman's alleged ravings. In the meantime, Stallman's apartment door remains locked and phone calls are greeted with a constant busy signal. "We think the phone must have gotten knocked off the hook," explained Cambridge police chief Samuel Breckenridge. "That explains the busy signals. Beyond that, we're not quite sure what to do," continued Breckenridge. "The guy is quite literally nowhere to be found. We're sure that he's not at home, because if he was, you'd think that he would answer the door."
Police have placed Stallman's picture on the side of cartons of CD-Rs and DIMMs nationwide, along with the caption "Have You Seen This Coder?" The hope is that somebody will recognize the missing open source icon and report a sighting to the authorities.
Stallman is famous for his refusal to use anything except free software. In particular, Stallman is a fan of his GPL license, which provides for unrestricted modification and distribution of software.
John Carmack contributed to this story.
Re:Just speculation... (Score:4)
While thinking in terms of money and profit are probably good ways of understanding the way most things work in the world, don't let yourself become so jaded or cynical to think that it is the ONLY way things work.
I do think The World Would Be A Better Place if all software companies released older code so users still interested could work with it or learn from it. (I'm not holding my breath, though)
John Carmack
Santa Carmack (Score:5)
You better shoot grunts, zombies and scrags
Santa Carmack G-P... L'd Quake
He's written some code, debugged it all twice
Then made it all free, isn't that nice
Santa Carmack G-P... L'd Quake
He knows when you've been fragging
He knows when you've got quad
He knows when you've just rocket jumped
'Cause Carmack is Quake God
So don't you be lame, don't you not play
Join a net game, I'll frag you today
Santa Carmack G-P... L'd Quake
top 7 things I'd like to see with quake (Score:3)
2. Support for 24 and 32 bpp modes in the X version.
3. Support for fbcon instead of the ancient svgalib.
4. Make the X version change resolution and center the screen before it grabs the mouse.
5. Use scroll-lock to grab the mouse, ungrab the mouse on pause.
6. Support for wheel mice.
7. Sound support using ALSA.
Re:You know what this means... (Score:3)
The levels are data files, and not code.
Saying ID must open source them is like saying anyone who open sources a text editor has to give you all their text files.
2nd, id software is the copyright holder, and is free to give away or not give away whatever they want. They can license their property under any license they want. They couldn't link their GPL'd code with non-GPL'd code (but we already established all their code is already GPL'd) but they could issue another version under another license, as long as it is all their copyright. In this version, no GPL'd code at all could be used, however.
Re:Level maps *are* GPL'd (Score:4)
Completely aside from that, I think it is still unclear exactly where the GPL wants the separation of code and content.
Few would argue that every document read by a GPL word processor would be covered by the GPL, and most would place maps entered by quake into that catagory, but things can quickly get murky.
Quake game mods are written in QC, but turned into data to be processed by the main code. I think the spirit of the GPL would want that code to be released, but it is only a small step from there to saying that every program loaded by a GPL operating system must be GPL, which is clearly not the case.
John Carmack
Re:Is the Metaverse nearing practicality? (Score:4)
I don't think so, due to what I call the Database Problem (I'm sure there's a more formal name for it).
Basically, for the Metaverse to work, you need a massive, distributed, dynamically load-balanced database. You need near-zero latency between servers to handle synchronization. You need to be able to have servers dynamically hand off clients to one another without the user being able to perceive it happening. You need to be able to support the one guy wandering off by him/herself in the "frontiers" of the metaverse. You need to be able to support the virtual stadium containing 100K independent spectators (plus the 30 or so guys playing Rocket Arena down on the field), and handle collisions and other object/object interactions between all of them ("Oh, no, Bob! A wild grenade just landed in the home field bleachers!" "That means a five point penalty, Dan...").
IMHO, this problem is insoluble with current technology. Those who point to Ultima Online et al don't realize that they're side-stepping the problem by keeping all the users and data on a given server. Users and objects cannot migrate between servers. To do even this much, you need heap big server iron, which UO has. But to do something the scale of the Metaverse, you can't get one server that's big enough; you must go to a dynamic distributed system. No one has solved this problem yet.
I suspect advancing CPU and network technologies will eventually make this practical, but I believe we're still several years off...
Schwab
Re:Is the Metaverse nearing practicality? (Score:3)
Yes I have been drinking.
Just thought this was important to say (Score:3)
I'm sure some of you are familiar with the GPL, while some may not be. The GPL is the license which most Linux or GNU software are released under. The whole principal behind this license is to guarantee that the GNU suite of software REMAIN open source. Once Open Source, always Open Source (sure, the maintainer may decide one day to take a later version off of the GPL, but the earlier versions would still be covered by the GPL). I won't get too technical here, I'm not a lawyer, but to further illustrate this point I'll quote the readme file that comes with the Quake1 Source code:
"The code is all licensed under the terms of the GPL (gnu public license). You should read the entire license, but the gist of it is that you can do anything you want with the code, including sell your new version. The catch is that if you distribute new binary versions, you are required to make the entire source code available for free to everyone."
That last sentence is what hurts us as a community. If you thought EQ had a bad effect on TF, well you ain't seen nothing yet.
Right now, as we speak, I'm 100% positive somebody out there is trying to compile a version of QuakeWorld with some special features to give him an advantage (cheating). It's inescapable now. Cheating is now easy and simple. No more hex editing or debugging binary code, no more proxies that use some flaws in the way the game works to give you an advantage. No, now people can create real cheats, powerful cheats, cheats we can't detect and they can do it easily. Wall hacks that work everywhere regardless of the map, real autoaim, workarounds for Concs and Gas grens. The possibilities are endless.
What really sucks, however, is that because Quake is now GPL, we can't create a special version, controlled by a 3rd party that we can all use and know that nobody out there is hacking it. They by virtue of the fact that Quake is now under the GPL are required to release any modifications they make for Quake to the general public, and guess what that means? There version will be just as easily hacked as regular quake. Not to even mention the logistics of getting a 3rd party working on the game, and getting everybody behind this one version of quake.
The ONLY possible solution is if somebody were to get special permission from ID software itself to release a version of Quake w/o having to release the code. I find this highly unlikely, however, the GPL has it's purpose and I am fully behind open sourcing Quake. There is a lot that can be learned from the game code, and it will benefit people far more this way.
TF has been on life support for a while now, but ID just pulled the plug. gg ID. gg TF. It's been fun. Time to move onto a new game however.
Dalroth
Formerly of
Dark Shadows
Formerly of
Predatorz
Formerly of
The ShaoLIN Brotherhood
Formerly of
The Ministry of Pain
Formerly of
Tempest
See you guys in UT and Quake 3.
=======
To further expound on that, some people have said that there are people out there who don't cheat, and the majority of players will continue to play honorable.
I do NOT disagree with that. You see, that's not the problem. It's the social implications that will arise as a result of this. You now know that the person on the other side of the internet has unlimited potential to cheat. Any time you get your ass reamed, you're going to be supicious, wether that person really cheated or not. The few people who do cheat, will cheat like bitches and will only further justify this suspicioun. Soon it'll grow to hostility as everybody distrusts everybody and the scene is torn apart at the seams. You say your clan will play honorable, you say your clan won't cheat. But how do you know player (X) isn't cheating? How do you know player (Y) isn't cheating? You WILL be suspicious. It's hard enough to NOT be suspicious as it is.
That is going to be our deathknell. We all saw how we reacted to eV. That was mild compared to what can happen with this one.
Dalroth
==========
If you REALLY care that much, the best thing you can do is send a nice pleasant email to them asking them to allow an exception for somebody to do a closed version of the game with the sole purpose of allowing the community to survive. Spamming them, threatening them, yelling at them and accusing them is the last thing in the world you need to do. That will only shut them off from teh community completely.
Personally, I think in the short run this really sucks. But indirectly, in the long run, what they have done by releasing the code will far outweigh the death of the Quake community. The projects that grow from teh quake source, and the knowlege people learn by using it and studying it will have an impact down the road, however indirectly it may be. I for one am thankfull ID did this. The game code will benefit me later in life (and boy do I ever intend on studying it and learning things work) than a few more months of TF will.
HendriX-uNF wrote:
> while some people might consider this as a ground
> braking present from ID, its also the death bell of
> the community that we played TF with. This move that
> ID just did was nothing more than to push people to
> play Quake 3, in other words they killed a community
> to create another one.
>
> I will never think in any way that John Carmack did
> not know this. He knew quite well that if he killed
> TF, he would gain unbelivable amounts of money while
> pushing people towards the Quake 3 scene. Although
> this "push" is not that obvious to some, to our TF
> community, its going to strike like lightning in the
> next couple of weeks.
>
> Thx ID for creating this community, no thanks for
> killing it.
>
> HendriX-uNF
Re:Just thought this was important to say (Score:3)
I'm not familiar with 'EQ' and its relationship to TeamFortress. Could you provide a pointer to some historical background?
Complete disagreement. In fact, it is now easier to do this. QuakeWorld in fact implements this to a very limited degree by transmitting checksums back and forth on the models and maps being used by the client and server. Apply these checksums or, if you prefer, an MD5 digest to the client and server binaries and you should be able to build a web of trust fairly easily.
Set up a Web server containing a known "cheat-free" version of the QuakeWorld server and client. Use GPG to sign the binaries and source archives. Allow peer review of the code, and allow reviewers to co-sign the cryptographic signatures on the archives. Over time, people will come to trust you as a source of cheat-free clients and servers.
This next step is a bit harder, but it should be possible to come up with an authentication method that a server can use to assure to a very high degree that the client is uncompromised; and that a client can use to likewise verify a server.
Schwab