Announcement

Collapse
No announcement yet.

Editable AI - Firaxis / Soren

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

  • #16
    Originally posted by W4r_Machine
    AI has very little to do with graphics. I don't even think there's ever a game producer that released its AI coding, game engine(i.e. quake 3) yes, but not AI.
    I know that, of course. I was pointing out that on a conceptual level, releasing graphics is the same as releasing AI rules. You don't need to know how the graphics engine works to make graphics, as you don't need to know the inference engine for making rules.

    However, in Civ III graphics are editable, and rules are not, as they are compiled into the .exe, while graphics are built at initiation of the program. I don't dispute that. I was just pointing out that for some it is easy to make decent graphics, while others (maybe a smaller group) are more able to tinker with the AI. I know I suck at graphics, while I work in AI (so I should be able to understand that)

    Originally posted by AlrightyThen
    The type of AI you seek does not exist. Before you see it in games, look for it in 'real-life' military hardware, then consumer products, and even then we're talking autos, PC's, etc.
    I don't know who you were replying to, but I don't agree with that statement. Military AI is no different than commercial AI, and game AI is about the most modern you can have. The only difference is in how much time goes into development of the 'content' of the AI, military systems are typically far larger than game AI, which also means they are far more complex. In my experience, commercial AI (and with that I don't mean the basic car-AI but for instance plant-control systems to control chemical installations) is the most complex, and up to date of all.

    People think that the field of AI is very new, but the type of AI used in games is basically the same as when Marvin Minsky was researching himself, instead of only describing other's research. It hasn't changed, apart from a new methodology and new accents, for the better part of 30 years. The reason why game AIs are progressing is that computing power has augmented drastically, and certain libraries of known algorithms are kept: you don't have to invent the weel over and over again when you want to build an AI.

    There are some new techniques, but they are under-used in real systems, and remain largely a research topic. With that I'm referring to agents, certain types of neural nets (SVM, SOM), and the shift to understanding human knowledge true knowledge management instead of trying to mimick that with 'dumb' rules. These, however, have no application in games.

    DeepO

    Comment


    • #17
      Originally posted by Thrawn05


      Did you read my post?
      I missed that one. Was it the raw coding of the AI? just curious...

      Anywho, If you know C++, Java or whatever programing language then go for it. Or, someone can make GUI so some of us who don't know jack squat can edit the AI.

      Partially realesed codes for previous games wouldn't help the current one. It's a different code all together.(maybe not)
      Janitor, janitor
      scrub in vein
      for the $h1t house poet
      have struck again

      Comment


      • #18
        Originally posted by W4r_Machine


        I missed that one. Was it the raw coding of the AI? just curious...

        Anywho, If you know C++, Java or whatever programing language then go for it. Or, someone can make GUI so some of us who don't know jack squat can edit the AI.

        Partially realesed codes for previous games wouldn't help the current one. It's a different code all together.(maybe not)
        It was the full code for the avp.exe file.

        And I think a GUI would be unresonable. The AI is currently hard coded, and I dought Firaxis planned to allow the AI to be edited that way. The source code would be easier to release then a GUI editing program that constantly needs to compile the new EXE so your changes can be in effect.
        I drink to one other, and may that other be he, to drink to another, and may that other be me!

        Comment


        • #19
          I wonder why don't AIs get released. I don't care too much for the Civ 3 source code, except for the AI code. Apolyton has a very strong community, including many able programmers. All due respect to Soren, he did great job, but a dozen or two of programmers will soon make the AI do even better things, and will certainly correct the main weaknesses of Soren's AI.

          However, Firaxis is not doing this, I'm sure of it, they've even mentioned it.
          Solver, WePlayCiv Co-Administrator
          Contact: solver-at-weplayciv-dot-com
          I can kill you whenever I please... but not today. - The Cigarette Smoking Man

          Comment


          • #20
            Originally posted by Solver
            I wonder why don't AIs get released. I don't care too much for the Civ 3 source code, except for the AI code. Apolyton has a very strong community, including many able programmers. All due respect to Soren, he did great job, but a dozen or two of programmers will soon make the AI do even better things, and will certainly correct the main weaknesses of Soren's AI.

            However, Firaxis is not doing this, I'm sure of it, they've even mentioned it.
            I agree, at least the AI. I'm no open code freak, in fact I defend Microsoft when it comes to the states trying to do just that, but I think that when Civ3 has come and gone, in a couple of years, Firaxis should consider it. I have lots of fun with the AvP and Quake I codes, but I want to take a look at a TBS/RTS AI.

            I'm in no rush, I'm in the middle of getting Cavedog to do the same with their Total Annihilation AI.
            I drink to one other, and may that other be he, to drink to another, and may that other be me!

            Comment


            • #21
              I agree
              Signature: Optional signature you may use to appear at bottom of your posts

              Comment


              • #22
                Thrawn, I have published the whole 210 page AOE 2 AI, BTW...

                When will XarXo be restricted and given a 10% PCR? I feel soon...
                Solver, WePlayCiv Co-Administrator
                Contact: solver-at-weplayciv-dot-com
                I can kill you whenever I please... but not today. - The Cigarette Smoking Man

                Comment


                • #23
                  Originally posted by Solver
                  When will XarXo be restricted and given a 10% PCR? I feel soon...
                  Yes, it's begiining to annoy me too.

                  As far as AI scriptig goes: Immortal Womabr, you are correct. Strategy AI's are notoriously bad at handling scenarios, simply because the player (either human or computer) is often called to do things outside of the normal gaming conditions. In CIv3, with so much importance placed on the AI flags for units, e.g. np flags selected or all greyed out means the unit won't be used. a similar problem could arise with scenarios.
                  Up the Irons!
                  Rogue CivIII FAQ!
                  Odysseus and the March of Time
                  I think holding hands can be more erotic than 'slamming it in the ass' - Pekka, thinking that he's messed up

                  Comment


                  • #24
                    Well, when programming an AI, it's about telling it what to do in any situation. Like how to start the game, what to do when you're behind in tech but with a superior army, etc.

                    Scenarios, however, are usually very much different from a normal game, causing the human player to play much different, but this harms the AI, which still tries to play in a standard way. This is why scenarios are generally for MP, the most, erm, non-standard ones.
                    Solver, WePlayCiv Co-Administrator
                    Contact: solver-at-weplayciv-dot-com
                    I can kill you whenever I please... but not today. - The Cigarette Smoking Man

                    Comment


                    • #25
                      I completely agree with the things that dexters has brought up. That and I agree with the concerns and realities that DeepO has mentioned. Scripting/AI editing is out of the question for Civ III... I'm sure most of us know that. Firaxis... PLEASE make that available for IV though!

                      Comment


                      • #26
                        Originally posted by Solver
                        I wonder why don't AIs get released. I don't care too much for the Civ 3 source code, except for the AI code.
                        Solver, I think that part of the reason why game developers are rarely releasing the AI is that it can be used again in other games. Graphic engines have to evolve very rapidly because of the evolution of graphic cards, standards, etc. You can savely release the source of a graphic engine after the game came out, because by the time a competitor can implement (parts of) it in his own game, it is outdated. But, as AI does not evolve that quickly, it would be a bigger risk to release it: part of the AI of Civ3 could be used for several years, maybe even in Civ4. Developers don't want to release code that can be turned into commercial, competitive products.

                        Another reason, I think, is that developers underestimate the number of fans that can program in AI. It is a smaller group than graphic-people, because you need quite a bit of experience to program it well. But, most AI-devs I know play games, and many play strategy games. I'm sure there would be quite a bit of AI-tinkering if Firaxis would release the AI code. Look at Quake I: I've seen quite a few scientific papers where that engine is being used to program better bots, it is a challenge for researchers in planning, while it remains fun to test it out. It is becoming a de facto test environment standard, which only helps to build a name
                        ( for some of those articles, look at
                        Citeseer ) If only the Firaxis team would see the light

                        DeepO

                        Comment


                        • #27
                          DeepO,

                          I do not think that such code, if released, could be used by other companies. Obviously, Civ 3 AI code is only useable in a civ-style game. So even if another company did something like this (though after Activision's fiasco I strongly doubt it), they got no right, since the code is copyright.

                          They probably don't underestimate AI programmers, either, they see how big some communities, like Apolyton are.

                          Firaxis, come on .
                          Solver, WePlayCiv Co-Administrator
                          Contact: solver-at-weplayciv-dot-com
                          I can kill you whenever I please... but not today. - The Cigarette Smoking Man

                          Comment


                          • #28
                            Solver,

                            I'm not talking about specific rules, but about the rule engine. That's one thing that is similar for all TBS games. And while specific rules can't be used as is, I'm quite sure many of them are more general, and cover many games. For instance, many of the rules could be used in MoO. Of course, you don't have specific land-units combat planning in MoO, but at least you have (in general) also combat planning spanning multiple turns.

                            Another common thing to all TBS is the pathfinding algorithm, but these are so well known that I find it very hard to believe that any game developer can build a crappy pathfinding into it's game. Still, it happens, and this only signifies the lack of interest from that developer in AI. I'm very happy that Firaxis is not like that.

                            I'm sorry to have confused you by posting about two things at once: the quake papers mostly dealt with specific rules, and only in certain cases with changes to the engine. But still, they're nice examples about what a game can be used for after it served it's commercial role.

                            I heard that Apolyton had an active community of modders for CtP, but as I was (and still am) opposed to that game out of principle I never looked at what has been done, let alone participated in modding. I can't judge how many people were active in the AI field, but reading some of the comments on this board made me feel there are just a handfull of people here capable of AI programming. It is a completely other way of thinking than traditional programming...

                            and about copyright: of course no game developer would be allowed to use it, but after the 'stolen' code is compiled, who is going to find out? From the source it may be obvious, but from an .exe?

                            DeepO

                            Comment


                            • #29
                              Civ 3 AI code is only useable in a civ-style game.
                              Solver, maybe not. Apparently, the AI algorithm used in CTP2 is essentially the same one that was initially used in Dark Reign (an RTS game, I believe), CTP1, and parts of Star Trek Armada. It sounds like an AI algorithm can be abstract enough to be used in all sorts of games.

                              DeepO, this algorithm uses a technique that was described as "priority based list processing". Do you know anything about this technique? I haven't been able to get any general information on it.

                              Comment


                              • #30
                                Peter, I can't say for sure as it is a company specific term, but I think that the term would be known to others as a blackboard system.

                                Basically, you have a number of possible tasks, which all get put on the blackboard. Then, you have a second algorithm which will give scores to each task, and rank the tasks according to the score. So, the first (most important) task is performed, and wiped from the board. Then the next, and so on.

                                This is like what happens with the workers in CivIII: when you put workers to auto, each will see what can be done (I'm not sure whether this is decided on a game level, or on a worker level). For instance, a worker sees that there is some pollution, and there are 2 tiles that still need to be improved, one of which is in use, the other is not. It will put these 3 tasks on the blackboard.

                                After this, a scoring algorithm gives for instance a score of 1 to improving the non-used tile, a score of 5 to improving the worked tile, and a score of 100 to cleaning the pollution. So, the worker will start on the pollution, as it has the highest score.
                                This scoring algorithm can be quite complex, certainly with multiple tasks. For instance, the third free worker could also be put on the pollution, but as there are 2 workers working on it already, the score of the pollution would be only 3. So, it will clean that tile of pollution if there is not a tile that needs improvment, which is in use by a city. In this case however, there is such a tile, so only 2 workers will go to the pollution, and the third will road the unimproved tile.

                                This happens throughout the game, each unit can do multiple tasks, and selects one based on the priority it receives. Additional tasks and the priority it should receive is where modders can help, while the tinkering with specific priority parameters (should pollution be 100, or only 10?) is what makes playtesting needed.

                                Also note that in many cases, such systems are given time-bonusses. Even if you have so much pollution that your workers are only cleaning pollution, the task of improving a used tile gets a priority of +1 each turn it stays on the board. So, after an amount of time it gets a higher priority that cleaning pollution, and will be done first.

                                DeepO

                                PS: If CtP2 used the same algorithm as RTS games, no wonder it performed poorly. Those two genres are so far from each other, real time AI is very different from traditional AI. Of course, it could both use blackboard systems, but the implementation and tweaking would be very different...

                                Comment

                                Working...
                                X