How to Create AI for Strategy Games

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 พ.ย. 2024

ความคิดเห็น • 31

  • @allorgansnobody
    @allorgansnobody 2 ปีที่แล้ว +5

    I would’ve felt condescended by the little game callout at the beginning, until I heard the voices on the room build in excitement as you went on. It was an icebreaker and a way to wake everyone up. Well played. Excellent strategy. GG.

    • @d20studios
      @d20studios 2 ปีที่แล้ว +2

      Indeed, helps to draw people in, thanks!

  • @mikaxms
    @mikaxms 5 ปีที่แล้ว +6

    Great presentation Ross! I’m currently working on a grand strategy game, so this is pretty damn helpful.

    • @dizmanskoemreska6537
      @dizmanskoemreska6537 4 ปีที่แล้ว

      is it somethink like eu4 ?

    • @mikaxms
      @mikaxms 4 ปีที่แล้ว

      @@dizmanskoemreska6537 It was more like the boardgame Axis and Allies. I had to abandon the project, due to a critical mistake I had made early on. All of the data was stored on the units and within the map instead of in a database; which meant that I couldn't make the map horizontally scrolling.

  • @LawlFrank
    @LawlFrank 5 ปีที่แล้ว +3

    At around 41:00 minutes in:
    Math comment: 15 choose 15 is 1, there is one way to choose 15 things from a set of 15.
    What you're looking for is 15 factorial (15!).

    • @geizkafahriza4127
      @geizkafahriza4127 5 ปีที่แล้ว

      If it is a permutation then yes, but choosing regardless of order is 1

  • @emilekroth100
    @emilekroth100 6 ปีที่แล้ว +7

    Eyy this is a good presentation

  • @warkah7557
    @warkah7557 3 ปีที่แล้ว +7

    Why do great channels always stop posting?

    • @paulblart7378
      @paulblart7378 ปีที่แล้ว +5

      Making good content is not easy. Making crappy, reposted content is really easy.

    • @rahulraghu4928
      @rahulraghu4928 2 หลายเดือนก่อน +1

      The TH-cam algorithm encourages content that makes them money, not content that's actually good, unfortunately.

  • @futuregenerationz
    @futuregenerationz 6 หลายเดือนก่อน +1

    What if I flip the script and ask the question: why no grand strategy games make any real solid effort at organizing and accommodating multiplayer? Humans will share your experience and remember it with you.

    • @d20studios
      @d20studios 6 หลายเดือนก่อน

      Thinking back to one of my favorite grand strategy games, Masters of Orion 2, where we'd spend hours engaged in hot seat multiplayer, one reason we're not seeing more multiplayer options in grand strategy games today might be the overall shift in the games market towards faster pace genres and divided player attention. Complex games demand a lot of time and focus. Younger generations will aim towards faster pace modern games, and for older generations that grew up on these games, available time to share with one another in person is scarce. On the positive side, this creates a unique opportunity for developers who can find ways to innovative by making complex experiences more accessible, whether by simpler interactions or new ways to play, such as asynchronous multiplayer.

    • @futuregenerationz
      @futuregenerationz 6 หลายเดือนก่อน

      @@d20studios And it's certainly not as easy as 1v1 play. What I'd like to see, is not only an accommodation for multiplayer, but an actual multiplayer format for grand strategy mp(my suggestion would be 3v3 all majors w USA starting as China until France falls -cold war MD would be different) with the opportunity to play with friends to take over an alliance, or have them assigned by the platform/mp program. What would REALLY be nice, would be to have some way of ranking players based on their game performances. No one listens to me though.

  • @Ivcifer
    @Ivcifer 3 ปีที่แล้ว +1

    such a nice guy, and very good presentation! thanks for this video.

  • @jez9999
    @jez9999 ปีที่แล้ว +1

    Erm, enumerate all possible legal moves? For many strategy games that could number in the hundreds of thousands or millions. This will only work for really simply games like chess with seriously limited numbers of legal moves.

  • @DrWho2008t101
    @DrWho2008t101 3 ปีที่แล้ว

    thanks

  • @Skatche
    @Skatche 5 ปีที่แล้ว +7

    Just use minimax, 4head.

    • @EthanLR
      @EthanLR 4 ปีที่แล้ว

      I think what the presenter describes is minimax,
      and also that minimax in a videogame is very difficult to calculate regarding available processing power

    • @Skatche
      @Skatche 4 ปีที่แล้ว +2

      @@EthanLR Was kidding. 4Head is an emote on Twitch used when giving terrible, out of touch advice for comedic effect.
      "Damn, this boss keeps killing me! How am I supposed to beat him?"
      "Just don't get hit, 4Head."

    • @EthanLR
      @EthanLR 4 ปีที่แล้ว

      @@Skatche ah I see. wanted to point it out anyway because minimax wasn't explicitly mentioned in the video.
      Thanks for the nice reply :)

  • @FutbolShortsFC
    @FutbolShortsFC 2 ปีที่แล้ว

    I need to do this, what do I do.

  • @Moroo009
    @Moroo009 3 ปีที่แล้ว +2

    What does he mean by simulation ?

    • @GameDevChats
      @GameDevChats  3 ปีที่แล้ว +7

      A simulation is where the AI will play out a move, its entire turn or even its prediction for the player's turn so that it can calculate the potential outcome as a numerical value. By ranking each potential move according to score, the AI can choose the most effective combination that contributes to its end goal.

  • @CharlieFleed
    @CharlieFleed หลายเดือนก่อน

    I disagree with many assumptions like the fact identifying the possible actions is not part of AI. On the contrary it is crucial to decide what the AI should "perceive" as actions and as information or "stimuli", i.e. at what level of detail and complexity. Take that away and you will find yourself stuck not knowing how to "reduce" your game to someting an AI can handle.
    I would decouple the AI topic from the "computer understand only numbers" topic. AI has intrinsically nothing to do with computers. The problem is we need to write logic rules and quantities (numbers) and make comparisons in order write unambiguous algorithms. Again, an algorithm is not something for computers, the instructions for assembling IKEA furniture are an algorithm in a way, and any set of criteria that are formulated to make decisions are algorithms, no computer needed.
    Some of the solutions are not general enough to be applicable in one way or the other to all games and that should have been stressed. I am thinking about simulating entire turns for example. What if the simultation of a turn contains half a dozen AI decisions? The complexity grows exponentially.

    • @d20studios
      @d20studios หลายเดือนก่อน

      Identifying actions is absolutely part of AI, as I note in the initial "unpacking" of the problem (it's step of 1 of 3). I'm merely saying, in the context of programming AI for a strategy game, only step #2 (Prioritizing Choices) is the essential focus of what is actually new for the AI development phase outside of the regular development of the game. Step 1 & Step 3 must already exist within your game for your human players to control and navigate the game. The philosophy of my approach here is that your AI decision making algorithms should connect with the same systems you've already built in your game for the human player so it has the same choice set and abilities as the human player does. For example, when you select characters, the game already presents the player with the valid move sets for those characters. Your AI can and should tap into those same systems to have full awareness of everything a player can do.
      As for computers only understand numbers, you're not wrong that algorithms are not specific to computers. But, I'm assuming my audience is programming their game, not building IKEA furniture, so this framing helps as way to focus in on the goal that choices for the AI be quantifiable (i.e. numerical) so that the AI can prioritize them. Humans actually do the same thing when making decisions, even though we're not actively assigning a numerical value to our choices, because our experience of prioritization is most often a subjective experience. We don't regularly think about how we make every decision, most of it is "gut-feel" or autonomous. When you're developing AI, you're not just programming, you are also dissecting an analyzing the very way we think as humans about problems. In day to day, we rarely do this, despite the numerous calculations that have to occur to do something even very commonplace (like walking without falling down). But, if you're trying to develop an AI for a robot to walk, you need to break down the "simple and subjective" experience into a series of quantifiable choices that can be prioritized according to rules.
      Probably the most interesting thing about developing AI, though, is that the more you work with it, the more you awaken to the "smoke and mirrors" that problem solving is for humans as it for games: a series of very simple interactions that in large aggregates creates the illusion of complex intelligence.

    • @CharlieFleed
      @CharlieFleed หลายเดือนก่อน

      @@d20studios Hey, thanks for the reply, I am afraid the core of my first point didn't get through, but that's ok. On my second point you could have just said "yes, I agree", plus if they are indie developers they definitely need to learn how to assemble IKEA furniture. XD
      I finished watching the video now. There are a lot of good takeaway points and the delivery was really good, with a good pace and good interaction, great job on that, but again I feel you sacrificied accuracy and thoroughness too much. One thing I would have added is a big disclaimer that said, "hey, there are other possible ways to build AI for games, today we are specifically discussing how to create heuristics in one specific game". The fact the word heuristic doesn't appear even once bothers me (well just in one answer at the end), and, yes, I know 99% of game AI is based on heurisitcs, I do the same, even more so 10 years ago, but just a mention of things like game theory and machine learning would have helped the audience to correctly place the information they were receiving (try to know what you don't know). Creating just the illusion of complex intelligence nowadays is not the only way anymore.
      Finally I 1000% commend the Pay It Forward philosophy, I have certainly benefited from it and will try to give back to the community in the way I can.

  • @Sovietube
    @Sovietube 3 ปีที่แล้ว +1

    Eu4: nah