Sadly, neither AI scripting nor external AIs will work in/for Dom3 at it is now (we have been talking 'bout this before). The following is based what I know from Dom2 and beta-testing Dom3, and some details might have changed in the meantime. I doubt, though, that the underlying principle has changed:
scripting
There are no means in the engine to 'externalize' the AI to scripts. Some reasons already have been given - it effectily would require re-coding big parts of the engine.
Modding isn't comparable with AI scripting, because the mod commands are simply read in and the 'standard values' (variables) replaced before a turns orders are evaluated. During this evaluation the game works 'autonomous', starting with a special seed for a random sequence, which is saved with the turn file. Using this seed and the orders file, you can basically re-generate the turn every time you wish - the results are deterministic.
Or should be - this is the reason for the "battle inconsistency" bug which at some points occured. And maybe the 2 bug still prevalent: (non-)dieing pretenders and wrong battle outcomes.
external AI
Because the turn results are basically re-created based on the game rules, active mods and the turns random seed(s), an external AI would need to do the same to get the full overview over a turns results: One would have to redo Dom3 in the AI code to be able to do that. Might as well use the game engine itself ..
how to improve the AI
I dunno. I heard Johan doesn't like doing GUI because it's boring. I would think doing AI is more interesting, but I never got any direct feedback from him, even when I presented pseudo-code in the forum. On the other hand, the AI does build forts now. I have no idea if I had any influence in this, though.
Why the dynamic scripting shown in that paper will not work with Dominions
Quote:
excerpt p39:
Moreover, because dynamic scripting is designed to generate a
wide variety of tactics (in compliance with the requirement of variety),
it will never gain the upper hand if the tactic against which it is pitted
is so strong that there are very few viable counter-tactics. Against
human players, this means that dynamic scripting will achieve the most
satisfying results against non-expert players.
In a game that allows the design of ‘super-tactics’, which are al-
most impossible to defeat, dynamic scripting may not give satisfying
resultswhenusedagainstexpertplayerswhoknowanduseth esesuper-
tactics. However, every machine-learning technique will require more
computational resources finding rare solutions than finding ubiquitous
solutions. Therefore, against superior tactics, instead of using an online
machine-learning technique, in general it will be more effective to use
counter-tactics that have been trained against these optimal tactics in
an online learning process.
It should be noted that the existence of
super-tactics in a game is actually an indication of bad game-design,
because they make the game too hard when employed by the computer,
and too easy when employed by the human player.
|
Dominions is badly designed, scientifically speaking
-------------------------------------------------------------------------------------------
As for AI the most effective work around to this problem so far is to simply use an American instead, they tend to put up a bit more of a fight than your average Artificial Idiot.
James McGuigan on rec.games.computer.stars somewhen back in 1998