I took over Hangar Perimeter and Interior Hangar from original designer Bob Bettenberg after his departure from the company and was responsible for them through the remainder of development.
At the time I took over the level, the initial layout was in solid shape but the map needed a full visual pass. Bob's first pass made the best of the available content at the time, but in the time since artist Nichol Norman had knocked out a stellar new base texture set, which Corey Peters had already put to good use in the opening Air Defense levels. One of my first tasks was giving the level a proper visual and lighting pass in the new style.
Robert Bettenberg, Andrew Weldon
Andrew Weldon, Chad Bordwell, Pat Williams
I was also responsible for a majority of the AI scripting and combat in the shipped level. The level introduces both the Strogg Gunner and Marine shotgun, and while both reveals were placed a little awkwardly, Bob's tightly wound layout is a perfect fit for the shotgun and the Gunner made for a great end-of-level appearance and continued nailgun+grenade mayhem in the following Interior Hangar.
While this level stayed more intact than its elevated successor, the engine room at the center of this map was the subject of significant re-builds and re-designs before finally being left at a simple two-button "puzzle." The frequent revisions left the room a bit haphazard compared to its surroundings.
Another late addition to the map was the new folding bridge to link the second hangar through the large cavern to the end of the level; layout-wise this was a shoehorn addition, but I was pleased with the resulting combat featuring a brief shooting gallery finished with a Berserker charge. My biggest regret with this connection was losing the low ground entrance to the level's final room, weakening the position of the final Gunner in what had been a more intense showdown before.
Like Hangar Perimeter, I took over Interior Hangar from original designer Bob Bettenberg and was responsible for the level through the end of development. The level was in similar shape as the first Hangar level when I came aboard, with its layout generally intact but in need of a visual, scripting, and combat pass.
The original version of this level was considerably larger, with an additional floor above the current playable space. This area and its story objective were both trimmed out, leaving the level's primary objective at the destruction of the two hangar bays. Fortunately this was a fairly clean cut, and I was also able to easily re-purpose the elevator into the level's exit, which then connected back to the center of Hangar Perimeter's entrance room at the start of MCC Landing Site.
Robert Bettenberg, Andrew Weldon
Andrew Weldon, Jim Shepard, Chad Bordwell
The original combat pass to the level saw players move all the way to the central fuel tank area with Viper Squad, then return to the beginning of the level. This left players passing through the fuel tank area three separate times and doing a significant amount of backtracking. To remedy this, I pushed out the connection from the first room to the fuel tank area to incorporate what would become the "lights out" and turret sequence added by Jim Shepard.
Despite the cuts to the level, the fuel tank and hangar battles remained a fun combat area to put together. Players can choose to clear either hangar first, and I set up the central fuel tank combat to react to this by activating different AI tethers for incoming enemies depending on which hangar players are exiting.
MCC Landing Site bridges the gap between the Strogg Hangars and the first briefing aboard the Marines' command ship, the Hannibal. Most of the geometry of this level is merged from the levels preceding it and following it; the level starts with a non-combat section in the now Marine-controlled Hangar Perimeter, then transitions back to Air Defense Trenches (Corey Peters), which itself incorporates geometry from the level Convoy that follows (Mike Renner). Of the content unique to this level, I was responsible for building and scripting the encounter space under the Strogg air defense cannon, while Roger Cordes constructed the open terrain landing site at the end of the level.
Without the aid of any level streaming or layer tech in our toolset, the contiguous geometry crossing over 4 story missions gave us a complex challenge. We waited as long as possible to combine the geometry from the other levels, but once merged, any noteworthy geometric change to any shared space had to be manually propagated across levels. This became even more "interesting" in the late stages of the game, once the Xbox 360 and German SKUs were split into their own branches.
Andrew Weldon, Roger Cordes, Robert Bettenberg, Corey Peters, Mike Renner
Andrew Weldon, Jim Shepard
My main responsibility in addition to maintaining the combined level through release was scripting the trench combat and building out and scripting an expanded combat area leading to the cannon control room. In addition, I also helped script the big gun sequence and parts of the Hannibal's landing.
Both this level and Hangar Perimeter featured new weapons delivered to player; Hangar's shotgun was a much stronger workhorse for the duration of the game, but the grenade launcher featured here provided a much more entertaining first-use scenario. The confines of the opening trench battle provided ample space to bounce shells around corners, while the long corridors leading to the control room offered satisfying long-range lobs into targets, peppered with bonus exploding barrels.
My favorite scripting touch in this level was among its smallest - when in the Air Defense cannon, a small battle erupts in the trenches between the Strogg and three Marines. As the door explodes, the Strogg Marines ragdoll with directional physics impulses and the Marines in the trench each flinch according to their position and proximity to the blast.
Construction Site—ironically mostly void of construction in final form—is one of Quake 4's vehicle levels and features the Marine walker. Like the hover tank levels, this level was added to the game after a series of late cuts, and replaced and consolidated several shorter vehicle sections that had been spread across multiple other levels.
Despite some movement physics issues and struggles with the "vehicle-only" Hornet and Roller enemies, the walker boasted impressive firepower with its machinegun and rocket pod combo, and offered a satisfying means to mow through the game's normal ground units.
Ford Dye, Andrew Weldon, Roger Cordes
In addition to encounter design and scripting, my responsibilities included re-building much of the level for visuals and performance, with a particular eye to performance as we better learned how material-batched draw calls affected performance on the Xbox 360 renderer.
I was also responsible for adding the Harvester boss fight arena at the end of the level. The Harvester's ranged cannons were brutal against the slower walker on open ground, so I worked in some lower elevation crossed by elevated pipes to provide players with some obstacles and cover as they move through the area.
To make this final encounter space a bit more interesting, I made the overhead sections of each pipe destructible. This allowed players to absorb the Harvester's devastating rocket attack, but only once or twice. In addition, if a player tries to hide the walker into the small pocket between the pipes, I scripted the Harvester to directly target and destroy the nearest section of pipe itself. This opens its pathing into the lower section, highly encouraging players to get back into the fight before finding themselves in an unceremonious fish-in-a-barrel death.
Quake 4's final act features an assault on three towers that must all be activated to open the final assault on the Makron. These towers were among the oldest levels in the game, and needed a focused effort from the entire design team to be brought up to final quality. My primary assignment—in addition to some support and encounter design work on the second Data Processing level—was a final lighting pass on Data Storage Security.
Fellow designer Corey Peters had just completed his own lighting pass on the main Data Storage level. My first instinct was to emulate his settings for consistency, but lead designer Jim Hughes encouraged me to pursue a new lighting style that would be unique to this level.
Mike Renner
Andrew Weldon
Andrew Weldon, Roger Cordes
To play up the 'out of commission' feel for the first pass through the level, I picked a deep yellowish base tone highlighted with spinning red emergency lights and flashing yellow accent lights on the floor. To further ground the level's colors, I added a thin yellow ground fog to simulate haze illuminated by the floor lights, and also gave every piece of glass a subtle dark yellow tint that blended nicely with the texture's normal map and cubemap.
After players activate the TSD system, hundreds of entities needed to either be toggled or cross-faded to the new "powered on" style. The base lighting for each area was handled by building an in-editor array out of out of entiry targeting, fading out the yellow tones and then fading in the new blue lights, which were a separate set of placements. Visible object placements, on the other hand—the ground fog, glass tubes, and ground accent lights—needed to stay in-place, and were instead handled by a color crossfade set up in their shaders by Roger Cordes.
Once power was restored to the level, players discovered the strange caskets on the walls housed the mechanical floating banshee Iron Maidens, opening an intense battle back through the now powered-up level to escape.
My first venture into scripting started as a personal experiment and ended up as a general-purpose system that could be implemented in any level with no additional scripting. Designed for the Tetranode in Ken Banks' Nexus Hub level, the automated Repair Bot script creates a steady stream of ambient Repair Bots who randomly seek targets, perform actions, and move on.
Andrew Weldon
After launch, I used this script as the basis of an entity-based scripting tutorial⮺ included in the Quake 4 SDK documentation on idDevNet, which remains online thanks to an archival mirror at dhewm3.org⮺.
While I was working on Construction Site, I found myself wishing I had another tool in the encounter design toolbox. I set my eye on the Strogg Flyer, which had originally been planned as a functioning enemy, but its animated MD5 mesh was under-scaled and unusable. Other code and animation priorities kept the Strogg Flyer enemy grounded indefinitely.
With no code or art support scheduled, I created a functioning "enemy" out of the Strogg Flyer using a static mesh, splines, new projectile definitions, paper clips, and a couple packs of string cheese.
Andrew Weldon
I started with the correctly-scaled static mesh version of the Flyer (first seen in Interior Hangar), and scripted a set of them on a series of spline paths to fly strafing runs over the player in the walker. Next, I added a new projectile1 that I launched from positions attached to each wing. These projectiles are not homing projectiles, but at the moment they are fired select a target position extrapolated from the player's current movement vector, ensuring enough prediction to be dangerous if players don't move to evade.
I then coordinated with VFX artist Fred Hooper to turn the static Flyer mesh into a destructible object that broke apart into several physics-enabled meshes when destroyed. For the icing on the cake, I then did a little more vector math to spawn and instantly kill a Strogg Marine at the moment of destruction, and then launch its ragdoll with a physics impulse matching the appropximate vector of the Flyer as it was destroyed. It is incredibly satisfying to watch the ragdoll "pilot" come tumbling out of the explosion and thump to the ground at your feet.
After their initial use in Construction Site, the destructible Flyer "enemies" and my script were also utilized in Aqueducts and Tram Rail to add additional encounter variety to the limited palette available for the hover tank and mounted tram machine gun.
1 I will admit, in hindsight, that using the ~10k tri missile from the opening cinematic as the mesh for this projectile was... perhaps "not optimal." It sure looked great, though!
Another late-game addition was the Strogg Dropship. Unlike the Strogg Flyer before it, the dropship did come with a properly scaled mesh as well as landing and take off animations, but we needed a general-purpose delivery system.
Andrew Weldon
I worked up a script and entity template that allowed designers to implement the dropships with their own selection of enemies aboard. The only custom scripting required for this setup was triggering the spline movement path in and out of the area.