And by better AI, I mean an AI that can beat or at least challenge the human WITHOUT using bonuses. An AI that can manage the economy correctly, can war competently and respond to galactic conditions and galaxy sizes, such as for example teaming together to take down a runaway civilization or expanding faster in the early game on larger galaxies or playing competently in the late game.
Trial and error would be one option...would require some tuning, but you could set benchmarks based on difficulty and race traits.
Shouldn't be impossible to sort out how much output is required to create appropriate challenges. The advantage with this approach is you don't have to teach the AI how to manage an economy...you just have to mess with spreadsheets until the game feels right.
You could but that makes for a bad strategy game.
The whole point of having the AI play by the same rules is to allow you come up with ideas how to counter your opponent.
For example, if you blow up economic starbases and shipyards you are currently actually hurting the AI and that's exactly how it should be. Your game moves and actions within should have meaning.
If you just generate the stuff for the AI regardless of what happens then that kills your counter moves. Or, perhaps we should reward the player for these things and generate a penalty to the AI "for the estimated damage inflicted"? Again, we could but then we just have the same problem the opposite way: if the developer hadn't thought of your move in advance you can't be rewarded for it. That makes a bad game. Which doesn't mean there aren't such games. There are plenty. And generally they aren't very good.
If you can make the AI play by the same rules and with some rationality, however it accomplishes it, that creates an open-ended game where the only limiting factor are the rules themselves. You are free to make up completely new and never-heard-of strategies and they will work in the game. This is one of the best signs of a good game.
Besides, as we have established, the AI-AI-part isn't that bad. It's actually quite good at what it does. The problem lies in its poor economical planning and in the inability to react to what happens in the game. Mostly this means scripts and missing support for a host of necessary triggers and actions, and the missing computer equivalent of the micromanagement that the human player routinely applies.
Add those, plus some better ship blueprints, and you get a pretty decent AI opponent.
After you have that you can start adding AI bonuses to make the higher difficulty levels.
The ai makes use of racial descriptors (aggressive, benevolent, scientific, etc) where they have weights assigned in their factiondefs(?) entry. Those weights are adjusted by/used to select various aistrategies, make research/build choices, etc but the current limitations of the xml file ai tweaking capabilities is pretty limited. I don't doubt that Brad & the team have something more advanced on the roadmap, but there are a lot of reasons why gc3 ai is probably a lot more complicated/involved to make than it was in gc2.. here are just a few low hanging fruit ones:
Keep in mind that the ai has progressed by leaps & bounds through beta & is still improving to varying degrees
NO.
People shouldn't have to pay for better AI. That is part of the purchase.
This Fall if the GalCiv III AI hasn't reached a point where it's satisfying our hard core fans, I'll get in and start working on it myself.
I am not sure how to say this, but if you are not already in there working on it yourself, then I greatly misunderstand your priorities. I was lead to believe as a founding member that this was your flagship product and you would be paying serious attention to it as soon as you got beyond the distractions of the Sorceror King launch.
Instead, I have seen several mentions of how you have been caught off guard by the present design of the AI, have been struggling to get that design to do scripted work, or will be working on it soon.
I was expecting a more interactive presence on this board, not as CEO, but as a discussion of just what a GalCiv AI does and how it learns. Instead, I got mentions of not wanting to talk to armchair AI programmers, which I obviously fit into the category of. So, my expectations of learning about AI have come mostly from naselus instead.
I have no expectation that this is your main priority. You are CEO of a complex company. And that company does things I support strongly. But I did expect, from your comments and statements, that there would be visible signs of an interactive effort between you and Allan, with occasional enlightening commentary from an acknowledged AI enthusiast as he built the best and meanest AI he could come up with.
I still look forward to that with hope and the longer term viewpoint of a founder.
Brad has been involved with the AI. He's not been much involved with the scripting. Likewise, I've been vocal in outlining issues with the scripting. I've no complaints about the AI. Brad has also struggled with the scripted bits (such as when he couldn't get the computer players to build the ships he wanted - this is presently heavily script dependent, and the general commentary from inside stardock seems to imply that they'd like that to change).
Remember, when players speak of 'AI', they're talking about a combination of wildly different modules that are created by multiple people with very different specialities. It is unlikely that, for instance, a C# AI coder would be involved in xml scripting to any extent, since coding AI in C# is difficult and requires years of practice, while xml scripting can be handled by a hastily-shaven chimpanzee with twenty minutes of on-the-job training.
This image may help:
Every red oval is a separate, largely independent module, which may have been implemented months before or after any other by programmers who may never have even met.
Now, I don't work for Stardock, and I'm sure this isn't 100% accurate (there's probably a few dozen examples on each side), but what you have is a large collection of semi-autonomous subroutines in the actual AI, and an equally large number of semi-autonomous scripts in the Scripts. So when players say 'the AI is bad', Stardock need to try and figure out from that which AI subroutine we're referring to, or which script, or even if we're talking about scripted behaviour or actual AI behaviour.
They're all basically independent; there's no over-arching 'AI' entity co-ordinating them. They take the resources they find at the beginning of the subroutine, and attempt to use them - so the diplo AI checks the scoreboard and diplo scripts to determine how it should act with another player; the tech picking AI refers to the technology scripts to decide which tech to go for, the ship designer AI looks at the blueprints and populates them with the best weapons of the types listed etc. Most of the AI's economic management is entirely handled by scripts.
The bit in the light blue on the right hand side is very good. The bit in yellow on the left hand side, where it is picking those initial conditions from, is where the problems largely lie. Brad, as a talented C coder with 20+ years of experience, works primarily on the blue stuff. Modders like myself, who have no access to the C, work on the yellow stuff.
If anyone from SD wants to chip in and contradict or correct any of this, do feel free, but this is largely my understanding of it.
@erischild, as naselus pointed out, Ai isn't a simple one component thing, there are a large number of different specialized components working together to make up the whole sum of what gets called "The Ai" i. Some of those components are pretty good, some of them are a bit touched in various ways, some of them are failing to consider important things or considering what should be unimportant as important things. Just as a simple example, naselus & I are both working on ai tweaks to our mods. each of us takes wildly different approaches to tweaking for the target map size and seems to be taking wildly different patheways towards using the cluebat on our ai's.
Added the diagram to help illustrate what I mean. Drawings always help.
If anyone wants to contact me via PM i am happy to dedicate time on learning how to be a brainless xml monkey. I have no experience in it but I learn fast......
I'm not sure about others posters, but more scripts and more triggers is what I have in mind when I write about an improved AI DLC. Obviously wording could be better and more specific, but the general idea is to have a DLC that is actually an expansion. Could be bundled with a scenario editor, improved map editor, and maybe a couple more races or new race specific tech trees that the new bundle of scripts and triggers could take advantage of.
Maybethere isn’t enough demand for this or its just a non starter for SD, but there is at least some demand.
I sent you a PM, but for everyone else, you can help others siimply by going to this thread and telling about the gameplay stuff it asks about your strategy for your favorite race.
So in summary we need more talented XML script monkeys.
Is there an emoticon here with pictures of a monkey? The best I can find is this:
It'd largely be commercial suicide to even attempt it, and a PR disaster. AI is not a glamorous subject. The majority of players don't really care that much about good AI, as long as it's not too bad they're ok with it. Moreover, it's perceived very much as something that should be part of the finished product, rather than an optional extra. Packaging it as a DLC will piss off most people as a blatant cash-in, because it's a base-game feature. Can you even imagine what the gaming press would write about it? "Stardock fluffs AI, opts to charge playerbase"...
So while, say, a map editor may require only a fraction of the actual work of a good AI, it none the less is a better 'headline' item for DLC. AI improvements might sneak into expansions, but you cannot promote an expansion with 'wrote lots of background code most of you think should've been in the base game in the first place and most of the rest don't care about'. AI improvements are a good 'also includes' but not much of a headline.
While it might be possible to get around that with a 'GC3 Masterclass DLC', which included not just huge AI improvements, but also a bunch of scenarios or a campaign weighted heavily against the player, this would likely not sell very well. Moreover, having written the AI stuff, it'd be wiser to just incorporate it into the base game, since that way you avoid having two divergent AI codebases which both need to be tested for further DLC.
So no, an AI DLC isn't actually a practical option. But people being willing to pay for it does indicate to SD that the AI needs work - and I find Brad's comment very encouraging, frankly, because he acknowledges the problem exists, and then says that he'll personally intervene (in genuine code, rather than xml) if it doesn't reach the required standard within a given time frame. I suspect that, rather than wasting time with extra script triggers, SD are thinking more in terms of moving stuff from scripts into genuine subroutines. This is not only a better option in general (since the player can eventually learn to predict any script), but also has much lower overhead costs compared to adding a bajillion different xml scripts.
Well, I have already received a cornucopia of information.
I understand modular programming and the overall messiness and elegance involved. I have done a few clever things myself, but mostly I have been one of the ones who makes things work for mathematicians and programmers and such when no one else can, and that mostly involves only being able to talk to programmers about their interesting subjects instead of pursuing all of them.
I like the blue and yellow diagram. I understand the difference between the C++ and script stuff. So, when we send in savegames to Brad, is that helping with the blue stuff or the yellow stuff? Or is there more of an overlap as it comes to what a user perceives as behaviors?
The notation gives that XML code "knows nothing". It was my understanding that code at that level should have hooks into information presented from lower levels. Things like economy numbers from the lower levels should somehow be available to upper levels for decision purposes. I would understand it as the C++ code supplies basic behaviors in things like managing an economy and tells the XML how that economy is going with various bits of processed data. The scripts end up encoding certain behaviors with certain decision points. That is what I hear the forum work heading towards. I am still not sure I understand what parts of the behaviors Stardock is affecting. I do notice it is overall working. Version 1.2 seems significantly better to me on some subjective level. Since I hear little about big changes in what the XML is showing yet, I have to assume I am seeing some the C++ work. Maybe. I am just guessing and trying to appreciate.
One of the things I remember hearing in earliest days was something about a lot of data mining from the Steam integration. I know a lot of that is being used for gameplay stats by Brad and already coming up with interesting and relevant data. I was under the impression that some of it would be harnessed somewhere for some layer or another of the decision making. Is that really a thing? Did I hear that right? If so, is there any clues on what kind of use is planned or possible? It seems a potentially powerful tool for all sorts of interesting techniques.
I want to thank everyone for your great replies. This is the most fun I have had with GC3 outside of actually playing the game.
I am not sure how to say this, but if you are not already in there working on it yourself, then I greatly misunderstand your priorities. I was lead to believe as a founding member that this was your flagship product and you would be paying serious attention to it as soon as you got beyond the distractions of the Sorceror King launch. Instead, I have seen several mentions of how you have been caught off guard by the present design of the AI, have been struggling to get that design to do scripted work, or will be working on it soon. I was expecting a more interactive presence on this board, not as CEO, but as a discussion of just what a GalCiv AI does and how it learns. Instead, I got mentions of not wanting to talk to armchair AI programmers, which I obviously fit into the category of. So, my expectations of learning about AI have come mostly from naselus instead.I have no expectation that this is your main priority. You are CEO of a complex company. And that company does things I support strongly. But I did expect, from your comments and statements, that there would be visible signs of an interactive effort between you and Allan, with occasional enlightening commentary from an acknowledged AI enthusiast as he built the best and meanest AI he could come up with.I still look forward to that with hope and the longer term viewpoint of a founder.
ii do indeed meet with Alan and the GalCiv team regularly. However, AI coding is not typical enginerpering. It's more of an art than a science. that's why most AI suggestion threads aren't condtructive because the AI already does the things they want it to do. The problem is that some other decision will take precedence which cascades into what often appears to be a "dumb mistake" by the AI.
V1.2 made a lot of improvements to the AI and more are coming in 1.3.
I would love to be able to dedicate my full time on AI coding. It is my favorite thing to do. Unfortunately, besides running Stardock, coding on Sorcerer King, I am also the lead designer on Ashes of the Singularity and design our windows software products. I also am the CEO of Oxide (which makes he Nitrious 3d engine so I spend a lot of time dealing with video card makers), president of Mohawk (which is making Offworld Trading Company) amongst other things.
The problem with AI is that it's thankless. There are still people who say the gc2 AI is terrible and I out my heart and soul into that. I've yet t see anyone even acknowledge how much better the AI in 1.2 is.
Naselus has a pretty accurate description above.
@erischild xml code isn't similar to an ini file, grocery list, or a menu, none of them know or do anything on their own, c++ is more like a fancy blender, rice cooker, soda fountain, etc.. it does something. that something can be looking over, crunching, and outputting xml code or acting on the data in the xml , but xml is just data.
depemding on what the savegame is showing, it could be either or both.
ii do indeed meet with Alan and the GalCiv team regularly. However, AI coding is not typical enginerpering. It's more of an art than a science. that's why most AI suggestion threads aren't condtructive because the AI already does the things they want it to do. The problem is that some other decision will take precedence which cascades into what often appears to be a "dumb mistake" by the AI.V1.2 made a lot of improvements to the AI and more are coming in 1.3. I would love to be able to dedicate my full time on AI coding. It is my favorite thing to do. Unfortunately, besides running Stardock, coding on Sorcerer King, I am also the lead designer on Ashes of the Singularity and design our windows software products. I also am the CEO of Oxide (which makes he Nitrious 3d engine so I spend a lot of time dealing with video card makers), president of Mohawk (which is making Offworld Trading Company) amongst other things.The problem with AI is that it's thankless. There are still people who say the gc2 AI is terrible and I out my heart and soul into that. I've yet t see anyone even acknowledge how much better the AI in 1.2 is.
There is improvement. In the diplomacy screen at least the AI is a lot more demanding.
Ha! I beat you to it! I mentioned the improvements in 1.2 a couple of posts earlier!
Seriously, it is noticed and appreciated, at least by me. I'm actually one of those who sees the ongoing AI development as a wonderful thing and following the general schedule I saw coming. In another life, I could have gotten into this AI thing myself. It is fascinating. But I am more than happy to be in as a somewhat knowledgeable customer and conspirator of sorts with the best gameplay AI team I know of. Please remember, when no one else is patting you on the back, we and the AI both thank you and the team. The AI enjoys getting smarter, too. I am sure of it. If you gave it the ability, it could say thank you as often as you deserved.
Well frog, it seems to me that kind of DLC surely would result in alot of negative publicity but i think the idea behind that DLC is that fans that wanted it could invest much more heavily and in return, the staff of galciv3 would be able to invest much more heavily themselves with more personnel, budget, etc. For me the AI hasnt been a big problem at 1.0 on onwards, but neither have i played much after dropping it due to other perceived issues to see these improvements.
I was scratching my head awhile over this one, and ive seen you say similar things before. About how you had joined the team at so-n-so time before launch, etc, things should get better when or if you get involved more. Since you seem like ''The Man'' at stardock, and all i know of you is being a software engineer, i myself dont quite understand why the teams best player is seemingly more invested into company management. If you get a star quarterback in the NFL, you wouldnt normally pull that guy out and put him in the front office, you would want him down there doing what made him great...throwing passes, or maybe coding stuff. Im not trying to tell you what to do, i just dont understand the situation is all.
If you get a star quarterback in the NFL, you wouldnt normally pull that guy out and put him in the front office, you would want him down there doing what made him great...throwing passes, or maybe coding stuff. Im not trying to tell you what to do, i just dont understand the situation is all.
As a counter argument: Here in Denver, the NFL star quarterback John Elway is now GM of the Broncos, and from what I hear, doing a talented job of it. Both John and Brad have used one set of skills to find opportunities to learn, hone, and excel at other skills. Much of life is about moving on, not losing the previous successes, but making new ones.
But yeah, I still feel we were lead to believe that GalCiv would be a major interest of Brad's if not the major interest, but that Sorcerer King and other projects have taken that position instead. I support Brad growing in his life and career, and it's not like he is going anywhere, but I still feel I will miss him on this project.
Obviously, we need to learn more about Allan so we can bug him to death and keep him from getting any productive work done, either.
How's that for an AI coding incentive? Just be careful you don't get caught up in the positive feedback loop
I'll also second the call for more script hooks. Modders can do some crazy stuff if you expose enough of the game to scripting...
If I had to guess, though, it's probably not that easy because GC3 should support running 100 AIs on huge maps, so perhaps every little script call could put that at risk if it's not properly engineered.
How's that for an AI coding incentive? Just be careful you don't get caught up in the positive feedback loop I'll also second the call for more script hooks. Modders can do some crazy stuff if you expose enough of the game to scripting...If I had to guess, though, it's probably not that easy GC3 should support running 100 AIs on huge maps, so perhaps every little script call could put that at risk if it's not properly engineered.
There are a lot of ways you can accidentally break the game, make a tech age before/between one or more tech age(es)but forget to put anything in it for example, just because someone could mod something badly , shouldn't even get factored into the "would this be a god thing for modders" question
real intelligent AI (not just components that don't coordinate in any optimal way) is a very hard problem
simple modding can influence the scripting of individual components, but to actually write something that assesses the entire gamestate and decides what to do (like a "player"), you kind of need an API (eg. BWAPI) or SDK (eg. civ4)
even with those tools, it's hard to imagine how there would be a good AI that gets written for free. only starcraft 1 got stuff done 10+ years after release because of a few organized efforts (mainly for universities), but even that stuff is only strong because the AI has infinite APM, not because it plays intelligently.
even turn-based stuff as popular as civ can't attract AI modders to really make it play competently. but chess got a lot of attention because "man vs machine" and beating the world's best player was a milestone in computer science, just like sending a human to the moon and back home was a milestone in human achievement
Obvious Troll is obvious.
This is the umpteenth thread by Mari on this topic. Your complaints are loud and your useful feedback is almost zero.
There are many great features available to you once you register, including:
Sign in or Create Account