Announcement

Collapse
No announcement yet.

Blake: On BtS AI Programming...?

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

  • Blake: On BtS AI Programming...?

    .
    Last edited by ZEE; April 22, 2011, 07:07.
    The Wizard of AAHZ

  • #2
    Basically when we play against the AI in BtS are we essentially playing against YOU on how you would play that leader?
    That's fair to say.

    Although it's worth noting that I've never won even a single cultural victory (except in a succession game and via permanent alliance with an AI), but I still implemented the cultural victory strategy for the AI. The AI is playing according to my understanding of optimal strategy, although it's not necessarily playing how I would play (or: "it's playing how I would play if I were to play that way...") - the Aggressive AI plays more closely to how I actually play, which in large part is why it tends to play better.

    if so why is Noble level so easy sometimes? If that is the default level, then why is your AI only difficult on the settings where it gets insane bonuses vs player handicaps? if you managed every aspect of their functionality wouldnt Noble level be at the level that YOU (Blake) would essentially play at?
    Human brains have a lot more potential than computers, the computer players are an approximation of a human player, quite a crude approximation, given the limited hardware (compared with a brain) and the fact that the AI has to play it's turns in a mere fraction of the time of a human player. The AI really could play somewhat better with more CPU cycles - it could do things like accurately calculating the best order to attack with units, it could better scan the map for threats and react appropriately. The unit code is really, really abysmal (it tends to search only about 4-5 tiles for a lot of tactical type stuff), but with the number of units, and the number of possible moves, it has to be that fast, or the computer players would take as much time - each - as the human does. There's also stuff like the AI forming large stacks just to reduce the CPU usage, if the AI was to constantly consider how to best split up it's stacks that would munch a huge amount of CPU (because a single huge stack takes the same time to make it's decision as a single unit), there's a fair few points where the AI is stupid to be fast.
    And then there would still be things the AI fails at compared with humans - timing is difficult for the AI - things like hooking up the marble as the capital starts building the oracle, and completing the Oracle on the same turn as completing the tech enabling the slingshot... these kinds of optimizations, are things an AI is not good at, they are just so specialized that it's hard to program them. That's where human pattern matching helps - recognizing "where success comes from". Humans have an astounding ability to learn all kinds of tiny little details and also extrapolate and stuff.

    The AI plays CIV quite well, in many ways, for an AI. That in most part is because CIV is not a very good strategy game, it's highly formulamatic, along the lines of "expand quickly, pump axemen, win". Or, "expand quickly as long as your economy isn't dead, if your economy is dead, focus on gold, if you can't expand and your economy isn't dead, focus on science and training armies" type thing. That's the basic "Bigger is Better" formula for playing CIV, and the AI does it quite well, but it misses pretty much all the optimizations and it fails at meta-strategy.

    Comment


    • #3
      but with the number of units, and the number of possible moves, it has to be that fast, or the computer players would take as much time - each - as the human does.
      That's the kicker, right there.

      Comment


      • #4
        Amazing!
        If the programmed AI plays as the programmer...
        that means, just in two generations you - current and previous
        programmers - developed a "perfect" language.
        Congratulations.

        Comment


        • #5
          Considering that, as you said, the AI could be better if it had more CPU cycles available, wouldn´t it be a great idea to have the option to choose between different AIs?

          For example 3 AIs, one that is fast but of course has its limitations concering decision making,
          another one that takes its time for decision making (meaning that the player has to wait a longer time between turns till the AIs have finished their moves) but is much better at decision making
          and a third one that is an intermediate between the other 2.

          This way everyone could pick for himself the type of AI best suited for his playing style and tothe hardware he has available (or maybe even pick a different AI for each civ)

          From a player standpoint IMHO this would be a cool thing to have (although I fear less so from the developers standpoint, as each AI has to be separately tested and many functions of the AIs rewritten for each AI).
          Tamsin (Lost Girl): "I am the Harbinger of Death. I arrive on winds of blessed air. Air that you no longer deserve."
          Tamsin (Lost Girl): "He has fallen in battle and I must take him to the Einherjar in Valhalla"

          Comment


          • #6
            Originally posted by Blake
            ...because CIV is not a very good strategy game...
            Just curious; what PC game do you think is a good strategy game?

            Comment


            • #7
              GalCiv has an option for the AI to be "thinking" always, including the player's turn. Would something like that make Civ AIs more powerful?
              "Never trust a man who puts your profit before his own profit." - Grand Nagus Zek, Star Trek Deep Space Nine, episode 11
              "A communist is someone who has read Marx and Lenin. An anticommunist is someone who has understood Marx and Lenin." - Ronald Reagan (1911-2004)

              Comment


              • #8
                Re: Blake: On BtS AI Programming...?

                Originally posted by AAHZ
                if so why is Noble level so easy sometimes? If that is the default level, then why is your AI only difficult on the settings where it gets insane bonuses vs player handicaps? if you managed every aspect of their functionality wouldnt Noble level be at the level that YOU (Blake) would essentially play at?
                What makes you think the 'default' level is ever supposed to be any sort of actual challenge? The AI doesn't get insane bonuses on harder levels, it gets sensible bonuses that allow a computer to compete with more advanced human players. What you get on Noble is a level of play which applies to a n00b that just opened the box and doesn't really know what he's doing. It's easy because it's meant to be easy, there's 5 higher levels that apply to people who want it harder. Any lower than that and it's basically in 'baby mode' so your girlfriend/wife/any other female or AAHZ can play. :P

                Comment


                • #9
                  Blake's aggressive AI really cannot be improved without turning SP Civ4 into jank MP Civ4 (overpowering diplomacy, and the underpowered tech for starters). It's very fun to play against.
                  “...This means GCA won 7 battles against our units, had Horsemen retreat from 2 battles against NMs, and lost 0 battles.” --Jon Shafer 1st ISDG

                  Comment


                  • #10
                    Originally posted by JimMac


                    Just curious; what PC game do you think is a good strategy game?
                    Probably something like Go.

                    Nearly every other TBS and RTS game is a worse strategy game than CIV, in fact I couldn't name one which is better (at least without significant hesitation).
                    But that doesn't mean that CIV is a good strategy game .

                    It's really more of a big complicated puzzle, you figure out how to solve it moreso than being "kept on your toes".

                    Note that the quality of a game is not it's quality as a strategy game.

                    Take for example Warcraft 3, I personally feel it's an excellent game, but it's an abysmal strategy game - players use pretty much the same strategy every single game, to the extent where in mirror matches both players use the identical strategy, to the extent even of being symmetrical in their movement. Some of the matches are better than others, Human vs Human is quite strategic, Nightelf vs Nightelf not in the least.

                    I feel that a good strategy game should defy being "reduced" to a very small set of equilibrium strategies, but that is just my definition of strategy.

                    Comment


                    • #11
                      Your definition of strategy is a good one.

                      Comment


                      • #12
                        ...Please delted...
                        Last edited by MJW; August 27, 2007, 01:04.
                        “...This means GCA won 7 battles against our units, had Horsemen retreat from 2 battles against NMs, and lost 0 battles.” --Jon Shafer 1st ISDG

                        Comment


                        • #13
                          Blake,

                          I have a query regarding the AI and when the human is nearing victory. Before BtS the AI never seemed to do anything as the human neared one of the victory conditions. However, in my current game I was ~20 turns away from my third city achieving legendary culture and a cultural victory (using Agg AI) when the top AI civ (Augustus Caesar) declared on me and proceeded to move the best part of 40 or so units into my overseas colonies. AC had been systematically beating up on all the other AI civs and like my civ had about 25 % of the total land/pop.

                          I just wondered whether this was a coincidence or indeed whether the AI in BtS is now programmed to react to a human (or another AI for that matter) approaching one or more of the victory conditions?

                          If it is, can you elaborate?

                          Comment


                          • #14
                            Coincidence, although AI's who are nearing victory become more ambitious.

                            Comment


                            • #15
                              "given the limited hardware (compared with a brain) and the fact that the AI has to play it's turns in a mere fraction of the time of a human player."


                              I've always wanted an option in the game setup to define how long the AI can take to have it's turn.
                              Personally I wouldn't mind 10X the length of time between turns if it meant the AI didn't act like a complete moron half the time.

                              Or, maybe you could press enter to end your turn, then you have to press enter again to begin your turn. If you pressed it twice the AI gets its minimum (default) time to take its turn, otherwise it would just keep on thinking and improving its turn.

                              Comment

                              Working...
                              X