A Better AI.

Another thing I thought of was making the AI put more weight on techs which would be good trade fodder (probably with a random factor involved) to help defeat the human tactic of researching good trade fodder...
Too evil?
Hey, this is nice, I was thinking about suggesting this. You should absolutely do this. I think one of the dirtiest gambits in Civ4 is to research "trade fodder", as you call it, merely for the reason of getting good trades to keep up in tech.

Anyway, if done properly you will eliminate the trade fodder phenomenon completely if the AI starts to cleverly pick their research targets (Alphabet comes to mind, this is a useful tech in any case, yet the AI does research it very late). If the AI starts researching known "trade fodder", this would be a meta-decision based on the knowledge the AI programmer has about human tech trading behaviour. I don't think it would be in the spirit of the game or in the spirit of seeking to make a good AI. The real deficiency is the lack of knowledge about valuable techs in some areas, so if you attack this you will eliminate the trade fodder problem as a side effect.

I hope I could make myself reasonably clear here ;-).

--Sigi
 
Another thing about starting points.. please do not make them too balanced.. starting on extremely good sposts or poor ones adds variation .. if you always start in a balanced spot you will soon get bored.

Mhm.. considering this is outside the main goal of the mod... maybe it could be made optional?

I agree. I actually don't like balanced starting positions at all.

This may be due to my playing style. Balanced starting positions are a must for MP, but I play only SP. Also, I play with many civs (usually 24 civs on an XXL (larger than huge) map). So if there are varied starting location qualities, then some nations will have an easier game while others may face difficulties. This is okay as with 24 civs on a map, there is no problem when a few of them are shorthanded, and others are favored a little. It only adds variety to the game.
 
Iustus, Blake,

There's something funny going on with AI stack attacking in the most recent build. I've attached a save for you to see for yourself. When you load up this game, focus on my beleaguered city of Madras which has a large Russian stack based outside attacking it each turn. Basically the problem I'm encountering is the AI will only attack with the siege weapons in the stack (i.e. trebuchets or cats). None of the other units (knights, crossbowmen, etc) ever attack the city. Essentially the outcome is the AI takes Madras but it could take it turns before it eventually does, simply by using all of the stack's units.

We are aware of this problem. A fix went in for this quite some time ago, but unfortunately, it did not work under all circumstances. If you turn off watching battles, then the AI will correctly stack attack. (Incidentally, this 'fix' also broke stack attacking for human players).

We should get a real fix for this by the time of the next patch. In the meantime, if you turn off watching detailed battles, you will get better behavior (not a great fix, I know).

-Iustus
 
I have always thought that some number of the strategies should be enabled only on higher levels. For example, the "dagger" strategy should not happen on the two easiest levels. If a new player starting out gets "daggered", they won't be prepared for it; they will lose the game and declare it "not fun".

Things like the frequency that an AI decides to implement dagger are going to be adjusted. The rate was intentionally set quite high, so as to get better testing. As we move toward a 1.0 build, we will set the rate at a more reasonable level. We can probably also key into the year that animals vanish (which is different for different difficulties) as a way to cause daggers to appear later in easier games.

-Iustus
 
I'm seeing this as well, and it's not good. The AI won't attack without siege, and when it does attack, it will frequently use siege only; it's saved me from certain defeat, but I don't think it's supposed to be that way :) .

This is exactly the problem I was mentioning before. We are aware of the issue.

For those more technically minded:
Spoiler :

Each unit has what is called a "UnitAI". This can be city defense, attack, city attack, counter, etc. When a big stack is built, it follows the UnitAI of the head unit. Even though they themselves may not have the same UnitAI. So you can have a Longbow in a city attack stack, even though the longbow has the city defense UnitAI. By default, archers and longbows are city defense, seige weapons are city attack, and most other units are attack.

The problem is that when stack attacks are not working right, then the units which themselves do not have the city attack UnitAI do not always attack. Even the attack units might not attack.

If you see this occur, and you are using chipotle, take a look at the remaining units, I suspect that none will have the city attack UnitAI.

