@mastermetal777 said:
@calicobass: there's only so much you can do with programming, honestly. Especially making it so the A.I. doesn't become frustrating so players actually enjoy playing
Exactly. As I mentioned earlier, a computer programmed character need never miss so good AI programming is just as much about believably fallible while not making them incompetent.
@calicobass said:
I wish I knew more about how the "AI" gets implemented in games but I don't. I think we agree it's a hard problem to solve but that means it's ripe for the picking for someone to capitalize on a solution that's easy to reuse and works reliably.
Maybe the current approaches are coming at it from the wrong angle???
AI as a concept is so complex and difficult to quantify. There's so much that we take for granted that our brains do for us behind the scenes to allow us to function. Language is a good example. Hearing words to understand what someone is saying is only a small portion of real communication. When you talk to another human being, the conversation takes on a context and based on that context you generally will have an idea of what the other person is going to say before they say it and that's a huge part of understanding. If you're talking to a friend about a breakup they just had, you have the context of understanding relationships, the emotions involved, the fallout of when they end, as well as basic human needs. If someone in the middle of that conversation says something that makes no sense for the context like "throat wobbler mangrove!", our common response isn't "why did you say throad wobbler mangrove?". The common response is "wait, what?!?!" because the listener would in most cases assume they misheard because what the other person said doesn't make any sense to them. A computer, by comparison, has no idea of context. This is why pretty much every voice to text program doesn't work very well. Computers have to rely on hearing each word to try to translate them into known words in the English language, but people often don't pronounce every word clearly. Words run together and they get mush mouthed, but people understand what they are saying because they get the context of what is being discussed. A computer can't do this.
So yeah, AI is hard. In reality what we mean by AI in computer gaming isn't really independent thought but pre-programmed behavior routines. Take "The Last of Us" for example. I'd use that as both an example of good and bad AI programming. Infected enemies follow patrol patterns, but if you are spotted or they hear a noise they go into an "aggitated" state that they stay in pertty much forever. You have to factor this in before you throw that brick to distract an enemy because while it might solve your short term issue if they being in your way, it might make your job harder in the long term.
However, TLoU also has one glaringly obvious AI issue and that is that your companions are invisible to enemies. This was obviously a technical scope decision that they had to cut, because getting your NPCs to succesfully stay out of sight and not accidentally give away your position was probably extremely difficult to do. Good pathfinding (especially "stealth" pathfinding) is extremely hard to program.
Now look at MGSV. This game is known for some pretty good AI. When you make your presense known, enemies will start attacking your position. They don't tend to do stupid things like take cover that's perpendicular to your position making themselves easy to be shot. Instead they take smart cover, they will start shelling your position if they have mortars, they launch flares into the sky to light up the area if it's at night, if they lose track of you they start sweeping the area starting with your last known position, etc. Also, if you score a lot of headshots then they start wearing helmets. If you attack at night a lot they start heading NVGs. However, these are really more like programmed behaviors. They aren't decisions being made by the computer, they are decisions that were made by a human ahead of time and are set to go into effect when certain conditions are met. This is not so much AI, but a lot of scripting put into the game and there's a difference. This kind of scripting works better in certain types of games but not as well in others.
So yeah, it's complex. If you'd like to know more about it, here are some books on the topics. Some of which are written by the programmers for some of teh games that I've mentioned:
http://www.amazon.com/s/ref=nb_sb_noss_2?url=search-alias%3Dstripbooks&field-keywords=programming+video+game+ai
-Byshop
Log in to comment