Archive

Posts Tagged ‘evasion’

Red Faction: Guerrilla

March 21, 2010 Leave a comment

Problem: Conflicts self-escalate and self-perpetuate

Here’s a situation. You’re heading towards an objective, and you pass by one of the EDF Supply Crates that you’re supposed to destroy. You saunter over and take a swing at it with your sledgehammer. A trooper across the street sees you destroying their property, and starts firing. As you take cover, a car pulls up, and several guerillas jump out to ‘assist’ you. They kill the trooper. More troopers show up. They kill more. Pretty soon, the EDF is at red alert, there’s APCs climbing over each other and gunships sniping you from above, and there’s no hope of actually reaching your objective – all because you decided to take a swing at an optional target.

It’s even worse if you start shooting back. The EDF has an unending supply of troops, and as soon as you shoot one of them, they all seem to know where you are. This means that, despite the game’s title, guerrilla tactics don’t work – if you want to ‘hit and run,’ the only place you can run to is your safehouse, a minute or two away…and it’s likely that the EDF will respawn by the time you get back.

It’s not entirely uncommon in open-world games, since destroying cops rightfully tends to attract the attention of more cops. However, Red Faction: Guerrilla has two design choices that aggravate the problem. First, if the area supports you, guerrillas will arrive and fight with you during combat. That’s really cool, except that there’s no way to let the Red Faction know when to knock it off and disengage. Second, there’s no Pay n’ Spray (from the GTA series) or equivalent to allow the player to escape pursuit or lose their alert level. They can retreat to a safehouse, but there are only a handful of those scattered across the entire game world.

Solution 1: Add ‘disengage’ logic to guerrilla AI

With a few tweaks to their AI, the guerrillas can be helpful to an escaping player, rather than dragging them into further conflicts.

First, we need a way to identify when the player is attempting to evade instead of fight. It doesn’t need to be a very complicated system, though. Just keep a hidden numerical variable to track the player’s attitude. Once per second: +1 if the player doesn’t fire a weapon. +1 if they don’t cause any damage. +1 if they’re sprinting. +1 if they don’t take any damage. +3 if no enemy units have line of sight. -3 if the player fires a weapon. -5 if they cause damage. -1 if they take damage. -50 every time the alert level increases. If the number gets to 50 or above, the player is considered to be evading, rather than fighting. If they take actions to lower their number again, their status can change back to fighting.

If the player is evading, their guerrilla allies attempt to help them escape. They stop trying to kill the EDF, and start laying down suppressive fire, moving away from the battlefield, and looking for vehicles to escape in. As they disengage, the EDF assumes they’ve won the conflict, and the alert level drops rapidly.

If the player is evading and on foot, running away from the conflict, they will get a radio message that a prepared vehicle is being sent for them. Shortly thereafter, a vehicle will pull up nearby. If the player takes this vehicle and avoids any illegal behavior for a short while, their alert level will drop. (The vehicle is nondescript, radar-camouflaged, a diplomatic vehicle…any explanation is just as good as another.) This ‘pull-up-and-leave-a-vehicle’ behavior already exists in the game, so the only change that needs to be made is causing the vehicle to affect the player’s alert level.

Solution 2: Create stealth abilities the player can purchase and use

Another way to allow the player to escape is to give them more control over escaping from a conflict.

In Red Faction: Guerrilla, the player has an NPC ally, Samanya, who offers them weapon and item upgrades in exchange for salvage (currency). As an armor upgrade, Sam will offer stealth upgrades to the player’s heavy Martian coat. The player would activate these abilities by holding down the Crouch button (L3 on PS3), and the abilities would last until they draw a weapon or take damage. They can use their stealth as much as they want, although high-tech stealth solutions have a cooldown time before they can be used again. Red Faction: Guerrilla is still an action game, not stealth action, so the player shouldn’t be able to rely on stealth for offense too often.

At the beginning of the game, all the player can do is turn up their collar, hide their weapon, and try to look nonchalant. Even this can be helpful for disappearing into a crowd.

1/4 way through the game, Samanya offers the player a quick-change coat, which can rapidly be turned inside out or otherwise modified to appear as a different style of clothing.

1/2 way through the game, the player can purchase automatic camouflage, similar to Old Snake in Metal Gear Solid 4. If they crouch and move slowly, their coat will automatically change color to match the closest surface. This makes long-range attackers, especially gunships, much less likely to notice and attack the player, and allows the player to attempt evasion even with no civilians nearby.

3/4 way through the game, true invisibility becomes available. The invisibility cloak only lasts for a few seconds and has a recharge time, but it allows the player to move to a different hiding spot, climb in a vehicle unnoticed, or slip past an EDF blockade.

None of these items offer a perfect escape from a conflict, but they all allow a player to have more control over their attempt to escape. They’ll also promote more guerrilla tactics, where a player can strike at the EDF then disappear into the crowd, without being drawn into an extended conflict.