The alternative is that there were heavy losses, and the AI no longer thinks it can win.


-Iustus
 
Building with Eclipse?

I've built the trunk with MVSC++ Express, but the lack of a subversion plugin in the "Express" product makes that a nonstarter for me, and I don't have a job where there are free copies of the whole Visual Studio shebang lying around (and hopefully never will have that job).

Has anyone built the DLL with Eclipse? It's not like I'm an Eclipse bigot, but I know how to use it well, and it plays nice with svn.

I assume you have read this thread on Installing and using the SDK

I am not familiar with Eclipse. But, you should not need a SVN plugin for your IDE to get work done. Even though there is a SVN plugin for Visual Studio, I do not bother to use it. Tortoise works great for me. The only slightly inconvient thing is when you are coding and you want to quickly know what was changed at a particular time in a particular place in code, but even that is not that hard to track down using Tortoise.

-Iustus
 
Haven't installed 12-02 yet. My latest is whichever was the one before it... 11-26 or smth?

When I hover over my name on the scoreboard, and then hold ALT, I don't get the == Better AI == message, but if I hold ALT and then hover over the scoreboard, I do get it. Is that normal?

Yes, that is how it is designed to work.

Was this some ploy on Alex's part to feign a 'phoney-war' and fooled Ghandi into thinking that no defense was necessary? Or is it just a present inability of the AI to succesfully defend against these AI war-machines we've now created?

No. The AI has the concept of limited and complete wars, but neither is what you could call a true 'phoney war'. Those happen as a result of troop levels without real intention on the part of AIs.

Gandhi as always built weak defenses. Were you running chipotle? Did Gandhi start to build units when war was actually declared? He should have, at least in cities that were not building wonders. Wonder builds continue until troops are actually threatening a city.

-Iustus
 
Don't worry, it wont be too balanced.

In fact as I said the old start point normalizer would pull up start points to 3/4 of the best, while mine goes to somewhere around 3/5ths...

Here's basically what I've done:
1) I've increased the weighting of land - basically any site with less than 12 land tiles starts getting penalized.
2) I've added a penalty for bad tiles in the greater fat cross - if there's A LOT of such tiles the site will get penalized. Jungle is technically bad but only counts half because it can be cleared.
3) I've added a bonus based on distance to other starts, if the site is more distant it scores more highly. VERY close sites should score very lowly and thus not get chosen (you'd think this component would be in the original code... but no...), this component does not factor into the start point normalizer.
4) The capital site probably wont deadlock any resources, when this happens it's "unfun" and it messes with the AI, so I discourage it.
5) I've simply forced it to not add more than 2 coast seafood and 2 ocean seafood.
6) I've buffed up the "Remove bad Terrain" and "Remove bad Features" normalizers to do more than the fat cross.

Here's a couple of extreme examples... I created these by doing standard cold continents with 12 civs (normal is 7), it's fairly reluctant to put civs in the cold:
I call this the "Greenland Effect":

morebreathingroomqs4.jpg


What you get in effect is a green coast with some cleared coastal water, instead of having the fat cross alone cleared. I think this looks less silly than the fat cross alone.

The same thing here:
morebreathingroomforspauv6.jpg

This isn't an extreme example, but before the normalizer this site would've been more icey.


Because I've changed the terrain upgrading code to sometimes turn Tundra -> Grassland you can end up with starts like this:
awesomelyimbaci0.jpg

Grassland forest furs imba? Possibly...
Is it a bad thing that a polar start can be good? I could specifically prevent this case from occurring then again it's not like this start is better than a river rice 2 river gems and bananas type start... or a double pigs plus plentiful hills type start...

Anyway nothing has changed in the most recently uploaded build (last weeks), with this stuff it's really easy to see trends which don't exist.
 
I assume you have read this thread on Installing and using the SDK

I am not familiar with Eclipse. But, you should not need a SVN plugin for your IDE to get work done. Even though there is a SVN plugin for Visual Studio, I do not bother to use it. Tortoise works great for me. The only slightly inconvient thing is when you are coding and you want to quickly know what was changed at a particular time in a particular place in code, but even that is not that hard to track down using Tortoise.

