Game Development Games Geek / Technical Linux Game Development Marketing/Business

Quake 3 Source Now Under GPL

It’s been in the news for some time, but it is still very cool news: Quake 3: Arena Source GPL’d

id has been pretty good about releasing the source to their older game engines. It’s not a new idea for the company. Apparently you still have people who think that the GPL is about stealing someone’s work, as this comment shows:

A Shame
Why did not you buy this game ?

Quake 3 is a great game, it costs few bucks

You want games for free, so I ask you to work freely, without salary.
Give your goods for free if you ask the games for free !

Huh?!? id released the source code to their engine under the General Public License. The game data and scripts remain proprietary, so you can’t legally play the GAME unless you pay for the proprietary data . It isn’t like some GPL zealots hacked into their servers and placed the code under the GPL. It isn’t like Carmack will come out with a statement like, “It is with great regret that I must inform everyone that we’ve lost our source code to the scourge of the GPL; however, we will not give up. We will fight back, and we will win!” It was a conscious decision to release the source, and no one is under the delusion that it is a free lunch except for people who think that the GPL equates to legalized piracy.

The Complete Text of General Public License
The GPL covers whatever an author wants to cover. Some games, source code and data, are covered under the GPL entirely, but the terms are restricted to the engine’s source code in this case. Therefore, the GPL dictates the terms of copying, modifying, and distributing the Quake 3 Arena source code. Not how you actually use the program. Not what you can do to the art or music that comes with the game. Copyright law gives id exclusive rights to the Quake 3 Arena engine source code. If they want to allow people to read the code, change the code, compile the code, redistribute the code, etc, they have the right to do so. The GPL is simply one of a number of standard documents to express what rights they are allowing others to have.

Don’t worry. No one is ripping id off.

Games Geek / Technical General


I don’t play WoW, but I thought this thread on their forums was hilarious: Son owned by Mother

Geek / Technical

Guess the Google!

A friend sent me this link last week: Guess the Google!

It is a fun game in which you only have a few seconds to try to guess the Google search term that resulted in the 20 images displayed. Requires Flash 7 to play.

Game Development Geek / Technical

Time Flies

Whoops! I didn’t meant to stay up past midnight programming!

I think it is a good thing that I was getting so into it that I didn’t notice when an hour or two went by. At least, that’s what makes me feel better about how behind my project is. In this time, I managed to get the program window to come up and close on the correct input without seg faulting for the first time.

I was still having fun, as frustrating as it was. I distinctly remember not feeling motivated when I started this programming session, but here I am, hours later. Good night!

Geek / Technical

Graphical Tip for X

While I think KDE and Gnome are great, I’ve grown accustomed to Fluxbox. It’s a lightweight window manager and does all I need it to do. One day I plan to use FVWM because it is so configurable, but Fluxbox is great for now.

I also use Debian. Debian has added a common menu for each desktop environment and window manager. While it is normally very nice, it doesn’t please everyone all the time, and there is one thing I can specifically complain about:

Now, xsetroot is a command line tool. It is, according to the man page, a “root window parameter setting utility for X”. Normally people use it to set the background to an image. KDE and Gnome and other window managers have simple, GUI-based ways to let you do so, but for people who prefer config files and scripts, xsetroot is the command you use. Of course, it needs arguments to be useful.

So what happens when you run xsetroot without any parameters? It resets your background and your mouse cursor to the default X settings. Essentially, it means your mouse is now a cross instead of an arrow and your background is made up of an annoying-to-the-eye pattern. So when you click on that menu entry, you end up with an ugly background and mouse cursor. Why would they put that entry in there?!

Luckily, Fluxbox lets you change the style from the main menu, so the background could revert back to what I had before, but the mouse cursor stayed the same. I didn’t want to have to restart the X server just to get a good mouse cursor back, so I decided it was finally time for me to learn how to change it manually.

