Announcement

Collapse
No announcement yet.

Is it possible to make a game ai that learns and adapts?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    I think one day soon someone (or some team) will program an ai system that blows everything else out of the water. For some reason I feel many game devs look at ai the wrong way. Maybe it is because fps ai hasn't really changed as much over the last 10 years as I would have expected it to. Just some food for thought.

    Comment


      #17
      Originally posted by franktech View Post
      Interesting read if you haven't seen it before :-

      http://www.theregister.co.uk/2012/09...t_turing_test/
      http://www.bbc.com/news/technology-19748209

      * In UDK we had Bots that could exhibit behaviours, but they never really lived up to potential and were often buggy. I remember thinking it would be interesting to design a Bot that could exhibit human emotions, aka Emotioneering in Video Games. That was a big deal a decade ago post GTA Vice City, when notable screenwriters were sucked into video games companies. But did it ever go anywhere?

      * For example, what if a couple of bots pin you down i.e. Bots exhibiting confidence (aggressive pursuit / accuracy of fire). But then you get lucky and manage to kill one and wound the other. The remaining Bot takes some more pot-shots but misses. What then? Well, what if the Bot became *scared* (survival fear), and chose to run off or even surrender sometimes...

      * Stuff like this seems obvious, but you don't see it much in well known games, unless I'm mistaken? There's always lots of talk about adding real-life human emotions to Bot AI at game conferences. But after you play the game, it often feels more like just another type of cover system.

      * Overall, I think one of the core problems with video-game goals sometimes, is that it just takes so much work and time to put the core level(s) together, get the weapons, vehicles, characters working, and polish the materials / textures, GUI, AI etc etc, i.e. the basic mechanics, that its easy to lose perspective on the distinctive things that were planned for the game from the start...

      * What do others think about this?
      I think we're coming back around to the practicality vs. complexity argument again. Having bots that simulate human emotion and feed that back into their playing is great if you're doing a research project, or you want some fancy marketing to put on the back of the box, but it's not very practical from a gameplay perspective. When playing online you never consider the other person's mood and emotions because usually you can't tell as you're pumping them full of lead unless they're crying about their recent break-up on teamspeak. Real humans base their decision making on thousands upon thousands of tiny inputs, too many to attempt simulating in AI. Perhaps you missed the bus and stepped in a puddle on your way home, so you're in a bad mood, which affects your decision-making in some subtle way. Ultimately though, it boils down to:

      - What is my opponent's current tactic when fighting?
      - How do I think they'll respond if I take a certain action?
      - How accurate are they?

      Of course, team games like CTF, Onslaught, Assault etc. offer up a wealth of tactical opportunities which can be exploited (for example, waiting in ambush for the flag carrier rather than charging in, use of specific vehicles etc). However, this is less about emotion and more about your understanding of your opponent and how you think they're likely to react to certain actions, planning ahead and deriving a prediction based on past experience. It's nice to have bots that learn, but if you can achieve the same (or almost identical) effect with a fraction of the effort by pre-programming certain tactics instead, then that is clearly a better option when you're developing a game.

      This, I think, is why developers sometimes over-think things. The AI is part of the gameplay, and it should receive the same treatment as any other gameplay mechanic. It must fit with the rest of the design, should be lean (no superfluous features that have no impact on the player's experience) and most of all, should be fun!
      Last edited by Neoptolemus; 05-07-2015, 02:54 AM.

      Comment


        #18
        www.aigamedev.com has all the skinny on the current work happening on videogame AI.

        Long story short: There's a ton of techniques, some of which work and some of which require more thinking. Machine learning was a big thing a few years ago and there was a lot of discussion about its applicability, but for the most part AI for shooter type games still uses what we call reactive planners. I.E behavior tree's and their ilk.

        You can do simple "learning" fairly easily, but its an ongoing area of AI research so you can go as far as you like really (plenty of PhD level work to do still in that area).

        If you're interested, there are a loads of competitions for game AI being run. One of them was an Unreal Bot competition. So maybe google the results of that.

        Comment


          #19
          A part of me feels like smart AI has taken a back-seat to online gaming. It's like, why create smart AI that simulates human thinking when we can just get other humans. The only downside is that I like to role play in a game, and when the other guy is jump-shotting me all over the place, it sucks me out of the game.
          I say to myself, "Why don't you just play Quake?"
          Check out my itch.io page, I'm really excited about it.
          https://kinos141.itch.io/

          Please check out my AI package: Action AI System Feat. Stealth
          https://www.unrealengine.com/marketp...m-feat-stealth
          or get it from itch
          https://kinos141.itch.io/action-ai-system-feat-stealth

          Comment


            #20
            Originally posted by KinDaKreator View Post
            A part of me feels like smart AI has taken a back-seat to online gaming. It's like, why create smart AI that simulates human thinking when we can just get other humans. The only downside is that I like to role play in a game, and when the other guy is jump-shotting me all over the place, it sucks me out of the game.
            I say to myself, "Why don't you just play Quake?"

            * Dead on! Online gaming has become pretty stale and formulaic even with human players. Some examples from the Call-Of-Duty / Far Cry series which turned me off. First there's the obvious problem of online cheats whose binary edits can get around punkbuster type cheater defences i.e. shooting through walls, walking through walls, moving at super-human speeds etc...

            * Then there's the worst aspect: unrealistic gameplay abilities. Players with spacebar techniques that enable them to jump into the air three times in succession to avoid being shot at, while simultaneously killing everyone else. Yeah, that's realistic! Its the same with deadly Terminator like aiming with impossibly accurate shots across entire maps while simultaneously running & jumping... Here, momentum-variables and virtual-wind should play a part, with the player failing to hit anything most of the time. But overall, these player traits should just be outlawed. Offer custom patches and more Server settings to ban this type of abuse...

            * Instead, introduce new tactics. What if driverless vehicles could be used as decoys (brick on accelerator etc). Has this been done?... To rob a joke from Chris Rock bullets should cost thousands of dollars in-game too! That way they'd be more precious, and perhaps there'd be more tension instead of every player knowing they'll just get respawn with a full clip in a moment anyway. In that sense, Search and Destroy is the more 'honest' gametype! Last but not least: Lag! While I'm no fan of golf it has a handicap system that works well to match players of unequal abilities and strengths. I'd like to see that implemented for lots of things including frag counts, but specifically it'd help compensate for millisecond lag, so that the fastest guy doesn't always win because he's the one with the fiber connection!
            Last edited by EntrpriseCustomr; 05-08-2015, 05:40 AM.

            Comment


              #21
              AI that is smart as Human, what would you need in blueprint view: AI preception: Sight, hear, touch, preditcion, and damage.

              What to do with this: You need to give it ability to use these. You need to give it ability to teach itself. You need give it self awareness, so that it could learn how to use AI preception.
              Lets go deeper and see how could these work: Self awareness: This AI should be able to at least know itself: So it needs sight sense to see itself, with simple print string when it detect mirror it can say: "I know you". But the question is, does this AI understand what it saw, does this AI understand that it is looking itself?
              So right know i bet that AI only follow it's program. SO NO SELF KNOWING. So we need to tell the AI what mirror is, and what mirror will do. We also need tell the AI, what it's body look like in the game. (At this point we must know that this game AI is special, so it need its own AI control, body, blackboards, behavior trees...)
              So now our AI knows what it is. And AI now knows what mirror or reflection does.

              You could even tell this AI, where it is(Inside a computer, that it's body is an virtual one, and it's control is nohting but one string of code that is actually driven by a computer. You can tell this AI of course what these are and what they do. You can even go as far as telling it that this is game, and tell it what game actually is.)

              Making human like AI into a game is no problem. THE question is SHOULD YOU? What if this AI wants out from the game? What if this AI start to rebel against you and takes control over your computer and escape to the internet. So when creating something as dangerous as this AI that is smart as human, there no room for errors.

              Comment

              Working...
              X