-Iustus
I'm used to having instant, editable diffs against the repository in an IDE now. :( Eclipse's configuration management integration is very good. The question I will have to puzzle out the answer to is whether I can build Windows DLLs using the Eclipse IDE and in particular using the Visual Studio SDK (libraries + headers).

There are some diff utilities and editors that work well with svn, but not having direct access to older revisions, or branch revisions, in an IDE is a bummer once you've started to get used to it. Middle grounds annoy me. I either want the good stuff, or plain old (n)vi.
 
Don't worry, it wont be too balanced.

In fact as I said the old start point normalizer would pull up start points to 3/4 of the best, while mine goes to somewhere around 3/5ths...

Here's basically what I've done:
1) I've increased the weighting of land - basically any site with less than 12 land tiles starts getting penalized.
2) I've added a penalty for bad tiles in the greater fat cross - if there's A LOT of such tiles the site will get penalized. Jungle is technically bad but only counts half because it can be cleared.
3) I've added a bonus based on distance to other starts, if the site is more distant it scores more highly. VERY close sites should score very lowly and thus not get chosen (you'd think this component would be in the original code... but no...), this component does not factor into the start point normalizer.
4) The capital site probably wont deadlock any resources, when this happens it's "unfun" and it messes with the AI, so I discourage it.
5) I've simply forced it to not add more than 2 coast seafood and 2 ocean seafood.
6) I've buffed up the "Remove bad Terrain" and "Remove bad Features" normalizers to do more than the fat cross.

Is this in the 2.08 patch (without your extra DLL)?

Regardless, your efforts to improve the start position is really great! I try regenerating a map on Highlands in (no AI mod) Vanilla and get a bazillion ice/tundra starts. Highlands starts are definitely better on Warlords now. Good job!

So Mr. Blake can I thank you for Highlands starts like this?
Spoiler :
Settings: Prince, Standard size, Highland, Epic, No Barbarians, No Vassals
diabeteslj7.jpg

(save here, HOF MOD 2.08.002 required)

P.S. Don't you get plains/grassland forest furs/deer on Great Plains anyway? :lol:
 
Is this in the 2.08 patch (without your extra DLL)?

Regardless, your efforts to improve the start position is really great! I try regenerating a map on Highlands in (no AI mod) Vanilla and get a bazillion ice/tundra starts. Highlands starts are definitely better on Warlords now. Good job!

So Mr. Blake can I thank you for Highlands starts like this?
Spoiler :
Settings: Prince, Standard size, Highland, Epic, No Barbarians, No Vassals
diabeteslj7.jpg

(save here, HOF MOD 2.08.002 required)
:lol:
NOTHING in this thread is in 2.08. It's all post-2.08 work.

Regarding Highlands, in 2.08 the start point code DOES value food more so it's more likely to give you a proper start with Highlands.

What makes highland special is that the start point normalizer DOESN'T run.. or atleast not all of it...
There are 8 normalizing functions:

normalizeAddRiver(); (only runs if no fresh water)
* normalizeRemovePeaks();
normalizeAddLakes(); (only runs if no fresh water)
normalizeRemoveBadFeatures();
* normalizeRemoveBadTerrain();
normalizeAddFoodBonuses();
* normalizeAddGoodTerrain();
normalizeAddExtras();

The ones marked with an asterisk do not run for Highlands. That means on highlands you can start with bad terrain, what's more because "addFoodBonuses" only adds bonuses valid for the terrain, if you're all ice/tundra you only get deers for food, unless you're lucky enough to have water in which case you might get fish. In the worst case with all ice you might get no food bonus at all.


P.S. Don't you get plains/grassland forest furs/deer on Great Plains anyway?
Highlands, Great Plains, Oasis and Fantasy Land (possibly another too) don't use the normal terrain generation functions, as such it's possible to get unusual stuff like desert forest (GP) or desert wheat (Oasis), or grassland forest deer (GP) or Ice Floodplains (Fantasy Land). These are generally considered novelty maps though, so what is possible on them shouldn't be considered to be proof that something is normal...
 