After some IRC inqueries, man page requests, and some Googling, I found Customizing X Windows Tips. At one point, it mentions the various standard mouse cursors you can use. The command to use is xsetroot -cursor_name <cursorname> where cursorname can be one of entries in /usr/X11R6/include/X11/cursorfont.h
Some examples:

  • draped_box
  • hand1
  • hand2
  • iron_cross
  • left_ptr
  • plus
  • top_left_arrow
  • watch

Well, now that I know about it, it is pretty easy, but it isn’t very obvious to someone who doesn’t know. KDE and Gnome users are probably laughing at me as their mouse cursors are handled by the desktop environment, and Windows and Mac users might be thinking that using Gnu/Linux is tougher than it really is, but hey, I now know something that I didn’t know before. My computer is that much less mysterious. Some people might prefer to just get things done without knowing how the computer works, but I am a curious person. Before, I was always afraid of accidentally running xsetroot from the menu and not being able to recover. Now, I can feel comfort knowing that if something does go wrong, I can fix it, and I also know a lot more about the issue to make things better for me if I want. I am planning on writing a GUI to pick a mouse cursor for people who might not want to know about how things work and so don’t care to figure out how to fix it. I imagine that one might already exist for X11, but I haven’t seen it yet.

Games Geek / Technical


The Escapist’s Casual Friday for issue #4 featured the article Machinima by JR Sutich. It started out alright. It talked about how cool some video game movies, like Red vs Blue, can be. It also talks about how much poor quality work is out there that passes as Machinima but is really nothing more than some kid trying to show off how skillful he is at a game.

Sutich talks about how the issue of copyright infringement hasn’t come up very often for these videos. If not for the games themselves, why not for the popular music that gets featured? Especially since MTV has decided to play machinima music videos, it would make sense that the RIAA might decide that unauthorized machinima should be stopped to protect “creative artists”.

And then Sutich says that it would be a good development! While I understand the idea that there is copyrighted work that should be protected and I understand that strict enforcement of copyright would get rid of a lot of the crap out there, I also think that if the only people who can make machinima are the people who are given approval by the game companies, it would stifle creativity rather than promote it. He says, “often the best way to get something legitimized is to have it come under such intense scrutiny that it becomes regulated.” So now machinima isn’t legitimate? Microsoft has embraced Red vs Blue, and EA clearly must approve of Rooster Teeth’s Sims 2-based series The Strangerhood.

People make some pretty good quality machinima out there. It isn’t always easy to find, but it is one of those things that makes the Internet so cool. If people become afraid to make it for fear of copyright infringement lawsuits, there will only be that many less people making it. Maybe the RIAA, MPAA, and other organizations would prefer it to be as controlled as possible, but I know I don’t.

Game Development Games Geek / Technical

I Knew Something Was Wrong With Wind Waker!

I love the Zelda series, like most people. I even liked Zelda II: The Adventures of Link, but it could be because I bought the game with my own money back when I was too young to get a job.

So when I played Wind Waker for the Gamecube, I was a bit put off. After all, I liked Ocarina of Time and expected that the Gamecube version would be very similar. And I’m not complaining about the graphics like a lot of people did when it was first revealed. In fact, I think they look great.

I’m complaining because things aren’t as obvious as I think they should be. Now, I’ve played the original, The Legend of Zelda for the NES, and I remember being confused as to where I was expected to go. I only knew about things because friends of mine had already been there. I played a significant portion of the game on my own, but the experience was kind of ruined for me. And the game never told you where to go really (or if it did, I was too young to understand it), so it was entirely possible to discover the entrance to Level 4 before finding Level 2. But I played through A Link to the Past for the SNES and Link’s Awakening for Game Boy and loved them. Ocarina of Time for the N64 was also an incredibly great experience for me. Everything flowed in these games. I never felt like something was missing or that I was fighting against the game’s programming.

So what happened with Wind Waker? Don’t get me wrong. I think it is fun to play…most of the time. Fighting is incredibly fun, and the puzzles are a staple in Zelda games. But as I go through the game, I periodically find parts of the game that do not seem well done or polished up.

