• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.
Symmetry said:
In terms of wars at least, there are some pretty easy answers to that. EU is actually turn based on the day to day level. In general there are far to many possible actions per day to make tree searching practical, but if you restrict yourself to just looking at troop movement, and only include branches for a unit when it arrives at a destination the problem becomes pretty tractable. Include some good rules for judgeing states, use a progressive deepening search with the normal alpha-beta, and it ought to work pretty well.
You're right. I wouldn't be surprised if Viky or HoI2 did something like this already to handle their more sophisticated military maneuvering. However I meant in the general case - including things like economics and diplomacy.
Maschadow said:
One dont have to run full cycle of AI for every X-stan. Only the bigest players need full AI.

Smaller countries should just react to others actions, and dont think by themselfes. Call them prey countries or whatever.
One of my favorite things about EU2 was that, because there was no real gamerule stopping it, occaisionally a minor could get out of control and become as big as the majors. I'd be very disappointed if that kind of randomness was removed.

The problem was that when a major was eaten the effect rippled because it would do things like leave countries unconquered, areas uncolonized, etc. The obvious way to mititgate this is to have the "peaceful.ai" minors switch to some kind of generic "conquerer" or "areaX_colonizer" if they manage to somehow grow extraordinarily large or gain a large coastline.

If I wanted this thread to rapidly grow out of control itself, I could call it "situational ai." :cool:
 
Sonny said:
That is just for one army. Maybe there are enough armies in the game that this happend every day or every other day.

Thats why you only recalculate for local and relevant arrivals. If France and England are fighting around Calais, they shouldn't care about what Spain is doing in the Netherlands, nor should French armies recalculate based on the movement of English armies north of the channel.
 
Symmetry said:
Thats why you only recalculate for local and relevant arrivals. If France and England are fighting around Calais, they shouldn't care about what Spain is doing in the Netherlands, nor should French armies recalculate based on the movement of English armies north of the channel.

For each country every place they have troops is local and relevant. While France or England may not care about Spain in the Netherlands (though they should) the AI for Spain is still cranking out its decisions while the French and English AI are doing their calculations - as are all the countries in the world.
 
Sindai said:
The problem was that when a major was eaten the effect rippled because it would do things like leave countries unconquered, areas uncolonized, etc. The obvious way to mititgate this is to have the "peaceful.ai" minors switch to some kind of generic "conquerer" or "areaX_colonizer" if they manage to somehow grow extraordinarily large or gain a large coastline.

If I wanted this thread to rapidly grow out of control itself, I could call it "situational ai." :cool:

Well to use such general AI you need evts that could be checkekd for gegraphical regions and pass results of check as argument of events efect.
Say you could ask for strongest nation(defined as something that has only
holdings tehre or it also has capital tehre) in England and then set it's
preferd areas of colonizatos/conquest.
And tehre is on functionality neede for generic or just more flexible
specialised AI, abity to tell it with geographical regions to conquest/vasalize
as it's mow you can set only nations with is kind of bad in long secrions
becouse of potetialy fuild situatin owner or wners of gegraphical region may
chaged but objective to get certain region would remain. ie .. it's quite good
for unified France to try atack and conquets geographical region of Germany
regardeles who is holding it. Hm.. tehre is anotere fuction with could help ..function that woule evaluate whole gerpahical region under angle of boost it
would give to nation if it would be anexed it would be good for setting
priorites for conuest oriented AI.
 
Chess is far too complex a game to be solved. There are literally so many possible combinations of moves that the number cannot be written down except in scientific notation, there are 64 possible squares and each square can have either a white or black piece and that piece can be either a pawn, a rook, a knight, a bishop, a king or a queen, the fact there can be only a limited number of peices on the board only adds to the processing time which is why you can setup a board however you like and older engines won't bat an eyelid as its simpler just to evaluate all possibilities, now you cross multiply all those factors and then multiply by the possible number of turns, including repetitive moves which end in a forced draw (otherwise there are infinite possible games). No computer existing today, even the most powerful super computer, is capable of solving chess, this is a fact - heck they only recently solved checkers which only has 32 squares and only two types of peice, one of which can only move to two squares (or one if they're forced to take). The best engines can do is evaluate something like 20 moves deep and even then you'll be tapping your foot waiting for the thing. They play using a book of predefined openings which they follow provided the opposition uses a conventional opening/ response. Once the game inevitably becomes unique it switches to a tree based solver that has to evaluate all possible moves, hence the wait and the very limited depth. I used to be able to see 5 or 6 moves ahead but this is not because humans evaluate all possible moves but because they evaluate the most likely moves only, and at the higher levels you cannot fool your opponent, you have to outwit them by creating a series of moves that ends in the unavoidable checkmate of their king, often due to a seemingly innocuous move in or soon after the opening. The best modern chess engines don't even try to do this anymore because not only is it impossible, it's also really inefficient. Heuristic based problem solving is far more effective for problem spaces with such huge fields, and even more so for continuous problem spaces where the tree is branches so quickly. Neural networks are the best heuristic problem solvers we know of, I mean the same principals are how all animals learn, including humans. These newer engines wipe the floor against older tree based solvers. I've played around with them in unity and I can tell you they're extremely easy to implement and they solve many problems you'd otherwise need to dedicate a lot of resources solving in a more conventional manner. This same technology is now beating professional dota 2 players.
 
Another problem is thread necromancy, specifically the act or resurrecting a thread that's been dead for 16 years, rather than opening a new topic. The moderators here HATE that.
 
Another problem is thread necromancy, specifically the act or resurrecting a thread that's been dead for 16 years, rather than opening a new topic. The moderators here HATE that.
16 years is nothing on the cosmic scale, just a few moments...

Since it's AI thread, and you are the only human left alive in EU3 halls (person above certainly is a powerful undead Necromancer), I have a question for you.

Do you know in which files I should look into to change AI variables?

I want to force Natives (like Incas) to colonize. They already have Colonists, but unwise Sapa Inca refuses to expand his Empire, as he should be. For my personal minimod. Just this simple (?) change.
 
16 years is nothing on the cosmic scale, just a few moments...

Since it's AI thread, and you are the only human left alive in EU3 halls (person above certainly is a powerful undead Necromancer), I have a question for you.

Do you know in which files I should look into to change AI variables?

I want to force Natives (like Incas) to colonize. They already have Colonists, but unwise Sapa Inca refuses to expand his Empire, as he should be. For my personal minimod. Just this simple (?) change.
Sorry, I've dabbled with a few files and variables here and there "back in the day" on a VERY limited basis, but that wasn't too long after this ancient thread was created. I simply don't remember. At this point, it would be pure luck to have someone who knew and still remembers the details about modding this game. You might consider starting a new thread with your question, either here or in the mods sub-forum, which might draw attention from the right person.
 
  • 1Like
Reactions: