typodupeerror

• #### Clean Underwear (Score:2)

This is why it's so important to (1) indent properly, (2) use meaningful variable names, and (3) provide adequate comments.

You never know when when your code will be GPL'd and then everyone will know what kind of programmer you really are!

• #### Re:Just speculation... (Score:1)

Good guys???

The product no longer made any money. They dont really need to keep it under wraps any longer. IMHO this is just an easy way to get big time media coverage. The sites being /.'d now, tomorrow all the geek trades will have a blurb about it.
I like id's stuff as much as the next guy, but this sure looks like a press campain around a product that is being decomissioned.

• #### actually it does use the quake (I) engine (Score:2)

Valve originally licensed the source for Quake from id Software and they began working on that code around October of 1996. Between that time and the time they finished Half-Life in October of 1998, they modified/removed/created something like 70% of the code. --Taken from the Official FAQ
• #### Is the Metaverse nearing practicality? (Score:3)

<steve [at] theProfessionalAmateur.com> on Tuesday December 21, 1999 @05:39PM (#1454814) Homepage
I see a lot of people already complaining that iD has only released Quake because it wasn't making them money anymore. I find such comments absolutely rude and uncalled-for, iD is doing the open source communitiy a wonderful favor by releasing their code under the GPL. Why don't we concentrate instead on the possibilities opened by this code release...

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
• #### Um... (Score:2)

If you're just starting to get the whole "programming" thing into gear, then the Quake engine is not the place to start.

Don't get me wrong, the Quake engine being GPL'd is a great thing, and I applaud Id for it. However, 3D-engines are not a good thing to cut your teeth on. Start small. Code a few 2-D games first (my guess is that you're into game programming). Tetris clones and platformers are always popular (heck, my first game was a taste-challenged Barney-killing simulator back in my high schools Pascal class). Then move on to grander things. You can't build a tool shed in the backyard and then move on to a castle right away. It's the same with coding.
• #### Re:Thats great but what about other OS's? (Score:3)

on Tuesday December 21, 1999 @05:50PM (#1454833) Homepage
One: MacSoft didn't code MacQuake. Westlake Interactive [westlakeinteracive.com] did. MacSoft only distributed it; they outsourced the development.

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.

That should be www.westlakeinteractive.com [westlakeinteractive.com]. Sorry about the mixup.
• #### NEWS: Richard Stallman Missing (Score:3)

on Tuesday December 21, 1999 @05:53PM (#1454840) Homepage
RICHARD STALLMAN IS MISSING
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)

on Tuesday December 21, 1999 @05:58PM (#1454845)
Heh. You don't know how much trouble it is to convince biz oriented people that this isn't just plain stupid.

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)

on Tuesday December 21, 1999 @05:58PM (#1454846) Homepage
You better make gibs, you better get frags
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
• #### Re:Thats great but what about other OS's? (Score:2)

Nope, westlake is free to keep their stuff propriatary under the license they originally got the code under..
The owner of the code can release the code to as many different people under as many different licenses as he wishes, and the code stays under the licence it is issued under even if it is issued again to someone else...
In one of the text files that comes with the source, this was said:

• #### It compiles under FreeBSD - Quick Hack (Score:2)

by Anonymous Coward
I've managed to compile it under FreeBSD in X11 mode, without sound or cdrom support (yet). All you have to do is edit the Makefile so that only X11 binaries are created, modify cd_linux.c and snd_linux.c so that they don't do anything and now you have a native FreeBSD version. No more Linux Emulation.
• #### I'm of Two Minds... (Score:2)

I'm really setting myself up as a target for massive flames here, but this latest development has made a tough personal choice even tougher.

As you all know, Quake 3 incorporates a new form of copy protection. Each copy of Quake 3 comes with a unique CD key. Basically, when you attempt to play a networked game, your CD key is sent to id Software's authentication server. If it's good, and not already in use by someone else, the server allows you to play. This scheme is to combat unsanctioned copying of their game.

I have several philosophical problems with this:

• If id Software's authentication server dies, no one can play a networked game. Designing in a single point of failure is always a poor idea.
• CD keys can be revoked at their sole discretion. This can theoretically be used to shake down legitimate users by claiming their key was compromised. This vulnerability to users bears consideration. (Note that this is theoretical; id Software's management would never do this. However, how far would you trust -- oh, let's say -- Microsoft with such a scheme?)
• It's an attempt to impose artificial scarcity in a Universe where it doesn't exist. Digital bits are, and always have been, easily copied at zero cost, which has certain unavoidable economic consequences. Trying to build walls against these consequences is, ultimately, foolish. See my essay, Digital Sculptures [best.com], for a more detailed discussion of why this is so.

id Software published Quake and Quake 2 without onerous copy protection in place (Quake 2 would check if the CD was in the drive, but that was it), and id Software made a lot of money. Now here we are at Quake 3, and we are suddenly informed that, "software piracy [sic] has become an enormous problem," without any hard data to back it up. To combat this alleged problem, hard-core cryptographic authentication techniques have been devised and implemented, presumably at significant cost to id...

For a game.

Moreover, id has been encouraging people to treat their Quake 3 CD keys as a secret as closely held as your credit card number. This analogy is grossly flawed in that the two numbers protect two very different things. Accidental disclosure of your credit card number could compromise your account and credit rating. However, accidental disclosure of your CD key probably won't compromise your copy of Quake 3. Rather, it compromises id's ability to sell more copies. Thus, with this flawed analogy, id attempts to conflate sales projections with personal property and reputation.

Are we to presume that, if this particular form of copy protection hadn't been implemented, it would have been impossible for id to turn a healthy profit? I find this very difficult to believe.

For primarily these reasons, I have elected not to purchase a copy of Quake 3. I find copy protection, on general principles, to be an unnecessary inconvenience, and smacks of an attitude of selfishness that has very little place in a Universe where scarcity does not -- and I contend should not -- exist.

Lest you think I am some kind of W4R3Z M0NK3Y, let me, a legitimate purchaser and owner of Quake and Quake 2, state very clearly and <STRONG>ly that John Carmack and everyone at id Software deserve every last penny they receive from sales of their software, plus more besides. Carmack is an absolutely brilliant man, far above my station and ability, and deserves every Ferrari he can lay his hands on. Same with the artists. They have done an absolutely incredible job of creating compelling new worlds for us to explore. All of them have worked unbelievably hard, and earned all the rewards we might wish for ourselves, were we in their shoes.

That's why this release of the Quake source code makes it so much harder for me to stick to my decision. By doing this, Carmack, Zoid, and everyone else at id have reinforced their astonishing coolness and deservedness of my support. I have been enriched by this release, which has only strengthened my respect for them. Against all "common business sense" (which is frequently common but rarely sense), these guys dropped one of the best known jewels of gaming history into the Digital Commons and said, "Here ya go." id Software have done virtually everything right.

...Except for the Quake 3 copy protection.

The infinite copyability of digital bits at zero cost forces a new kind of economic model, one that is fundamentally incompatible with the market-based ecomony we know today (which depends on scarcity/inconvenience to survive). I prefer to acknowledge this new economic model, and try to find ways to live and survive in it. Copy protection, on the other hand, is an attempt to deny this reality and impose artificial scarcity/inconvenience. This is, to a very limited extent, necessary if we're going to continue to be able to develop and enjoy monsterously complex games like Quake 3 (I know I couldn't draw all those textures myself). But the fundamental nature of digital media makes this an extremely brittle solution, as any publisher beleaguered by "piracy" will tell you. Once your protection scheme is cracked, natural forces take over.

I don't even pretend to have a solution to this chasm between our current market-based economy and The (Real) New Economy heralded by digital media. We as a society are still coming to grips with these new capabilities, and have only just started to form new social rules about them. This process of exploration isn't anywhere close to complete yet, so now is definitely not the time to try to bend digital bits into an economically expedient pretzel. (This is true not only for id Software, but also for the RIAA, MPAA, and all the other content providers trying to impose copy protection on the entire digital stream.) If nothing else, it will only make the social shock all the worse when Star Trek-style replicators finally turn up.

id Software: Please pledge to, at some point, drop the copy protection. It is contrary to the nature of digital media, and your unique position in the industry makes me confident you don't need it, anyway.

Schwab

• #### Re:Just thought this was important to say (Score:3)

on Tuesday December 21, 1999 @10:37PM (#1455031) Homepage Journal

If you thought EQ had a bad effect on TF, well you ain't seen nothing yet.

I'm not familiar with 'EQ' and its relationship to TeamFortress. Could you provide a pointer to some historical background?

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.

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

• #### Has anyone started any work on the code? (Score:2)

I managed to get svgalib version of quake/quakeworld working.. but the 3 jmp tables in the source cause a seg fault (my system: p3 450, linux 2.2.13, latest debian unstable branch) First one is in math.s jmp Ljmptab(,%eax,4) I had to replace this with individual tests.. (cmpb/jne/jmp/etc) I don't know whats wrong with the jmp, either it is jmp'ing to a wrong address, or its accessing wrong memory (%eax does have valid values)
• #### Re:Is the Metaverse nearing practicality? (Score:2)

But the question is still WHY. Why have a 3d representation of a 2d desktop? Why must my friend take the subway over to my house and knock on the door when he can be here instantly with chat/videophone/etc. Why does it have to be connected to a 3d world that only emulates the one we already have? 3d games like quake work because they're based on running around and killing each other- something we can all identify with. But when it comes to communication, we can handle much more abstract, and perhaps much faster and better methods than recreating the look of the "world" around us. It just seems redundant to have me sitting at my computer looking at a monitor display that shows me sitting at my computer looking at an IRC chat. Maybe someday in the future, we'll be able to eliminate the first step- the physical existence, but for now, let's cut out the poorly rendered 3d middleman.
• #### ahh but what about crack dot com? (Score:2)

They were the real Santa Claus as I recall. I made a quick scan of the article headers and I don't see any mention of them.

Back when Quake was new, crack dot com had the source on one of their servers. Someone happened to lift it from them.

Would Carmack still be giving us this official source release today, if that event had never taken place? He seems like the type who would, but you have to wonder if this subject ever came over at id, before releasing this.

Best regards,

SEAL
• #### Re:ahh but what about crack dot com? (Score:2)

Well, there is still a significant different between an illegal copy of the sources appearing on some FTP servers and an official, free for everyone, GPL release... For example to a games developer the warezed version (I think that the right term here) would only be good to take a quick look at and see how a certain thing was done while now you can really do anything you want with it.

• #### Re:Instant Karma (Score:2)

I totally agree.

And instant karma is also unnecessary because the real good stuff usually gets moderated up very fast. I'm always amazed that there must (?) be so many folks with moderation points so that insightful links etc. are going up to five only minutes after the message was posted. How many Slashdot readers with accounts are there?

To the original poster: If you're interested in all that JC had to say in this forum, simply click on his user info and you get a list of his statements.
• #### Re:Official CVS (Score:2)

I have applied for a project at sourceforge. Should get comfirmation within 24 hours..
In lieu of coming up with a good name, I called it GNUquake. ;-)
• #### GNUquake at sourceforge (Score:2)

I have started a project at sourceforge.net called GNUquake that will be aiming to GNUify quake, make building for multiple platforms easier, improve the sound code so it works with ALSA, and whatever else you all want to add.
The project will remain compatible with the binary quake release, but eventually I would like to add more features that can be used with other GNUquake servers and clients such as a "blessed binary" system to minimize cheats, perhaps protocal improvements, and again whatever is concidered needful.
I am curently looking for a few people who want to help administer. Email me at "spinkham at users.sourceforge.net" if you are interested.
Note that CVS hasn't been updated, as the domain isn't quite active yet.. It should be up in the next 4-6 hours...
• #### AIX port... (Score:2)

I actually helped port 1.08 to AIX back in 96-97. At the time, we had 1.08 available on the PC, but only .98 on AIX. and we had some pretty high powered AIX boxes. so after doing some searching, I actually managed to find the source free on the net. Anyway, the AIX support was still in there, but broken a couple places. so I patched it up, and wow, it worked! and even better than .98. then we could play against PC's again!

Anyway, I talked to Zoid about releasing it, but he was very unhappy that I had gotten the source, so I thought it was against my best interest to release it (at the time, I thought the source was legal because I had found it on a regular FTP site). But IBM was still distributing Quake 1 v.98 on their Demo disks (which i'm sure they still are).

Anyway, maybe i'll see if I can port it again, as my original copies are prolly lost on an old 43P.

• #### Could GPLQuake be packedged with Linux distros? (Score:2)

I don't see any reason why not. It would make a very nice addition to a linux distro.

My question is: are the pak files also GPL'ed, or just the engine?

Well, either way, thangs goes to id for the great work they've done. Q1 is still the greatest game of all time! I still remember all of the fun we had my freshman year in college loading it on all of the machines in the computer lab. Ahh, the memories.
• #### Re:ahh but what about crack dot com? (Score:2)

Well, they released wolf3d and doom. In another 2 or three years, maybe it will be quake 2 89

Jazilla.org - the Java Mozilla [sourceforge.net]
• #### OS/2 will never be Open Source (Score:2)

Another culture vanishing is OS/2. Hope IBM will decide to release their sources one day.

My understanding is that they can't because Microsoft owns part of it too. And, as you can imagine, it would not be in Microsoft's interest for OS/2 to go Open Source. It would make OS/2 more viable and increase the users' number of choices. From Microsoft's point of view, Choice is Bad Thing, so this simply cannot be allowed to happen.

OS/2 will never be freed from its owners, and therefore is permanently dead, unless IBM changes their mind about marketing it. (BTW, I am typing this on an OS/2 box.)

---
• #### Re:Is the Metaverse nearing practicality? (Score:2)

I'm not an expert in VR simulation technology but since the sort of implementation we're discussing is still some way off, I doubt it matters very much. anyway, it seems to me that some parts of your argument are somewhat misdirected.

You need near-zero latency between servers to handle synchronization.

This is undoubtedly true, since predictive methods will not be very accurate when dealing with humans in a more or less unrestricted situation.

You need to be able to have servers dynamically hand off clients to one another without the user being able to perceive it happening.

It'd be nice but it's hardly necessary. You could have quite a fulfilling time in an extended VR world even without having the option of walking everywhere. It seems unlikely to me that this would be allowed to hold up development. Instead, visitors will put up with virtual subway and elevator rides between locations which stand in for a "windows hourglass" during transit.

You need to be able to support the one guy wandering off by him/herself in the "frontiers" of the metaverse.

I don't see any problem there as long as the relevant server is up. The load on the server ought to comparatively low when minimal when serving just one user, so infrequently visited locations could be hosted on small machines or a number of them could share a single server.

You need to be able to support the virtual stadium containing 100K independent spectators...

This is interesting. Actually I don't think it will present a huge problem because a member of the audience can only interact fully with his immediate neighbours, can only observe or signal to the next distant ones, and can only observe more distant ones at comparatively low resolution. People on the other side of the stadium won't amount to much more than a colored dot. Also, interactions in such a setting are fairly limited. So, each visitor's environment only contains full information about a handful of neighbours and much less rich data about people further away. The total amount of interaction going on could be less than with say 20 people in a room having a party with conversations, subtle body language etc. If someone sitting three rows behind you recognises your avatar and calls out to you, the system detects this and upgrades your representations in each other's sensoria while communication takes place.

...(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

Well, that's just another game of Quake. I believe they already have that working :o)

Consciousness is not what it thinks it is
Thought exists only as an abstraction
• #### Re:Level maps *are* GPL'd (Score:2)

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.

No, Quake game mods are not required to be under the GPL, at least not if my understanding of the way they work is correct. It's either an interpreter or a JIT compiler, correct? Well, just because an interpreter (like bash) is under the GPL doesn't mean that all the scripts it interprets have to be under the same license. Just because the GCC compiler suite is GPL'ed doesn't mean that the code you compile with it has to be.

The GPL does apply to both statically and dynamically linked binaries, however, so Quake 2 game modifications would have to be GPL'ed if Quake 2 itself was released under only the GPL. If you released Quake 2 in the future under the LGPL then binary-only modules would be fine.

The Quake 2 case is interesting, though, since it's already released under a license that (if not explicitly, than by years of practice) allows binary-only DLLs to be released; and rereleasing it under the GPL wouldn't take away that right for people who purchased the original license. So would people who *hadn't* purchased the original game be allowed to write binary-only modules for a GPL'ed Quake 2? I haven't a clue. Ask RMS.
• #### can't get QW to work (Score:2)

Under Redhat 6.1, I compiled qwsv and qwcl. I found that at runtime, I get an error like this:

Fatal Error: Pak file has 507261234 files

(or something similar).

There's a problem in QW/client/common.c when it reads the pak file header. Could be a signed/unsigned issue. I wonder if anyone actually tried running the output after compilation at id.

• #### Re:Having the verifier local helps a lot (Score:2)

It can think it counts checksums, but you can spoof it all the way. Ever notice? You can do anything with a program by using the ptrace() function call and/or the LD_LIBRARY_PATH environment variable. You can make the loader think it's checksuming one file whereas in fact it's checksuming another, and all sorts of weeeeird things like that.

Even without getting into ptrace(), there's an obvious race condition in this read the binary, checksum and execute only if correct checksum'', since the exec() system call demands a filename and afaik there is no fexec() call which would take an already open fd to exec.

• #### Re:What use is the Metaverse? (Score:2)

The Metaverse is not necessary for group meetings; I hope you realize this?

At worst VR goggles, sound stages, and arrays of video cameras can do this today. At best you'd use digital whiteboards, teleconferencing systems, videophone solutions, and connected PCs.

-AS

#### Related LinksTop of the: day, week, month.

"Only a brain-damaged operating system would support task switching and not make the simple next step of supporting multitasking." -- George McFry

Working...