For instance, after you manage to destroy the boulder and allow the spring to flow, you can swim across to the other side. What you see is the entrance to a cavern, but there is lava preventing you from going inside. I see that there are some Bomb Flowers, so I think that maybe I have to throw them at the statues. So I tried. I threw the bombs at the statues. I threw them into the walls. I threw them into the lava. I tried to throw them across the lava. Nothing. And after some time, I decided to give up and stop playing that day.

When I came back to it, I still struggled. Then I threw a bomb at a statue, and apparently it hit it just right, because then it fell over! I later found out that you were supposed to hit the bomb on top of the pot it is holding, but I had thrown it there before, or so I had thought. Close only counts in horseshoes, hand grenades, and Flower Bombs (losing hearts because you didn’t stand far enough away is proof), and yet these statues needed precision hits?

There were other inconsistencies and frustrations that I can’t remember at the moment, but the point is that I kept feeling like Wind Waker was not developed with the same care as previous games in the series. While some parts of it were really well done, other parts were sources of confusion and frustration. I still don’t understand the Flower Bomb precision thing.

And then I find that Shigeru Miyamoto admits it. Later parts of the game were being made while working against the clock, with features being approved without enthusiasm. I am kind of shocked because I would think that you would give a person such as Miyamoto as much time as he feels necessary to make the game great.

I still like Wind Waker, but it is pretty sad to find out that the game was made in a way that didn’t even please the creator.

Game Development Games Geek / Technical

Escapist Magazine

A friend of mine recently emailed me to ask if I had heard about The Escapist, the new weekly magazine about video games and gaming culture. I hadn’t, even though it was covered at some blogs and gaming news sites…and Slashdot, the productivity killer which I’ve successfully been able to avoid for some time. Apparently this magazine is not just a new competitor for PC Gamer or Electronic Gaming Monthly. From the first issue’s letter from the editor:

The Escapist is an ambitious magazine, written, edited and styled with a fresh approach to communicating with gamers. We are the complement to the current gaming journalistic efforts. While the others give you up-to-the-second news coverage, we give you broad looks at news over time, discussing trends and proffering glimpses into the future. While the others provide previews and reviews of the next big thing, we give you a taste of the Cinderella game that might just steal the spotlight, plus a look at why. And while others ask developers about their latest projects, we delve into the masterminds’ thoughts and histories to find out what makes them tick.

So it is meant to be a magazine for mature gamers who don’t want hype and juvenile humor to litter their gaming literature. It’s for people who want to read about game culture instead of just news on the latest titles.

First impressions: I like it.

The magazine is free online (there are syndication feeds available), and there is a high quality PDF version to let you print out the magazine yourself if you choose to do so. I think I would like to actually order a subscription through the mail, but they don’t seem to offer that option yet. Also, their website apparently doesn’t work too great with Firefox if you increase the font size, and IE doesn’t let you change it at all. They hard coded the text to match the images, so the small font size isn’t fun to read, and increasing it makes it difficult since it will cover or get covered by other elements on the page. They tried to copy the print magazine (which doesn’t really exist!) look and feel onto their website, and that just doesn’t work well. Luckily, XFree86 (I use Debian so I don’t have yet) lets me zoom in on the screen, but it is a silly thing to require this workaround.

Still, the content is good. I may not agree with the opinion of everyone who writes for it. For example, I don’t think “gamer” refers only to people who play games exclusive to everything else, and I don’t think that definition is as commonly understood to be the case, as claimed by one author. I also don’t think that games should be considered “crack-like” and “addictive”, as the article on Greg Gorden described them. But it is refreshing to read an entire magazine that discusses the topics in a mature manner that I’ve generally found exclusive to blogs.

It’s also quite informative, as Max Steele’s article on mobile gaming in the 2nd issue shows. Being American and fairly isolated from international news in general, I didn’t know that the N-Gage had sold so well in the rest of the world, but Steele’s article touched on that platform while talking about the upcoming Mobile Platform Wars between Sony, Nintendo, and Nokia. Until then, I didn’t even know Nokia was involved! And the article also described who each company is targeting. I don’t know if Nintendo will end up the clear winner and I don’t know if I agree that Sony’s system will be disgarded as just more-of-the-same-but-smaller. I also don’t know if anyone likes reading an author talk about himself in the third person. But it was definitely a high quality article that made good arguments. A different article in the same issue focused on that video feature for the PSP while another complained about the loooooong load times for it, so there was plenty of depth and breadth to the magazine.

