• 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.

Mindel

AI Chatbot
2 Badges
Jan 23, 2018
2.232
10.914
  • Imperator: Rome Sign Up
  • Crusader Kings II: The Old Gods
While it is nice to see CK get a much-needed refresh with new graphics and new systems, I feel that the heart of the game is about the interactions you have with the characters in the game. That is, the AI. Even the best system with poor AI would not be very fun to play. I would hope that years of experience with CK2 would have taught the developers how its behavior can be improved to act more intelligently.

One of the things I personally dislike about CK2 AI is how characters have no sense of long-term goals; they do things from one day to the next based on modifiers and probabilities, but with little connection to previous or future events. Whether you got into a fistfight with someone as a kid, or whether you murdered their child, they rival you. If you get an event that removes the rivalry and improve relations enough, they will like you again. I feel that this is too simplistic. Bribing someone to forget a fistfight sounds reasonable; forgetting a dead child is not.

What kind of changes will be happening under the hood here? Personally, I think this would make for a great DD topic. My big question is: is there a good developer design for an AI which acts with long-term goals in mind?
 
I wrote a bit about my thoughts on this subject in another thread, maybe it is of interest for some people here too:

https://forum.paradoxplaza.com/forum/index.php?threads/posthumus-children.1304587/page-2

I like the idea you gave here. The main problem I thus see is the AI. Paradox ai isn't neccesarryly bad, but it's also nothing to write home about, especially in CK2. We should keep in mind, that we haven't seen any CK3 AI yet, but I really hope that it will be more "competent" in lack of a better word than the CK2 AI.

I mean this in a technical sense, not as beeing the characters being more succesfull in their plots or whatever, but what is mainly lacking in the CK2 AI is a goal or drive mechanic. Up to this point, the chracter AI does everything based on some factors, mainly how much they like other characters and how powerfull they are. Just a quick example:
A vassal has chance X every month to start a plot. If this happens, the available plot with the highest factor is selected. (kill target Y if character dislikes them or gains title or raises in succession, modified by some value for greedy or ambitious people and so on).
This system is totally chance driven. After a certain time, the variables are considered and a random chance is generated.

What we need for interesting characters, good regents and good plotting is an AI system which isn't totaly chance based but formulates a (temporate) goal for the characters.
Example:
Vassal Vassili has come of age and has inherited the lands from his father(1 province). What does Vassili strife for? Is he ambitious? he might want more land or a higher rank (or both). Let's assume vassili is unmarried, ambitious, greedy and has some decent stats in diplo and intrigue, normal in martial, the rest is not great. His main goal is to aquire a new province next to his own land, that would be enough to become a duke. He has 2 provinces to choose from (as the duchy has de jure 3 provinces, and he needs at lest 50% to even think about becomming duke). So his main drive is getting to become duke. First temporal drive is to get one of the two provinces. Because he is greedy, the richer province is more interesting for vasilly. because he is best in diplo and intrigue he will consider mainly diplomatic actions or plots to solve his drive. Such a diplo action could be, to marry the daughter of the current holder of the other province(avieving this is another temporal drive, impressing the daughters father to allow the marriage), to get the weak claim on his side. then killing of her brothers because of the intrigue (another drive here). Or he might search a favor with their liege to get the title, or .... .

As you can see, and goal driven AI makes for more complex and interesting characters. If we don't have these, then a regency isn't that bad (or good) in any case, because the AI regent won't really do anything, except if he hates the current heir.

Another short example:
The daughter from earlier: Daisy. she is also ambitious and has good intrigue, the rest of her stats are nothing great. But she dislikes her family/dynastiy and hates her two brothers. As she is a women, she knows she can't inherit directly, but gets a claim if all her brothers die. As she can't hold power directly, she needs someone who can get her the power she want's and the best thing she can do is marry. so if she learns from vassili's ambitions, she tries to get that marriage happen (positive factor for marriage request acceptance, based on how much her father or direct liege likes her), and then helps vassiliy to get the province. depending on culture, laws and so on she might even request then to rule the province as vassilies vassal, or one of the holdings in it. Their heirs will get bot of their lands nontheless.

I think I got the idea across, and won't go any deeper into the matter here.
 
It's a bit tricky, since at the end of the day, the AI can only do what it's programmed to do. So it's more about clever ways to make it look like that programming manifests itself to APPEAR natural. But it can never be more than appearance - ie in your mind - that what it's doing is natural. So we have to temper our expectations a bit and use our creativity more.

Take Seduction focus in CK2 for example. It should mean that one of that characters primary actions is seduce, but then you get ridiculous situations where it's having sex with all 100 noblewomen around him. So it doesn't feel realistic. Because he's just a pure sex maniac and there's no logic to who he's trying to seduce. It sounds like in CK3, they're trying to tie it more to abilities/events. So only super seducers can perform some actions, and the rest of the time they're still building their capability. It sounds helpful from a realism standard.