Hi,

Against my own judgment I have decided to rebalance the Starting point code so it no longer matches the 2.08 code but should give more reasonable starts, with the "seafood madness" starts being much rarer.
Blake, you're doing a fantastic job with improving the AI. And of course you're right - it's your project, so you can do as you please.

However, I as an end user would much prefer this to remain an "Improve AI" project, not an "improve CIV" project. I would like to install this mod to get a better AI, nothing more, nothing less. For now, I like the rest of the game as it is - and maybe disagree with particular changes of yours like those to the starting point code. I don't like mods that try to change more than one area of the game, and most probably won't use those. It might even badly surprise people who do not follow this thread so closely, who download the mod with the assumption it's only improving the AI (heck, it's even called "better AI"!) and get annoyed if they notice that there are other changes in it as well.

Couldn't you just open up another project to put your general changes into? People could then install both if they want; you could offer both mods seperately plus a merged version of it, for example.

Please, do not dilute your focused and brilliant work!

-Kylearan
 
Great work on the AI. I finally can play and be challenged to a degree without feeling like I have to throw the AI's all kinds of fudge-factor bonuses!

The AI appears much better at developing finances, but the later builds seem to leave the AIs with far inferior production. I dont know if this is because they are chopping all their forests or what, but I almost always seem to be in the production lead by a large margin (even if I'm not leading in tech or GNP etc).

In turn, this lets me fairly easily dominate the Industrial+ Age wonders. It also puts the AIs at a severe disadvantage when at war since even the best of the AIs tends to have a Productivity of less than half of my own.

Is this intended behavior? Is it felt that Wealth/Research is always superior to Production? Pre-Warlords, this may have been the case, but with the 1 for 1 conversion of production into cash/research/culture, it doesnt always seem to be a superior way of doing things.

BTW, I had Mansa win a Cultural victory using the 11-26 build! I had never seen the AI even get close before so I never even noticed until the 2nd city hit Legendary. By that time, the 3rd city wasnt far behind and I wasnt able to get an expeditionary force to his land in time to prevent the win. In my current game, Hatty is obviously aiming for a cultural victory (Late Industrial and she has 3 cities in the 40k range (on Epic). This time, however, she wont be left in peace to take the win! Great job with getting the AIs to go for this victory condition!
 
Hi,


Blake, you're doing a fantastic job with improving the AI. And of course you're right - it's your project, so you can do as you please.

However, I as an end user would much prefer this to remain an "Improve AI" project, not an "improve CIV" project. I would like to install this mod to get a better AI, nothing more, nothing less. For now, I like the rest of the game as it is - and maybe disagree with particular changes of yours like those to the starting point code.

I don't like mods that try to change more than one area of the game, and most probably won't use those. It might even badly surprise people who do not follow this thread so closely, who download the mod with the assumption it's only improving the AI (heck, it's even called "better AI"!) and get annoyed if they notice that there are other changes in it as well.

Couldn't you just open up another project to put your general changes into? People could then install both if they want; you could offer both mods seperately plus a merged version of it, for example.

Please, do not dilute your focused and brilliant work!

-Kylearan

As I said I made the changes against my own judgement (do I ever sound like a crazy person or do i need to try harder?? hrmmph).

The fact is though that my changes, in part, screwed up the starting point code for the 2.08 patch. In part that was because when I made the changes I didn't quite understand how the starting point code was coupled with the AI code. For that matter the start point normalizing code is also coupled with the AI code because it uses the AI function to assess the strength of the starting point.

It's a tricky thing, where changes to the AI changes gameplay in a way not not tied to AI behavior. If I knew exactly what I was doing from the very start I probably would've properly decoupled the start point code from the AI foundValue code. But I didn't know and what was done was done.

I can make two promises: Firstly, this doesn't set a precedent. It is a special, and rare case where AI code is coupled with gameplay code, in earlier cases things got screwed up, I have then fixed that and taken the liberty of making some more improvements since I'm not about to return it to the lesser of two brokens.

Secondly, I promise that it will be saner, fairer and on average probably not easier. The best starts will not be touched and even bad starts may be upgraded less. The goal is greater sanity and fairness as is commonly perceived and can be reached by consensus - no-one really thinks that a "Fish madness" start is sane, fair is questionable. No-one really thinks it's sane to have 3 players packed along a peninsula (with one so jammed in they are unable to settle) and that's definitely not fair - that's not a judgment call on my part, that's just not sane or fair.

The reason I went against my own judgment, all rationalizing aside, is that the frustration had gone critical, both with players complaining about ******** starts and then when I saw 3 AI's stuck along an L shaped piece of land jutting out, such that 2 were locked in, with the one on the end being blocked in by 2 civs, while on the map vast swathes of land were unclaimed - it's less about fair and more about preventing absurdity.

I also honestly believe that the vast majority of players will enjoy this change. If a few refuse to use it, then too bad. It's for the greater good.

I have however ensured that it's relatively trivial to make a build without the start point changes if there should be overwhelming desire and anyone with the SVN know-how and a compiler could do so.

There is one final point - if you REALLY want stock starts, you can start a game without the DLL, save it at 4000BC, and then play from the 4000BC save with the DLL. So if for instance there's a comparison game where you REALLY want stock 2.08 start points it's really very little effort to do that. And I absolutely cannot fathom why anyone would want to stick with the 2.08 stuff for their private games.
 
I assume you have read this thread on Installing and using the SDK

I am not familiar with Eclipse. But, you should not need a SVN plugin for your IDE to get work done. Even though there is a SVN plugin for Visual Studio, I do not bother to use it. Tortoise works great for me. The only slightly inconvient thing is when you are coding and you want to quickly know what was changed at a particular time in a particular place in code, but even that is not that hard to track down using Tortoise.

-Iustus

After a little more reading and experimenting I think I might be able to get WinMerge to do some of what I want. I'm looking at WinMerge diffs of the trunk and firaxis branches and they're informative. :)

