My Rants

Here are some of my rants, previously hosted as a column on peej'n'frib's. 3 brilliant episodes await the reader, on retrogaming & doom, on mapophobia and the end of quake, and on map editing & unrealed.

Retrogaming ... & Doom!
I've always dispised retrogaming. To me, retrogamers are people that are fooling themselves. The the fact that they talk about old games as if they are the best ever created is because they remember how they experienced them back then, and since then their rosy memories have only become rosier. If they would play the game now the only reason they would enjoy it is because it revives those precious memories, if at all. They certainly wouldn't enjoy a similar old 2d game, as it can't compete with a game like Quake today, simple as that. I always laugh at retrogamers, trying to piss them off by statements such as "if it doesn't have polygons, it sucks". And I know I am right.

Or am I? because lately, I have been victim of this very phenomenon. I have become a retrogamer. In the days where gamers are hastily trying to decide which game is better, Q3 or UT, I have been playing tons of Doom & Doom2 megawads. I've always had rosy memories about Doom, but for quite a while I shoved them out the window because I knew Quake and friends are superior, and those memories of Doom I had is exactly the kind of thing that fools retrogamers.

But then, largely thanks to the new wave of sourceports that let me play Doom in GL, with mouselook and all those other tricks I have become used to because of Quake, I got into it again. And being wary of psychological effects of retrogaming, I had a good comparison: I had just been playing Half Life, by many heralded as the best single player experience in ages. Directly after HL I played a Doom2 megawad (called requiem) which for some reason I had never played before... and while I was halfway that megawad the observation struck me: wow, this is actually more fun than HL. There I was, staring at a bunch of pizelated sprites of the monsters I just mowed down, in a room constructed in 2d of about 10 to 15 lines, with low res textures on the wall which didn't fit together. And it had me drawn into the game to a degree which HL's cleverly scripted in-game sequences hadn't been able to do. Weird. Very Weird.

So am I a retogamer? Probably. Some of those doom maps are downright ugly by todays standards, and you can only really appreciate them if you dig the original Doom atmosphere. But something in me wants to deny that this is purely retrogaming. For one, I had an honest comparison: I had just played a state of the art game which everyone will agree is top quality. And the wad I played I hadn't played before, so there was none of that "oh yes, I remember this room, it used to scare me shitless when this and that monster appeared" type of effect, so you could claim that it was so enyoyable because it is actually a great game, even by todays standards, not just in memory. Second, there is a more important technical issue: since games made the leap from 2d to 3d, differences between games haven't been all that big, and Doom is the first game in a line of games that are all equally capable of creating great gameplay. Sure, compare Q3 graphics in GL with Doom in software mode, and it looks like a world of difference, but do these graphical improvements really matter that much? It may be safe to say that compared to the jump from the old 2d side scrolling or top down jump & run or shooter games to doom2, we will never see a change as big again.

So while the polygon nuts are debating wether a game without volumetric fog will suck or not, let us retrogamers do a quick comparison of Doom and the more recent engines, Quake3 in particular. Because the question still looms, if there isn't all that much difference between Doom and Q3, then why bother with Doom? Q3 is still better in every way? Is it? It isn't?

We are all very familiar with Doom's biggest shortcoming: it can't have a room above another room. For the rest, it is a fully 3d game, the fact that it didn't have mouselook is not something fundamental about the doom engine (see the old Hexen game). Sprites were flat, but they were represented as 3d boxes in the world. Leaving out some silly details, Doom is pretty much a 3d engine, and its limitations, in single player anyway, are not that grave. The most interesting bit is where it is actually superior to the Q3 engine, and this is quite significant.

First, and most importantly, its visibility algorithm worked in 2d, not 3d. This makes it so much more efficient, that there are hardly any limits to level construction, Doom levels can be extremely open, and I don't just mean a couple of outside areas. In Doom maps you can often look through the whole map, whereas in Quake through to Q3 we have been burdened by things called "vis blockers" (u-bends, s-bends, t-bends in hallways) that we are all familiar with, and we are still far from getting rid of them (have a good look at q3test1 to see what I mean). This is why many Doom maps have these unique atmospheres, whereas in the Quake type games we are very surprised if we can catch some air from the neverending dungeons, and even then outside areas are merely big rooms.

A second feature we haven't seen since Doom, and which was the result of its own limitations is the amount of enemies you attack at once. As most people who have played Doom, especially on the harder levels, will remember, this adds tremendously to the excitement, and goes well with the open nature of the game. It is so very different from the dungeons "walk around a corner, kill one monster, walk around the next corner" type of gameplay. Some people thought that we would get this type of gameplay back as soon computers would improve in their geometry processing power, but sofar all we have seen is increase in complexity of the actual models, rather than having more of them onscreen.