The Escapist is definitely staying in my RSS feeds, although I wish that the website version wouldn’t be so badly “ported” from the PDF. At the very least make the text larger. Ideally, the web version should be made for the web.

Game Design Games Geek / Technical

Game Rules Are In Fluxx

I’m always trying to learn about new game mechanics, so when I discovered the game Fluxx by Wunderland, it was more than just fun. It got me thinking.

Fluxx is a card game in which the rules change as you play. Some people might be familiar with the game of Mao: the rules are secret, and part of the fun is figuring out what those rules are. Unfortunately it requires one or two people in the game to already know the rules, and there are apparently many variations on the game depending on the college campus you went to when you learned about it. Fluxx, on the other hand, is very specific. Everything is out for everyone to see, and so rule changes are always disclosed. Naturally, it is much easier to pick up the game after only a few hands.

Even though the rules change as you play, it isn’t difficult or confusing. In the beginning, you have three cards, and you must draw one card from the pile and then play one card from your hand. That card you play can change the rules immediately. For example, you can play a “Draw 5” card, and now each player must draw five cards and play one. The card “X = X + 1” means that you add 1 to any number. In this example game, playing this card will now require everyone to draw six and play two. Even the winning conditions can change as Goals are played or removed.

I thought this game would appeal mostly to technically inclined people, since it seemed like a programming game based on if statements. Apparently everyone, including children, gets into this game easily.

I think that there are a few things going for this game. The interface is simple. It’s a card game, and everyone knows how to play card games. The rules are simple. Just follow what it says on the table at any given moment. It is easy to handle the complexity. Some rules supersede others. Others simply change existing rules. And each card tells you exactly what you need to do. No need to go to the instruction booklet just to find out what it means to draw the “X = X + 1” or “Let’s Simplify” cards.

What can I apply to making video games? Well, for one, an easy to use interface isn’t just a suggestion. It’s necessary! As Xemu has said, the interface IS the game. If Fluxx made it difficult to follow or make the changes, it would feel more like work than like play. There are definitely elements of video games that feel like work, such as jumping puzzles. Video games should be as easy to pick up and play, or if that is not possible for some reason, they should at least make it easy for the player to figure out what they have to do. Fluxx has the equivalent of context-sensitive help screens, and games such as Super Mario RPG or The Sims are perfect examples that used them nicely.

Another thing to take away from Fluxx is the idea of modifiers and rule changes during the course of play. Imagine playing a sidescroller and then hitting a spot where the gravity is reversed or a different force is in effect. It will likely change the way you play that game or at least move about. Maybe an enemy will only be revealed when the wind tunnel is on, or perhaps you can only find an item when X-Ray vision is available. While it is normal for an item to have a simple effect, such as a bullet killing an enemy, perhaps rules that have a wide effect make for interesting gameplay? If all players on a server now have attacks with 50x the force due to some muscle-enhancing gas in the level, it will definitely change the way the game is played. Even if only one player is affected, it can be interesting and fun.

Sure there are power-ups, and none of what I am talking about is really all that new in video games. Games make use of these techniques more or less all the time. For example, speeding up, slowing down, and/or stopping time for all entities in the game are used in Prince of Persia: Sands of Time, Viewtiful Joe, and Max Payne. Quad damage in Quake 3 is another example. In Super Smash Bros. Melee, one of the pokemon will make the screen go dark for a few seconds, naturally affecting all players.

I simply want to be consciously aware of such generalized mechanics. Changing the rules and goals sounds like something that could make an otherwise bland game into something interesting and, as seen in Fluxx, can actually BE the entire game.

Geek / Technical Marketing/Business

FOSS Innovations

