My primary project lately has been the design and implementation of a mission for Call of Duty 4. The mission is called "Escape" and it places the player in the position of waking up in a holding cell within an enemy-controlled building. The door to the cell has been left open and a silenced USP pistol has been left on the dresser. From there on out, the player simply has to escape the city as a war wages around him. Once I got comfortable with the development tools and realized what kind of scope I wanted to shoot for, I drew up a basic level sketch in SketchUp:
When I started working on the mission, I knew I wanted the first gameplay segment to be a sort of "stealth" segment; the player is unexpectedly let loose in an enemy-held building, so it made sense to allow him the element of surprise. Once the player passed through the two stories of this building into the streets of the city, then the mission would get more intense pretty quickly (especially as a siren will ring out once the player makes it out into the open or makes too much noise escaping the building). At this point, the player's progression through the city uses a large communications tower as a visual anchor amidst the cityscape. The assumption for getting to the communications tower, in this case, is that the player was part of squad of soldiers tasked with taking the communications building and that getting there was his best course of action.
Coming off of a bunch of level work with Unreal Tournament 3 (I released an alpha of DM-Artifact a couple weeks ago), I was looking forward to getting used to a game toolset that was geared towards single-player design. I loved Call of Duty 4 something fierce, so when I first found out that Infinity Ward released the game SDK (allowing for map-making with CoD4Radiant and scripting) I was kind of confused as to why I haven't heard anything about people utilizing it for single-player mission and levels and such. I figured there wasn't much of an interest in making custom single-player content for PC games outside of Epic's crazy mod community. And, while that may be a great deal of it, the main problem with the Call of Duty 4/5 toolset -- coming from a crazy amount of resources with Unreal Editor 3 and its amazing community -- is the lack of much documentation or a community presence. The Infinity Ward Wiki was a good resource for about an hour's worth of introductory material (with no screen shots, which were pretty heavily relied on by the text), its scripting resources as far as single-player AI, enemy spawning, and so on are non-existent. A few days later I found Treyarch's Wiki for creating content and missions for Call of Duty: World at War which, thankfully, shared a lot of the same principles and ideas as Call of Duty 4. Unfortunately, though, while important topics such as color groups are covered, the reinforcing of color groups is left with an incredibly mean tease.
And to compare scripting in UnrealEd versus scripting with Call of Duty 4 (granted, one makes a light bulb flicker and the other is guiding the entire flow of a level, but let's not split hairs here):
Despite all that, though, I really enjoy working with the Call of Duty 4 toolset once I'm able to put some facts and processes together on my own. And I manged to get some surprisingly decent work done on the first two legs of gameplay in "Escape." The Call of Duty 4 desktop screen shot on the right (above) actually shows the level as it exists in the editor now, and here are some stills. As a note, I am focusing on general design and shelling of the level right now so while there are objects in these rooms, they are all objects relating to gameplay. I won't make a proper detailing pass of the level until I have the whole thing "finished" as far as its gameplay is concerned. This is a verbose way of saying that things are kind of ugly right now.
And here's a bit of gameplay footage from the first few minutes of "Escape" (which I couldn't seem to embed into this entry): ">CoD4 Escape - First Two Gameplay Segments.