Monday, October 15, 2012

Humans Opponents vs AI Opponents

Human opponents and AI opponents, there has always been a debate between which provides a better experience for players. Many stronger players have agreed that humans are much better and that there is no question about it, while others have tried to argue that AI opponents can be compable. All of this is usually a comparison in multiplayer games where the option to play with bots or human opponents is provided. In this blog post I look to compare the advantages and disadvantages of both in a multiplayer environment as well as take a look at how they provide a different experience for singleplayer versus multiplayer in a variety of different genres.

Human Opponents

Skill Levels

Your entire play experience changes depending on the skill of your opponents. Since there are so many players with different skill levels and different strategies it means that your experience can change with every match you play. This is the most important factor in having human opponents versus AI opponents because it means humans can provide you some uniquely different experiences that you could never get from AI.

Soul Calibur V - My Online Matches against human opponents, much more dynamic and interesting than AI.





Say for example you're going against one opponent in a match of Marvel vs Capcom 3. They will choose their characters and have some set strategy they might perform to try and beat you. They will also react to your moves and depending on their experience and skill, might be able to adapt to your strategy and counter what you're doing. Their set team of 3 players will each have different weaknesses and strengths that the player had decided to combine for various reasons. They will make sure their team has some sort of "synergy" that they work together. In comparison the AI in the game just randomly places different characters on the same team with no thought of strategy.

Marvel vs Capcom 3: My Online matches, where other players might panic if put in a tough spot

Also if a player has lower experience they might not know what to do against you or even panic and do even worse. You not only have to deal with the dynamic skill level of said player, but also their emotions too.


Emotional Response


If a player becomes angry during the course of play, depending on the player they can perform differently they then are when calm. Anger usually resorts to less focus, less careful strategy and impatience. This can lead to them performing worse and then becoming angrier as a result, which becomes a circle of doom for the player. Trying to remain calm and not change your play is one of the factors that dynamically changes your method of play.


Team Communication


Team communication is a great example of how much more beneficial playing with human opponents can be, or detrimental. A good team means that players will communicate useful information to each other, keep each other calm and formulate strategies together on the fly during a match, whether its a shooter or an RTS. You can perform tactics together that you otherwise wouldn't be able to accomplish alone or with AI. Say for example you're in Call of Duty. You can order your teammates to distract an enemy down a road while you go to flank the enemy via an alternate route.

Call of Duty Black Ops - Multiplayer, Team communication can be the difference between winning and losing

Of course other teammates can be detrimental, such as uncooperative lone wolves, suiciding players, AFK (in game but away) players, or lower level players (compared to overall skill level of all players in game).

Overall the play experience with human opponents is really the full,  dynamic experience of the multiplayer portion of the game. Different strategies can be used and different skill levels are encountered which can change dynamically in a game.

AI Opponents

AI Predictability

While it was stated that human players are dynamic, in comparison AI opponents are generally not as dynamic in terms of their ability to adapt to strategies. The problem with answering for AI opponents is because every game is different in terms of AI capabilities. AI programming requires a LOT of effort and many games with multiplayer have begun to eliminate bots from multiplayer modes like Halo for example.

In general AI opponents cannot adapt as well as human opponents (higher level human opponents) because there can only be so many situations and AI can be put in. It must have so many different variables it has to choose from and decisions to make depending on the situation that it makes it near impossible for an AI to perfectly react to any situation. Even if they could that would make the AI too perfect and would take away from the experience since they would just counter your every move.

Tekken 6 - Against bots, which after a while can become a dull affair

Since AIs can adapt as well, it means they can only do so many actions. While a player playing against the AI the first time will think the AI is good, eventually the player may catch onto the AI's patterns and habits. The player can then exploit how the AI works all the time and eventually makes the AI very dull to play against as they would always do the same thing. The same could be said regarding a human opponent and their habits, however humans have the ability to adapt and change while most AI aren't as dynamic and learning algorithms for most games don't really exist in full force.



AIs can "Cheat"

Note: Contains a bit of Engine Stuff! 