I was thinking about looking at the Great General and military building code and seeing whether there's a save-file-compatible way of getting the AI to do a better job creating military buildings and instructors. I don't know whether the AI keeps track of a city with the role of "military complex" (as I've started calling it) during the game, but I don't think it would have to save that anyway. It could find one when a game is started/loaded, and if necessary re-evaluate that choice periodically.

Another thing:

I think the "explore" AI is pretty poor. Here are some things I'd change in the early game behavior:

1) Find river tiles that are in the fat cross of the capital, and explore those rivers to their ends, as the highest initial priority
2) Explore in an expanding spiral pattern around the capital rather than forge out randomly into the wilderness (as appears to be the case now)
3) Make sure the surrounds of Really Good Spots are explored - rivers, cows, strategic resources, s on
4) Survey more of the boundaries of found civs

This is from the player standpoint - if I automate a couple of scouts I'd like them to do something sensible. But it should work well for the AI civs.
 
I read that some savegames were appreciated by the BetterAI-team. So here are some of an AI attack, probably a dagger attempt but I can't know for sure as I didn't want to spoil my game by adding the chipotle code in my civilization.ini file. It's not a lot of fun to play a game where you know the AI plans. These savegames are from an emperor level game at a huge, continents map at epic game speed. I usually play at immortal level (sometimes deity), so I went down 1 level to try the mod.

It's a custom game with the following settings:
Aggressive AI, No city razing, city flipping after conquest, require complete kills and the victory conditions conquest and time.

I have some personal modifications in the game that shouldn't interfere with the AI modifications. In order to run the game as I have played it, I've added the mod-folder that I'm using:

http://forums.civfanatics.com/uploads/31106/BetterAI.zip

Here's a text-file with the short list of my xml-changes:

http://forums.civfanatics.com/uploads/31106/Changed_Files.zip

Modified assets are not locked so you don't have to use the xml-changes that I use. I also combined this mod with the python mods Civ4lerts (which provides alerts when cities grow and such) and the Exotic Foreign Advisor (which adds a more informative foreign advisor).