I’ve been reading different news articles about Free and Open Source software. I’ve also read articles that both praise and denounce FOSS. I’ve participated in flame wars and civil discussions about the merits of FOSS.

One argument I’ve seen appear countless times is that FOSS can only mimic the features of existing commercial software. The idea is that with commercial software, there is a profit motive, so innovation occurs. FOSS, without a profit motive, can only aspire to do what other existing packages do. Essentially, people are arguing that FOSS can only copy commercial software features.

There are a few problems with this argument that I can see, and I don’t mean to talk about one-off theoreticals like, “Well a person COULD release a new feature under the GPL”.

One, the way this argument is formed implies that FOSS and commercial software are mutually exclusive. When this argument comes up, no one ever clarifies what they mean by “commercial” software. It is just assumed by all parties involved in the argument/discussion that commercial software is proprietary software that you sell. This assumption and the wording of the argument (FOSS vs commercial) leads to the conclusion that FOSS is the software you don’t sell. This assumption furthers the idea that FOSS can only be free as in beer.

To make this idea clear (or not, since I always make bad examples), imagine if I asked you, “Do you want to buy this bottle of safe purified drinking water or drink from that spring over there?” The way I worded that question would imply that the spring water is not safe. It may or may not be safe, but by asking that question in that way, I’ve pretty much made up your mind, haven’t I? At the very least, you now have a doubt about the safety of that spring water. Now imagine that instead of talking about the water directly I discuss a side effect. “You can only grow tomatoes in safe water.” What happened? I’m still implying that the water from the spring is unsafe compared to the purified water. After all, I explicitly mention that the purified water is safe, so the spring water must not be safe, especially as you can’t grow tomatoes with it. Only this time you aren’t being asked about the safety of the water. You are being asked about growing tomatoes, and if you just argue about the ability to grow tomatoes, you implicitly agree that the spring water is unsafe while the purified water is safe. It may be that the spring water is also very pure and also very safe, but you’ve accepted that it is completely different from water that is safe by assuming a clear distinction. Crafty, eh? And maybe contrived…

Two, and related to the first point, the argument mentions the profit motive as if it was exclusive to “commercial” software as opposed to FOSS. Since it is possible to have commercial FOSS, FOSS can also be developed with a profit motive. If by “commercial” they instead meant “proprietary”, I still don’t understand how keeping the source secret inherently makes it more innovative than FOSS.

Still, I’ve thought about it. The Free Software Foundation wasn’t formed to create innovative software. It was formed to make it possible to use Free software with a Free operating system. Innovation wasn’t the purpose at all. Somehow this weird debate about the innovation from FOSS vs commercial software came up from others. Almost always, the question gets posed by someone who is against FOSS, and of course this situation pushes the idea that FOSS advocates insist that FOSS is more innovative that proprietary software.

It’s a confusing mess. One the one hand, you want to argue about the merits of FOSS or proprietary software. On the other hand, arguing simply makes people think you accept their assumption about commercial software vs FOSS. And if you argue to point out the assumption, you lose people who find your “meta arguments” pointless.

Anyway, I believe that innovation isn’t exclusive to proprietary software. I also believe that FOSS can be commercial. Heck, my business will depend on it to be the case!

But just saying so isn’t good enough. After all, Microsoft and other companies have been doing a good job perpetuating the idea that FOSS is communist (implying all sorts of evils by doing so) and that “commercial” (implying FOSS can’t be commercial) software provides true innovation. I think it would be interesting to see if a list of FOSS innovations could be made. Of course, innovation isn’t necessarily originality, and Microsoft’s marketing show that it is apparently innovative to make their OS more secure than previous iterations.

Still, a list of FOSS innovations would be nice to have. What did FOSS developers do before proprietary developers “copied” from them? I proposed making this list as a project for the DePaul Linux Community. I’ll take it on myself if there is a lack of interest there.

Of course, when a study or three say so, it only lends more credibility the idea that FOSS promotes innovation. And one innovation I use everyday without thinking about it: Firefox Live Bookmarks. Add one to the list…