AIs can also be given the ability to cheat which can range from full knowledge of positions of all players on the map, to "auto aim". This means an AI can immediately detect your position in an FPS and shoot at you with pin point accuracy. This can be seen in some "kill cams" in Call of Duty Black Ops, where an AI does not even see you then spins around immediately and shoots you right in the head. In the case of a game like Star Craft, the AI can simply just know the position of all your units and buildings and move its own units towards your units to attack.

Call of Duty Black Ops - Aimbot, aiming at you perfectly with little reaction time


Due to the coding required to make an AI, sometimes this is very difficult to avoid especially if not given enough resources to develop a super great AI. In Black Op's case, the AI for combat training may not have been given as much thought since human opponents have always been the main draw for Call of Duty games. What they could be doing is detecting player positions around and using ray tracing to detect if a player is in potential view of the AI, and within a certain range. If they fulfill this requirements then the AI will turn to the player since they already know their position.

As for how the AI is able to spin around so quickly and shoot with pin point accuracy is due to the AI having the position of the player. The AI gets that position, finds the dot product of its position and then uses these two to get the angle to the player. The AI likely can detect the position of body mass (meaning head, chest, legs) to find the best place to shoot and then shoots from there. AI can always be able to detect the exact spot they shoot. The only reason they might miss is because the developers would add a variable that "shifts" the aim of the AI so that it might miss the center of mass.


AI for Teaching players

While I have been pointing out the flaws in AI, let's start pointing out some of it's positives. For one, AI opponents usually have set difficulties which means a new player can choose the one that fits their player level. Whereas human opponents it's not easy to tell at first glance how good they will be, AI will consistently provide a similar level of difficulty depending on the one you chose.

League of Legends - They provide AI opponents with various difficulties to ease players into the game

AI in general are a stepping stone in fighting human opponents. AI provide a safer and less hostile environment to play in whilst learning all the game mechanics. What I mean by hostile environment is that not everyone is comfortable playing with other players online, or strangers at least. It can cause stress in some individuals especially if there are other players on the microphone yelling slander towards the player. What I also mean is that the stakes aren't as high. If you lose to AI or with other people, you generally don't feel as bad as you might against human opponents. (This is of course debatable and up for HUMAN PSYCHOLOGY STUDY) But for me I find this is the case as when I do AI, I am usually learning anyways and if my teammates lose with me, unless they are trolling then I know they are learning too.

Although I stated  that frequently AIs can cheat, this is usually avoided on lower levels of difficulty because they add enough "stutter" to make the AI not use it's perfect methods of detection. This can be either via lowering their accuracy, delaying their reaction time or in games of knowing your position, just not act upon it. So despite those "cheats" the AI on lower levels won't generally be too bad for new players. Hopefully enough testing was done on the game for this.


Advanced AI

Unreal Tournament - Human like bots, even since 2000

For those companies with smart AI programmers there have been some pretty sucessful multiplayer AI bots out there. The most obvious and one of the most celebrated of these are the Unreal Tournament AI. Even since 2000 their AI has been extremely good, so good that you might mistake them for a normal player. They don't follow set patterns (at least not very obviously) and seem to be able to react to things on the fly. They are of course still following some general structure of what to do in certain situations and have a limited amount of different reactions but they are blended together so seemlessly that you wouldn't even notice at first.

This example stands out as one of the few times games have shown to demonstrate comparable AI to humans, however it still has its fair share of flaws, such as "Godlike" bots having instant aimbot much like Black Ops.


Conclusion


Overall a general consensus is that AI are great tools for learning but generally won't provide the same full experience that human players will. Human players will be much more dynamic and cater to a variety of different skills and strategies while AI will be much more predictable and provide a much more linear experience. Both have their merits and faults but overall there is a reason why AI bots hasn't been as much of a focus in multiplayer and it shows.
Though I was intending to cover Single Player and multiplayer differences, I will do so in a later blog post as it doesn't fully relate to the topic here.

That's all for now, this is The Penguin, signing off!

No comments:

Post a Comment