Weekly Penguin
February 17th, 2011
Making of TAGAP 2

Co-op campaign

Like I wrote last time, I'm now hard at work on the co-op version of the campaign. I've gone through all the levels now, meaning we have the very first draft of the entire co-op campaign – and in turn the first almost-feature-complete version of the entire game! But remember though, this is the 'first draft' of the co-op; We'll have to get together with Petja and spend a day or two extensively testing it to ensure we're on the right track.

So, everyone is asking; When does TAGAP2 come out? Patience, I'm fairly certain we can lock down the date very soon, we just have to do a full co-op playthrough to see if we're on the right track with the multiplayer campaign. If we are, then we can indeed set a date. Exciting!

From solo to co-op; The process

Since I've already received a couple of inquiries about why and how we are creating this separate level set for co-op even though it's basically the same campaign with a buddy, I decided to a small break from it all and explain the process a bit.

The actual conversion starts, simply enough, with a quick, cheat-assisted play-through of the original level in split screen. At this point I don't need the other player, so I just leave Pedro standing with Immortality turned on and run through the segment as Pablo. While playing, I keep Alt-Tabbing between Win32Pad (advanced Notepad) and TAGAP2, logging down everything that needs tweaking.

Once these modifications have been listed as bullet points, I systematically go through them one by one in the level editor – and if the need arises, create completely new assets, level blocks or entities to suit the modifications.

What is changed at this point?

Perhaps the biggest thing to modify is a direct result from the split screen. Not so much a technical, but gameplay effect; Since the screen is split into two horizontal views, the screens are half their original height. This means everything important that is high up in the original design has to be brought down 150-or-so pixels for the players to be able to see or react to them. Some times I can do this just by reconfiguring the level geometry and textures, other times I have to recreate entire entities to do it.

One example of this are the rocket launcher rockhoppers on the dock cranes we showcased in our very first screenshots. They were too high up to see, let alone react when they started bombarding the player with rockets. The crane itself being an entity based object, I had to re-create the entities with a much shorter base mount sprite and reconfigure the section accordingly.

Another thing is the scripting. TAGAP2 features plenty of scripted scenes – not in Half-Life way, more in vein of Duke 3D – and these scenes were all originally designed for one player only. Some of them funnel player towards a boss fight, some just showcase something important (i.e. an entryway opening after hitting a switch). All of these have to be double and triple checked so that the 'other' player never gets jammed behind boss area doors or doesn't trip multiple conflicting scripts at once.

One part, which is half about scripting mentioned above, is making sure players are together when they need to be. This takes everything from creative scripting to exploiting level designs and implementing new two-player flip switches. But this doesn't mean you'll have to go back to back at all times, a couple of levels have multiple tasks for you to accomplish before proceeding, meaning players can split up and – possibly – complete the whole level twice as fast. You see, within a level there is no digital limit how far off you can wonder, only your skills and arsenal against the intensified co-op onslaught.

The testing ground

Once all these changes have been made, I go through the level again at least twice, in solo. First as Pablo, then as Pedro, switching between controllers when the need arises. And of course with Immortality cheat. If no enormous scripting glitches emerge, I mark it as 'to-be-tested' and go on.

Next phase happens when me and Petja get together and play these levels proper for the first time. Again, every issue we encounter gets marked down in to-do list. I then tackle the to-do list, mark the level 'to-be-tested' again. Then we play it again. And if there are still issues old or new, the hassle continues until the kinks have been ironed out. Then and only then the level gets marked down as 'done'.

But is it even necessary? Can't we just throw two players in and call it a day?

We could, but it would hurt the experience severely. Seriously, this approach almost never works, since there's always something that breaks the game flow, separates the players permanently or something like that. We love co-op games and we love single player games – and we don't want to mess up either aspect of TAGAP2 while knowing we could have done better.

Why didn't we design everything for co-op in the first place?

Because it would've hurt the single player campaign. A lot of stuff needed for co-op (multi-player switches etc.) would seem out-of-place and unnecessary in single player unless we added AI-controlled buddy. However, our AI isn't even nearly fit for such task, so we won't even try. I've played through far too many games past few years that tried to do just that and felt forced, so I don't want to see TAGAP 2 ending up in the same category.

What else is going on with TAGAP?

Petja is hard at work mixing the in-game soundtrack and composing the cinematic score – and both sound great. Having listened to some of the soundtrack in MIDI-esque demo form for a couple of years, it is thrilling to hear them coming together as final mixes. Especially Primo's theme sounds so good I have to resist the urge to artificially lengthen the Primo fights just so you could listen to his anthem more.

Right now I'm writing the 'co-op game over' sequence, after which I finally begin to draft out our extra content. Jukebox and art galleries will be there again and I have to start to sort out how much stuff we'll actually feature this time around.

But oh my how time flies!

Until next time,

Jouni Lahtinen, the head penguin