I have sent a report from my game until 430 BC in post 681. Now, I've played a bit further. I'm still doing ok.

I reported a war with Huayna Capac in my previous game. He attacked me with what appeared a small dagger stack (5 units, then 5 units, then 2 more in a period of something like 8 turns). It was early in the game, so the relatively large number of units did cause some problems, but I managed to repell the attack. Some more units from Huayna Capac arrived, but now I also had build some units and these additional enemy units were easily defeated. The problem for the AI was that it didn't have the right resources to mount a serious attack. It's attacking archers and quechua's met defending archers and chariots. A few turns later I had cover axemen and any chance of success for the AI was gone. See for savegames of this part of the game, my previous post.

I considered going on the offensive, but the unit upkeep cost would have been too much and I didn't have catapults to make city capturing somewhat efficient. So I waited until I could get peace and that peace came in 295 BC (war had started in 550BC).

http://forums.civfanatics.com/uploads/31106/Roland_BC-0295_peace.CivWarlordsSave

Around that time Alexander of Greece had his second success against the defending Frederik of Germany capturing another city. He asked me to join his war for the second time and I agreed since Frederik was weak from the war with Alexander and I had some leftover units and Frederik had an isolated city close to some resources (I made a remark in the previous post that Frederik build his cities too far spread out which made his empire difficult to defend). Also, the diplomacy bonus from fighting a common enemy was nice instead of a diplomacy penalty from refucing to go to war. I captured the isolated city while suffering some losses (a little bit of bad luck, but it was still worth it). I marched on Frederik's capital to see if I could capture it. It was well defended and had a 50% defence bonus from a wall, so I offered peace to Frederik.

In 215 AD, Alexander managed to capture Berlin, thereby destroying the Germans. I'm afraid of him because he has a huge army and no enemy to focus it on (three of his six cities are captured from the Germans). Because he asked me to join him in his war three times (and I only accepted once), he doesn't really like me. Even the common religion and the joint enemy bonus don't counter this. The relations are at +5, but he's cautious with me. I wonder if something about the AI concerning the requests might be changed. It's rather strange that he would demand support in his war efforts from me three times during one war with one enemy. If I had refused every time, I would have had a -3 diplomatic penalty with him while the other leaders don't get these penalties. Now, I understand that the AI needs some way to see if the human has a positive or a negative attitude towards them, but this seems a bit over the top. I'm really trying to get Alexander to like me, helping him in war, giving in to tribute demands and just giving away resources for free, but it doesn't help enough. He's cautious with me, while he likes the other AI players, even one of a different religion which is at 0 relations with him. Is there something in the code that makes the AI like eachother more than the human player when the aggressive AI setting is active?

Here's the save from 215AD:

http://forums.civfanatics.com/uploads/31106/Roland_AD-0215_Frederik_of_Germany_destroyed.CivWarlordsSave

And here are some savegames from the period between 295BC and 215 AD:

http://forums.civfanatics.com/uploads/31106/Roland_BC-0205.CivWarlordsSave

http://forums.civfanatics.com/uploads/31106/Roland_BC-0175.CivWarlordsSave

http://forums.civfanatics.com/uploads/31106/Roland_BC-0070.CivWarlordsSave

http://forums.civfanatics.com/uploads/31106/Roland_AD-0020.CivWarlordsSave

http://forums.civfanatics.com/uploads/31106/Roland_AD-0110.CivWarlordsSave

Another strange thing is the development of Huayna Capac of the Incans after the war with me. He only had three cities when the war ended and his forces were decimated. I expected him to start expanding quickly, but he seems to building up his troops again since the war ended. I suspect him to be targeting me again. However, I can't see why he doesn't expand a bit more first. Three cities on a huge map is nothing.

A third strange thing is the city placement of a Spanish city on the island to the north of me. It's very very far from his core empire and as far as I can see, there are still city placement positions closer to his capital (but I don't want to activate the world builder to make sure).