In terms of loyalty, in CK2, it was all fixed modifiers with a time limit. And now it looks like they're adding decay which is helpful for gradations. In other words that 50 malus won't just disappear one day, but instead decay to nothing over time.
 
It's a bit tricky, since at the end of the day, the AI can only do what it's programmed to do. So it's more about clever ways to make it look like that programming manifests itself to APPEAR natural. But it can never be more than appearance - ie in your mind - that what it's doing is natural. So we have to temper our expectations a bit and use our creativity more.

Take Seduction focus in CK2 for example. It should mean that one of that characters primary actions is seduce, but then you get ridiculous situations where it's having sex with all 100 noblewomen around him. So it doesn't feel realistic. Because he's just a pure sex maniac and there's no logic to who he's trying to seduce. It sounds like in CK3, they're trying to tie it more to abilities/events. So only super seducers can perform some actions, and the rest of the time they're still building their capability. It sounds helpful from a realism standard.

In terms of loyalty, in CK2, it was all fixed modifiers with a time limit. And now it looks like they're adding decay which is helpful for gradations. In other words that 50 malus won't just disappear one day, but instead decay to nothing over time.

The first part is exactly the point. We of course don't want a 'real' AI (we really don't want skynet to rise and learn from CK players, that would make terminator much mor scarry (and definitly rated like 21+)).

But a game, which is based on characters and their decisions needs a good character ai. And there I personally have my problems with the whole random and some modifiers approach to character ai from CK2. It makes the characters very limited in their actions, and to some degree predictable. We as players can often see very quickly how an character will act, just by knowing his traits and values. When was the last time a CK character did something that made you 'Of, I didn't see THAT comming'?

I can see, why paradox did use the CK2 approach to ai. But I also think, that nowdays they can do better. The ai development for games has come a long way. The major problem I see, is that AI will not be getting the attention it needs, because its not a good selling point. You can't make nice flashy pictures of it. And it is expensive do develop a good AI. But it's like an IT department in a company: The best IT department is that, that no one knows it exists. The same is with AI. Good AI will not be noticed by most players, but a bad AI will make a lot of people loose interest quickly. And with all paradox games, they need that player engagement over a long time.
 
The first part is exactly the point. We of course don't want a 'real' AI (we really don't want skynet to rise and learn from CK players, that would make terminator much mor scarry (and definitly rated like 21+)).

But a game, which is based on characters and their decisions needs a good character ai. And there I personally have my problems with the whole random and some modifiers approach to character ai from CK2. It makes the characters very limited in their actions, and to some degree predictable. We as players can often see very quickly how an character will act, just by knowing his traits and values. When was the last time a CK character did something that made you 'Of, I didn't see THAT comming'?

I can see, why paradox did use the CK2 approach to ai. But I also think, that nowdays they can do better. The ai development for games has come a long way. The major problem I see, is that AI will not be getting the attention it needs, because its not a good selling point. You can't make nice flashy pictures of it. And it is expensive do develop a good AI. But it's like an IT department in a company: The best IT department is that, that no one knows it exists. The same is with AI. Good AI will not be noticed by most players, but a bad AI will make a lot of people loose interest quickly. And with all paradox games, they need that player engagement over a long time.




I wonder if it would be an idea to have a few (eg 3 or 4) different AI engines.

the idea would be that if one AI engine has some shortcomings, then if you had several other very different AI engines controlling the rest of the AI characters, then the weaknesses may not have as much chance of ruining the game for the human and it would seem like there is not just one way the AI reacts.
 
I wonder if it would be an idea to have a few (eg 3 or 4) different AI engines.

the idea would be that if one AI engine has some shortcomings, then if you had several other very different AI engines controlling the rest of the AI characters, then the weaknesses may not have as much chance of ruining the game for the human and it would seem like there is not just one way the AI reacts.

I don't think this is feasible. To get 4 different ai engines up and running, which are different enough to make an impact, you would need 4 different ai development teams, and make sure they don't talk in their free/lunch time about what they are doing. Programming is to a large degree a creational process, so if someone comes like "we made this, and it works great for this and that reason" it is hard to not go back to your own work and be like "yeah, I'm totally stealing this idea".

I would rather settle on one good engine than 4 mediocre ones. AI development is hard. Good AI development is even harder. Splitting the available resources is most of the time not a good idea, except if you have an abundance of really great staff. And even then, together they would be able to achieve much more, than individually.
 
Lots of games sell themselves on the impact your choices make. I think improved AI would be an addition to that pitch. As for the AI surprising me, well there's the whole thing of 17-year-old atractive princesses getting nocked up by 50-year-old hunchbacks, but I would not count that as a positive surprise.
 
I wonder if it would be an idea to have a few (eg 3 or 4) different AI engines.

the idea would be that if one AI engine has some shortcomings, then if you had several other very different AI engines controlling the rest of the AI characters, then the weaknesses may not have as much chance of ruining the game for the human and it would seem like there is not just one way the AI reacts.

An AI always comes supplied with a weight datum, which tells it what its priorities should be.

Initialize your AI with four different weight data, and you will get four different kinds of behavior.