A third feature which occurred to me recently is the ability of Doom maps to completely reshape themselves as play progresses. I have played many a map where I started in a certain room, and by the time I had killed all monsters and collected all keys, that area looked different beyond recognition: sectors had dropped to open up whole areas, and the connectivity was completely reorganized. There is no way you can do this in Q3, because it would completely ruin the static visibility computation Q3 relies on.

There are other things which are great about Doom, but here we enter the area of preference rather than technical superiority. Of course I'm referring to things like playerspeed and weapons.

So to conclude, what am I saying? To myself I say: Aard, you are not a retrogamer. You still hate 2d games with a passion. No 3d = no fun. To gamers I say: be a bit more openminded about games instead of dismissing them because they don't have this or that checkmark graphical feature, whose only effect on gameplay is making some pixels on screen look better. And to gamemakers and enginewriters I say: there are some very important features we have lost since Doom, and I want em back! Until major improvements are made in visibility models and other areas, progress hasn't necessarily meant we have been going forwards.

Now stop reading and go greet a group of imps with the business end of your double-barelled.


Mapophobia will kill Quake
In this update I will try to bring into perspective everything from custom maps to the competitive quake scene to Q3/UT, but first A little introduction. Don't worry, it gets more to the point later on.

Given that a mapper generally only needs his map editor to be having fun, what is the single biggest thing that bothers him? It the phenomenon which I tend to summarize in the word "mapophobia". The striking contrast between the insanely high quality maps him and his buddies produce in quantity, and an arbitrary list of (populated) quake dm servers showing 95% of maps as DM1-6, 3 years after the game came out. To mappers, this discrepancy is maddening, and even more so if you hear closeminded comments of dm players as to why this is so.

There is a huge list I could give as reasons people give why they don't want to play custom maps, and most of them sound utterly lame to use mappers. What we mappers have to understand is that players, especially the more competitive ones (clan players) play quake with a very different perspective than we do. They live for the frag, and to prove themselves superior to their mates. This is very basic but also very true. On which map they do this is pretty much irrelevant to them, their only consideration is that a known map will make things easier for them, as lot of thinking that is required for navigation and tactics is not needed. Playing id maps relieves them from insecurity, and frees their brain to focus on one thing: fragging and being better than the rest. Given that these are their requirements, you can't blame them for sticking to id maps, they see us mappers as annoying people that try to force them into something they don't want or need.

Part of the reason why these players are extra stubborn in even trying new maps is that the damage has been done in the past. Many of these players that have been playing for ages remember custom maps from way back when some very bad examples were present on ffa servers and even in teamplay leagues, and basically resulted in lame spam/camp fests, people getting stuck etc., and they still regard custom maps this way. Nowadays with quake said to be dying, there is even less a reason for people to experiment.

So are these people truely impartial to maps, and can they play dm4 & dm3 forever? Not really, and this is where things get interesting.

We all know that the hardcore quake community skipped Q2 because it sucked, but now Q3 and UT are on the horizon, its a very different situation. The number of good quake players declaring that they are bored with quake and are actively looking into which of Q3 or UT will get their vote is staggering. Whereas quake was actually at its high point after Q2 was released, with Q3 the damage is going to be substantial to a point that the quake community will shrink to Doom2 proportions soon.

So even though quake players say DM3 is all they need, unconsciously they crave for something fresh. But what exactly do they want?

Are they screaming out for a new 3d engine? hardly. for what they do, the old quake engine is good enough. Curves look cute, but no big deal over simulated ones. They hardly care for 24bit colour I would think. And quakeworld still has the best network code of any game on the planet at this present time.

Do they want new weapons, new physics, or gameplay? Please no! Anyone who followed the various websites will know this is the last thing they want. They want a RL and LG just like quake. They want quake aircontrol and speed. Gameplay wise they want... quake!

So if you strip engine & gameplay from Q3/UT, what new stuff are you left with? TEXTURES AND MAPS! You can argue with my reasoning all you want, but to me this is the stunning truth: the same players that have gone to great lengths to avoid to have to play custom maps in quake are now LEAVING quake because they want fresh new maps! Imagine a top selection of the latest custom maps played as the standard maps on all servers and leagues, most of which are dressed up in textures which are utterly different from what you find in quake.wad. This could be exactly the game they want, but at the same time its something they won't ever consider. I've discussed this topic with some more open minded top players in the UK and they agree this would be absolutely brilliant, yet the chances of this happening are NULL.

