Fuzzy Logic
Fuzzy logic can be applied to any situation where there isn’t just a ‘yes or no’ answer. It is often used in conjunction with state machines / behaviour trees to determine the behaviour of an AI agent. In a shooter game, the AI could take factors into account such as health, ammo, number of teammates around it to name a few. It would then use these factors to influence the decision that it makes. A clear example of fuzzy logic is an AI’s health. States can be determined using fuzzy logic, where any value above 50% health is classed as healthy, any value between 0% and 50% is classed as unhealthy and 0% is dead. Fuzzy logic is used to make games feel more dynamic, and that there isn’t just an outcome of A or B. I could implement fuzzy logic in my game in several ways, a couple of examples would be:
1. Different fire rates of weapons. Some weapons start shooting at a rate of 0.5 bullet per second, but over the course of [x] time (for example, 2 seconds), the weapon could fire at 1.5 bullets per second.
2. The movement speed of the zombies. Their speed could be determined by how far away from the player they are.
Boids Flocking
Boids flocking is a technique which is used to simulate crowd behaviour, such as a school of fish or a flock of birds. The game Assassin’s Creed is known for the use of boids flocking methods, where there are crowds of people which have a set patrol route. Crowds will group together when walking round, but will separate to walk around other NPCs, then join up again after. This technique is also commonly found within the game Dead Rising with hordes of zombies that hunt down the player.
For my zombie shooter game, I will implement this technique to create cohesion between the zombie hordes. For example, if I spawn my zombies in waves then they could be spawned in random places, but then as they seek towards the player they could align with each other –simulating a ‘horde’.
Tactics and Strategy
In games such as Call of Duty or Half-life AI are programmed to employ strategies when attacking the player. They will rush the player, move behind cover and work together to take the player down. For example, in Call of Duty: Modern Warfare 2 when an enemy called the ‘juggernaut’ spawns (a unit that can take a lot of damage), all AI units around him will rush in and attack the player, leaving the player overwhelmed and needing to find cover. In the game Half-life, AI will move towards the player, taking cover along the way and provide cover fire for each other. These strategies are used to make the game feel more realistic, it makes you feel like the enemies are genuinely working together as a team. In situations where the player is outnumbered, it makes the player genuinely feel danger. This all adds to the immersion of a game, something that is hugely important to how much we enjoy a game.
Zombie games can feel very static. However, employing different zombies that have different tactics and strategies is important to give the game a more dynamic feel. Using the Call of Duty: zombies mode as an example of this, they have many varieties of zombies. Slow moving, fast moving, crawlers (zombies that move very slowing, but crawl along the floor so they can be hard to see). All of this can be extremely challenging when combined. I plan to add many different types of zombies to increase the complexity of the game.
Hacks
Hacks in video games refer to the AI having knowledge
that shouldn’t be openly available to them, such as constantly knowing the
player’s state, i.e. when they’re out of ammo, low on health etc. It ruins the
feel of the game, especially if they are meant to be realistic. No one likes to
feel like every move they make is being predicted. This breaks the immersion
and has a negative impact on the player’s experience of the game. However,
hacks aren’t always a bad feature, many games use them as a way to load a
cutscene, which requires knowing the player’s position. Also in many games,
allowing the game to interact with the player’s position can result in a better
experience. An example of this is Minecraft,
where enemies spawn in a region around the player. This spawning system will
never spawn a monster in a player’s view, so enemies don’t just ‘pop up’, but
it can be a useful tactic to increase the intensity of a game.
I won’t be implementing hacks in my game however as it
will be unnecessary. There are very few elements of it that would be positive
on gameplay.
No comments:
Post a Comment