Quake2 | |
Quake was the game that gave Quake done Quick our name, but Quake2 is fair game too. |
ReleasesWe have so far made one Quake2 release, a first-person perspective version of our first complete Quake2 speed-run, Quake2 done Quick2. HistoryOur Quake2 speed-running had a very painful birth. For a long time eager visitors to this page were greeted with a list of apologies for delays and explanations of the complications. If you're feeling nostalgic, or curious about the intricacies of Quake2 running, you can refer to the archived material from this page. |
Our plans for a Quake2 runThe reason this project is taking so longQuake2 was released in December 1997, and QdQ started planning a speed-run through it straight away. So why hasn't anything been released yet? (As I write, it is May 1999.) Skip to the conclusions if you don't want to listen to us apologise and moan, and would just like to know when the thing is likely to be done. Changing physicsThe first problem was the instability of the game itself. Quake2 underwent many version changes for the period following its release. New versions of the game aren't necessarily important to us. For example, Quake1 has had a few updates, but these have been irrelevant for our releases because they did not affect the gameplay found in the original levels. However, the changes made to Quake2 have regularly affected the physics of the game. This meant that the routes and times that are possible are not consistent across the different versions. QdQ decided to wait for id to finish work on the game and release a stable version before beginning proper recording, since otherwise all our work would become outdated. The game physics finally stabilised when v3.16 was released. There have been further updates through to the current v3.20, but these have not affected physics, and we are optimistic that there will be no further changes. No sourceWe record our runs level-by-level and then put the resulting demos together in continuity to produce our final finished runs. To do this, we need to write special recording utilities. For Quake1 we used the game mod QdQstats. For Quake2, we use something similar, q2timer.
Unfortunately, we needed the Source for v3.20 turned up in December 1998, one full year after the release of Quake2. Until this point we were waiting for materials from other people before we could properly begin the project. After this, any delays have been down to us alone. Hub system and new technologyThe hub or unit system found in Quake2 greatly complicates the recording of a continuous run in piecemeal fashion. In particular, when one returns to a level that one has already visited, one needs to find things in a state consistent with how they were when one exited previously. This was difficult to deal with, which delayed q2timer. Also, in Quake2, continuity is precise all the way through the game. If we improve a recording of an early section, the game continuity will be slightly changed, and so all existing following recordings have to be modified to take these changes into account. We faced the same sort of challenge in Quake1. But there, every so often your stats are reset to some default values. (At the start of every level, health is reset to be between 50 and 100, and at the start of every episode all stats are completely reset.) As a result, we were just about able to deal with the problems by post-processing demos. However, the route that id intended a player should take through Quake2 has around sixty individual sections, and continuity has to be precise across all of them. The only way to maintain reuseability of existing Quake2 recordings in the face of improvements to earlier parts of the Q2dQ2 run is to log extra information about item collection and use at the time the recordings are made with q2timer, and then process this information later to cope with improvements. We are very pleased to say that this system seems to work - but it was very tough to implement! Q2timer reached a useable state in February 1999, and our other tools began to ripen by around April. This necessarily slow technology development rate delayed the project a great deal. Quake2 running politicsSince the above delays also prevented much Quake2 speed-running from occurring, enthusiasm for and talent at Quake2 running took rather a long time to emerge. Without effective runners, the project slept. There has also been a lot of debate about the issue of strafe-jumping (known as bunny-hopping by QdQ.) The original Quake1 runs QdQ, QdQr and QdQlite were all recorded without the use of this speed-up trick. It was only later in the life of Quake1 speed-running that it began to become useful. Opinion is still divided over whether or not it adds to the enjoyment of watching speed-runs, though. The effect of strafe-jumping in Quake2 is much more troublesome. It has a much more pronounced effect, and seems to be very much framerate dependent. Even at this stage, differences in the quality of people's systems will mean that they are able to take different advantage of strafe-jumps in speed-running. This unfairness would make life difficult for Q2dQ2 since only the players with the best machines could record the fastest times, and those with less good machines would have little incentive to contribute to recording. Yet without their contribution and inspiration, the project would be much the worse. To deal with these concerns, QdQ decided to restrict the use of bunny-hops for Q2dQ2. We bunny-hop only when it is necessary for us to perform a particular trick, not just to maximise overall velocity. This is an arbitrary restriction, but it was arrived at fairly and carefully. A later run when machines are faster may well allow bunny-hops. We hope Quake2 speed-running can thus evolve smoothly as Quake1 running did, with bunny-hops becoming important only as skills and machines improve. ConclusionsAll of the above added up to a lot of delay, for which we apologise. We apologise further for those parts of the delay which were as a result of us having lives and thus not being able to give full attention to the project every hour of the day. Don't read that as me being sarcastic, by the way. The commitments we make as QdQ really are very important to us! Real life is often an annoying distraction. The great news is that the end is in sight. Proper work on Q2dQ2 recommenced at the end of March 1999. As I write this two months later, we are completing the recording of the eighth of the ten units of the game, and are hoping to have our first complete run recorded within the next few weeks. At this stage, the time is expected to be around twenty minutes. This will just be a collection of speed-run demos, of course, and not a movie. We still have to make a formal decision in what to release and when - but I suspect we will be keen to make stuff available in some form as quickly as possible. You've all been patient for far too long!
Thanks, Older materialThe stuff below is outdated and almost certainly includes information that is now wrong. Still, I've kept it published for the sake of historical context. (Anthony, May 1999.) We're certainly looking forward to making a speed-run of Quake2. You can be sure that Quake2 done Quick2 will come to be. The main routes and tricks have been planned, although doubtless they'll be tweaked and improved a lot once recording begins. (If you want to get involved in this project, please see our projects page for details on how to go about doing that.) So, why haven't we recorded anything yet? Well... there are one or two technical complications. Here are the issues that have led to the delay, and also some others regarding further decisions that the QdQ group have made about Q2dQ2. Physics in fluxWith Quake, we were actually more fortunate than we ever knew. id Software released a few versions of the game to address a few bugs and include new features for the mission-packs, but these changes were relatively infrequent. Basically, we just have the release version Quake v1.01, the updated v1.06, and then v1.07 for Mission Pack #1 and v1.08 for Mission Pack #2. The important fact about these versions is this: the physics of the game remained unchanged throughout. If you could use some trick or bring off some neat move in one version, you could do the same in the other versions. From a physics point of view then, they are all the same game. However, the game physics and universe in Quake2 have been different in different versions. Our choice was to wait for things to stabilise; it took far longer than we expected it too when we made this decision, but since a different game physics basically means one is playing a different game, we felt, and still feel, that we need this stability in order to make a valid run. We believe that the latest versions of the game (from around v3.16 on) give us the stability we require, just about. Here's a brief history. (This used to be a short document, you know. :) ) The first few changes up to and including v3.14 have included map bug fixes, the removal of the "jump on landing" trick, changes to the rules about how many power-ups can be carried at one time, and some fixes to the client-server architecture that affect the speeds that one runs at. These various versions of Quake2 are similar, but they can't quite be regarded as the same game. Therefore any deviation from the agreed-upon standard can't be acceptable as a recording for the Q2dQ2 run, and we won't count them as "comparable." It's a shame to have to be picky about this, but the devil hides in the details, and we want to be sure there is a level playing field. We would advise others running speed-running challenges to pay attention to these issues as well. As of v3.14, we were down to two complications. One was a slightly freaky physics that allows one to reach higher than normal speeds with tricks such as bunny-hopping. The use of this trick in Q2 speed-running is controversial, and has been the cause of much debate: should a "silly" or an "ugly" trick that works be disallowed?
The other complication is that when the client framerate drops below
the 10fps that the server expects, the movement physics break. The
most noticeable effect is a big increase in player speed. At the
default minimum framerate of 5fps, the player velocity is twice what
it is normally. This phenomena is obviously easily abused, and can
cause problems even when one wants to record an honest run. Fortunately,
v3.14 provided a console variable Zoid made various further changes to the player movement for the v3.15 release. These included the addition of QW-style control-in-the-air. In the course of implementing this, he also fixed the bug that allowed tricks such as bunny-hopping, and there were great sighs of relief all round.
But alas, another less pleasant change was also made. The
However, a fix for the problem at the So, why the current delay? We will use Nolan Pflug's q2timer patch
There's no displayed timer in Quake2, and no finishing times are
displayed when one completes a level. However, time is measured within
the game the same as normal. A simple DLL patch can be used to record
and display the times that runs take. We hope that it can become a
"standard" patch that anyone wanting to speed-run can incorporate into
their own game DLL.
The problem is that one needs game.dll source
code in order to update
We are working on routes and tricks currently, so we will be able to
start recording a first run as soon as the source and hence the
modified Q2dQ2
will be recorded on HARD skill (
|