[This is the sixth in a series of exclusive guest blogs from the development team at Yakuza Studio on Binary Domain. Lead Programmer Takashi Atsu discusses the enemy’s artificial intelligence throughout the game’s campaign. Binary Domain will be out on February 28 on the PlayStation 3 and Xbox 360. Stay tuned to Destructoid for more guest blogs up to the release!]
Takashi Atsu – Lead Programmer
This week, we’d like to go into a little more detail about the enemy robots. Most of them are security robots under the Ministry of Home Affairs, and some are original robots developed by the AMADA Corporation. The ones that appear the most are the human-type robots, like the assault shooters that you’ll see at the beginning of the game. However, you’ll also encounter other types of robots, ones that look like beasts and others that are just gigantic enemies.
All of the enemies are robots, but with advanced AI that makes them capable of doing much more than just dashing towards you and attacking. They act tactically according to the situation, just like real-life humans. If their armour is destroyed, they’ll realize they’re in danger and they’ll take cover. If you hide for too long, they’ll throw grenades at you to flush you out from hiding.
Furthermore, the enemies are regulated to working in teams, so they’ll attack in formations according to the situation. While the robots work together, each one of them will take a role. For example, a few of the robots will work as scouts and advance ahead of the others to find you. When one finds you, it will share that information with all the other robots, and the attackers will join the scout to surround you. When you play the game, try to keep your eyes on such enemy movements; you might find them quite interesting.
Binary Domain adapts the style of Western shooters, such as keeping subtle distance between the enemies, and shooting at enemies from behind obstacles. We also focused on making the cover actionas realistic as possible. For example, the enemies in Binary Domain will not know what you’re doing while you are hiding behind obstacles. The enemy robots also work together, so if there is a robot between them and the player, they won’t attack the player by shooting through that ally robot (unless they perform “friendly fire”, having lost their targeting system). They anticipate the player’s actions based on real-time information they gather. They then approach the player to attack him with their most advantageous battle style, so in order to take them down, the player will need to think of tactics that are better than theirs.
You may recall from previous blog entries that Binary Domain’s enemy robots will change their AI behavior and motions if they get certain parts of their body destroyed. This personal enemy program is another feature that we focused on a lot. We wanted to express the threat of robots that can keep attacking you with missing arms, legs, or heads until their systems goes down completely. In order to create such unique terror, we programmed the robot motions to change depending on the level of procedural damage they receive.
These enemy robot actions are regulated by an orthodox Hierarchical Finite State Machine (HFSM). Basically HFSM is an algorithm that determines the enemy actions under a variety of conditions. The thousands of AI chips that guide the HFSM judge the situation based on a number of factors, such as the robot’s conditions, environment, ally information, and player information. Then it selects the most effective AI chip to construct the enemy actions. These AI chips are versatile systems, so they can actually be used to perform non-battle actions, but for Binary Domain we wanted to make sure that the basics of the game work perfectly, so we only chose to use the battle-type AI chips.
In addition to that, the robot animations are very important elements to make the enemy AI come to life. In Binary Domain, we succeeded in programming them so that the enemies act according to the stage geography and player actions or reactions. You’ll find the enemies move very smoothly in the game, but don’t let them catch your eyes too much, because they could give you a fatal shot right there!