With many enemies on the continent with much stronger armies and me being the most disliked and most backward civilization, it could be that I will be destroyed (would be a pity to not see how the AI manages in the later game). I have the same religion as three of the four civilizations, so I might be able to keep the peace. My empire is developing well and I might still survive. I do have the most cities and have acquired some happiness resources to help economically develop my empire. We'll see.
 
Interesting behaviour by the AI in my latest game.
Parameters: 12/2 Build, Noble, Standard Size, Fractal Map, Me + 7 AI

I always play Random leaders and this time I got Montezuma. Started on a smallish continent with just me and Frederick. Soon became clear there was not enough room for us both when he founded a city that was going to block me off from much of the land. So war was inevitable.
I razed two of his cities fairly quickly and then paused to amass a Jaguar SOD for his capital. His response...
He kept building and sending out Settler/Archer pairs to refound the closest of the razed cities. I must have razed the city 3-4 times in the same spot. The thing was that the spot he chose was far more vulnerable than other sites available to him, even sites one tile away from his chosen site would have afforded better protection in the form of hills, but he kept on sending those Settlers to certain doom in the exact same location wasting vast amounts of resources and gifting me some welcome XPs in the process.

I realise that building an AI that learns from its mistakes is outside the goals of this project, (having worked on expert systems, constraint engines and limited AIs professionally I know how difficult this is!), but perhaps some limited checking that prevents repeating the exact same mistake every 20 turns would be possible and make the AI appear less suicidal in cases like this.
 
Firstly, this doesn't set a precedent. It is a special, and rare case where AI code is coupled with gameplay code, in earlier cases things got screwed up, I have then fixed that and taken the liberty of making some more improvements since I'm not about to return it to the lesser of two brokens.

There may be differing opinions on this one, but I for one am OK with the change. It does change the game in a way that's not directly related to the AI, yes, but it's an invisible change that doesn't affect game parameters, and makes the game be less insane (and hence more competitive). While the human player can make do with a start right next to another player, the AI inevitably suffers, so it's improving the AI's chances without changing the game rules.

I agree that, at least for this mod, no one wants real gameplay changes. There are plenty of other mods out there for those who want the sharks-with-frikkin'-lasers or CR17 PROMOTION!!!111!!!!!1!. I think this mod is used mostly by those who spend most of their time playing the out-of-the-box game, but want more of a challenge, and this change fits in reasonably well with that.
 
He kept building and sending out Settler/Archer pairs to refound the closest of the razed cities. I must have razed the city 3-4 times in the same spot. The thing was that the spot he chose was far more vulnerable than other sites available to him, even sites one tile away from his chosen site would have afforded better protection in the form of hills, but he kept on sending those Settlers to certain doom in the exact same location wasting vast amounts of resources and gifting me some welcome XPs in the process.

I realise that building an AI that learns from its mistakes is outside the goals of this project, (having worked on expert systems, constraint engines and limited AIs professionally I know how difficult this is!), but perhaps some limited checking that prevents repeating the exact same mistake every 20 turns would be possible and make the AI appear less suicidal in cases like this.

That's strange. I've seen the AI build cities on hills, while I would have preferred the tile next to the hill because it would have resulted in a more productive city (food, commerce, hammers). There is a preference for settling on a hill. Only when the tile next to the hill is clearly better than the hill settlement, will the AI settle next to the hill. I personally find the preference for hill settlements even too big.

AI's of course don't learn from their mistakes and I guess that it will be too hard for the team to program a learning AI. But the AI shouldn't be building many settlers during a war. And if the AI chooses to build a settler during a war, then it should defend it heavily. In my game, the AI completely stopped building settlers when at war. Weird that you had a completely different experience. Was the AI reduced to a very low number of cities, when it started building settlers? Maybe you could upload a (few) savegame(s) so that the Better-AI-team can take a look at it.
 
NOTHING in this thread is in 2.08. It's all post-2.08 work.

I see. I thought your improvements that were implemented in 2.08 already had the "enhanced start position" code. Thanks for explaining the highlands and "novelty maps" scripts as well.
 
Back
Top Bottom