4 ms·
AI in games is misunderstood as sophistication of reasoning. What makes AI in a game subjectively good is that it demonstrates a reasonable intent that the pla
by georgeecollins 10y ago
AI in games is misunderstood as sophistication of reasoning. What makes AI in a game subjectively good is that it demonstrates a reasonable intent that the player can observe and anticipate. If you can see what the AI is going to do and thwart it, the AI is good. If it surprises you once and a while it is great. Surprise implies that you recognize what the AI is doing most of the time and sometimes it does something else that also makes sense.
AI is often at its best when it does something stupid that is understandable. For example, in Halo when you kill a bunch of the big guys, sometimes the little guys drop their guns and run away. This makes them very vulnerable, but it is fun. A smarter AI (one that would win more) would only pop out when you aren't facing them, or if cornered just shoot back very accurately from two points. But getting hit from behind isn't much fun, and getting shot at head on from two directions is also not much fun.
Good AI is usually a mix of good game design (and art) as well as good engineering.
- Retric 10y agoDepends on the game, RTS players want an AI that does not cheat and is still a challenge.
- astrodust 10y agoEvery AI has to "cheat" or it would utterly destroy you. For example, AI can micro manage way better than you can, it can do a billion APMs. It has complete situational awareness at all times and never gets distracted by real-life. In an RTS where scouting is key, it could fan out with as many drones as it can produce and gather way more information than a human player could. You need to constrain your AI so that it's not impossible to defeat. For example, limit how many actions it can perform in a given situation, or make it stubbornly cling to some losing strategy for a while even when it could easily flip to the most optimal one in an instant.
- Retric 10y agoIt's not hard to make a bot do worse, however in many games there are no bots that play well without cheating. Watch some StarCraft/StarCraft2 bots, it seems like an easy challenge, but they can't beat a good human player when they have to deal with the fog of war. PS: Multi drone scouting tanks your economy and becomes a really bad idea. You want to send out one scout that can both gather useful information, not die, and not significantly hurt your economy. To the point where some very high level players don't always scout early.
- astrodust 10y agoAn unshackled bot will eventually destroy even the best human players once they can lock in the right approach. It's only a matter of discovery. Tic-tac-toe, checkers, chess, even Go have all fallen to computers. As for scouting, the ability of an AI to endlessly harass and endure minimal damage because of precise unit movement becomes a problem. A human can't finesse that as well and still have attention left over for other, more urgent priorities. It's probably the case that at a strategic level the AIs generally suck, but on a highly situational level they have an advantage that needs to be kept in check.
- Retric 10y agoAnd when that happens we can nerf the bot. But, RTS like StarCraft are really difficult and with constant re balancing the optimal strategy keeps changing. Remember, at the meta level you need to have just enough army to survive an all in, while maximizing resource collection and research. Further, if you don't use a range of strategy's people will just pick the counter to your game style. Do you build static defense vs harassment? What do you do for vision? And everything has a cost in time or resources. Further, things like army composition, baiting, high ground, choke points etc. make combat very tactical which bots have issues with.
- astrodust 10y agoIt's too bad that there's no official Starcraft 2 bot league. There's only various student leagues and the occasional contest.
- stale2002 10y agoYou are highly overestimating the capability of AI. Infinite APM AIs in starcraft still basically suck. There strategy/high level planning is so terrible that perfect/unfair micro doesn't save them.
- astrodust 10y agoThis is a function of shitty AI, not infinite APMs. Honestly, the AI in most games is downright terrible to start with, but for those where it's actually competent, you need to nerf it a bit or it becomes overwhelming.
- stale2002 10y agoYes, that's my point. AI in real time strategy games all suck, because the problems there are very very hard. Even with blatantly unfair advantages and cheating the AIs still suck. No such competent AI exists for real time strategy games. The "decision tree" is a billion times more complex than something like Go.
- georgeecollins 10y agoAI never plays the way a player would play. It doesn't see your units, hear your movements or aim a gun. It knows the position of everything on the board at all times and then you simulate the kind of knowledge a player would have. It is all artificial. Every time an AI shoots and misses, that is a simulated mistake.
- Jtsummers 10y agoI'm curious why you say they'd have full awareness. An AI, treated as an agent, could have perfect memory, but you can always restrict it's view in a way that is similar to what a player is restricted to. In an overhead strategy game, the AI could be restricted to a viewport where they only have perfect knowledge of that viewport, everything else is based on the agent's model of the game state (just like a player relies on). In an FPS, same thing. The AI agents can be made to only see/hear things within certain directions and FOVs, relying on memory for everything else. They can be given the same kind of information in a way that mimics a player's knowledge and perceptions without having to cheat by making them "forget" their perfect knowledge of the world state or act deliberately stupidly while having that perfect knowledge (of course, you still may need to make them stupid sometimes for the sake of fun).
- Spivak 10y agoI think the point is that the AI is part of the game and the game had perfect knowledge about the player. If you're trying to make a bot that plays the game with only the information the player has then that's cool and interesting. But if you are designing an AI as part of the game then you're making them not consider their perfect knowledge by adding restrictions. If you're playing a poker game then of course the AI knows what's in your hand. Telling it to purposefully play subotimally and telling it to not consider the player's hand to me is equally artifical although one might lead to more enjoyment.
- Retric 10y agoA poker bot that knows what's in your hand is not playing poker. Not seeing other players hands is inherently part of playing the game. Further, an AI should be capable of using the same interface people do otherwise it's not a game X bot it's a cheating game X bot.