I think this observation is the climax of the sad relation between mapper and player, and it will kill the best DM game on this planet Real Soon Now, with nothing we can do. And it will happen again and again, especially with the enormous number of maps Q3 will ship with.

UnrealEd, and different ways of creating game worlds
We were talking about this topic in irc recently, and because many people are unfamiliar with the way unrealed differs from say quake & doom, someone said "why don't you go explain this in your column?". So here goes.

Quake editors allow you to create worlds using just one mechanism: solids, convex 3d geometric shapes such as cubes and cylinders also known as brushes. A quake world starts as an empty space, which you then fill with brushes. A slight problem with this is that this would be extremely wasteful, as unless a brush is floating in the middle of a room, it will not have all it surfaces visable. Infact, most brushes are used to construct walls & floors, and mostly have one or sometimes two surfaces visible. So while this way of constructing worlds is very simple, it also has a couple of distinct problems:

  • It requires a complex translation which goes from a set of brushes to just the polygons visible (in quake, qbsp does this). Removing faces of brushes that are not visible introduces additional work, as surfaces need to be cut up when they are partially visible or intersecting a face of another brush. The need for this complex translation also removes all hope of fast create - compile - test cycles between editor & game engine.
  • besides all solids which the mapper creates, qbsp also has to make solid those areas that have no entities in them, because these are the places it can safely remove brush faces from. Tracing a world for inside/outside is again a lengthy process, and one that can fail if the mapper makes only the smallest mistake in construction: this is know as the dreaded leak.
  • It makes a map look unnecesarily complex in the editor, and thus more difficult to manipulate. Think of it: of all those brushes on your screen, a large number of them are only need for 1 face, yet the editor will draw all 6 of them. People who have made complex maps know what this looks like in an editor.

From all this an obvious question arises: given that the engine wants two things from a map: a description of the world in terms of spaces (needed for collision detection, visibility, line of sight and all those things), and a bunch of triangles precisely wrapping that space, what is the ideal way for a mapper to specify those two?

This already hints at an approach: in the current engines, and probably for some time to come, we are essentially constructing spaces rather than solids, i.e. our maps look like bunches of areas (rooms, small outside areas) connected by smaller areas that block visibility (hallways, canyons, caves, tunnels). The ideal engine where we can just have a huge space and place arbitrary objects is still far of.

So could we create worlds using only spaces instead of solids? yes we can. Essentially this is what Doom and Descent used to do. Basic rooms are much easier to create as they require just one cube instead of six, you would never have leaks, and a map would be very easy to compile as the representation was very close to what the 3d engine needs to display it and let you navigate it. Sound ideal? it isn't. This way of editing has the opposite problem from brushes that creating something that looks solid is a lot harder to create. In Descent (Doom is not a good example since its spaces are allowed arbitrary shapes on the xy plane, and it allows nesting) creating one room requires one cube, putting a pillar in the middle requires 4 or 8. That is quite a step up. In contrast quake requires 6 cubes to get a single room, but adding that pillar only requires one more.

Especially in modern games that have plenty of detailed architecture, it is obvious that we need both: spaces to create the basic structure of maps, and solids to easily create detail and architecture that splits up a space. And this is exactly what unrealed offers.

In unrealed, the world starts out as a giant solid, much like doom & descent. To create your map you will need to carve some spaces out of this solid. Besides creating the world using spaces, you can also use solids. notice that these solids only make sense once you've made a space first, as the whole world is solid to start with. Carving (substracting) of a geometric shape is the most basic operation in unrealed, you could make a whole map using just this operation. making things solid again withing a space (add) however is the most convenient way to create many types of architectural detail.

Given that the engine wants us to create spaces because it can't handle arbitrary worlds, unrealeds way of doing it is arguable the best way to go, as it has the advantages of both approaches and none of the disadvantages. The only problems may be that you have to deal with two concepts rather than one. The actual implementation and user interface of unrealed confuses a lot of people, but that doesn't change the fact that the concept is still good.

A last thing which is interesting to mention is that, since we're talking about editors, how much of this is dependant on the engine? The answer is very little. One could make an editor for unreal that works with brushes only, it just means you'd throw away a lot of the infrastructure unreal already has, and you'd have to come up with a qbsp for unreal. Similarly one could make an editor that works with spaces and solids for quake type games, it just means having a new .map format, and a greatly simplified and faster qbsp. But again you would have to do a lot of work from scratch.