Divine Prophets AI

Thunderbrd

C2C War Dog
Joined
Jan 2, 2010
Messages
29,920
Location
Las Vegas
I figured I'd start this thread to give a complete explanation of the AI programming currently in use in Divine Prophets and to offer you somewhere to discuss potential improvements as well as to announce any plans I may have coming up to make adjustments here.

First off, a description of how it should currently work (bug reporters should refer to this to make sure what they see IS a bug (though if it IS, I do really want to know!)):

  • When an AI gets a prophet, the first check they make is to see if they have any 'shrine' (Religious Capital) buildings to build. (I'm not sure if an adjustment was made to the ai in this portion... I thought I read somewhere that they were tasked to build a shrine only if they didn't have one for their state religion or something... does anyone know if this has been adjusted in any way?)

  • Then the AI will evaluate whether to use the Prophet for a religion, hold onto one, or allow the prophet to move on and consider doing anything else prophets are used for.

  • The AI will first look at whether or not its favorite religion has been founded.
    • If it hasn't been founded, and it can be, the prophet will found it immediately.
    • If it hasn't and it can't yet, the ai will hold onto ONE prophet only and hold it in reserve, checking every round if it can now build a shrine or found its favored religion.
    • If its already holding a prophet like this or if its favorite religion has been founded, it will then consider founding another religion.
    • Note: if you are playing on Limited Religions, it won't consider founding another religion at all unless it's favorite is selected, but it will still only hold onto one prophet, so they go on to be considered for other uses after the one in reserve.

  • When evaluating other religions, it looks at what religions it CAN found, if it can found any, and decide which one is best for its personality by comparing the religion's flavor values to the leader's flavor values. It will identify the best one and found that religion where it stands.
    Note: a future improvement will make sure the prophet moves to the 'best city' to found a religion in for this but I have yet to think up quite how to make sure it prioritizes this properly. Personally I like them all in one city but I wonder if there are good reasons to go about it differently, like the production level in the city, if the city is meant to be the primary 'financial center' or other considerations. Some discussion is very welcome on this subject.

  • At this point, when there are no other religions to found and no shrines to build, it will go on and act as a prophet normally acts. I have NOT currently taught it to use the capability to spread foreign, non-introduced religions into the nation but do eventually plan to as a part of a massive Religious AI overhaul that will make it dependent on the leaderhead's strategies as to whether they want to do this or not.

So for now, it's got a few improvements planned. I'm also planning to make the Founding of a religion a unique mission and the Spreading of religions separate so that I can implement a different icon button for those UNFOUNDED religions and differentiate them from those that are FOUNDED. This will take some reprogramming of the whole structure but shouldn't be tooooo much work I don't think and will make it much nicer to play as you won't have to open the religious adviser to make sure that the religion you want to found hasn't been already. Currently, you can make some big mistakes without being careful there.


Asking the ai to hold onto a prophet has been called into question as to whether its 'misguided' or not and I wanted to explain the full rationale behind this decision. I determined to program it this way for the following reasons:
  • This will only end up taking place in a NON-Choose religions game because otherwise all religions are available unless already founded.

  • In a NON-Choose religion game, your selections are limited purely to the techs you've unlocked the religions for, so without it, it hedges in the ai's choice in religions to what it just unlocked unless the player has allowed an opportunity to pass. This way, leaders may be more likely to experience the power of preference thanks to a bit of patience.

  • The early religions are simply less valuable in general than the later religions due to the fact that their shrines only give cultural output by city that's adopted the religion rather than an economic benefit. The argument can be made that their benefits apply better at that stage of the game (food and growth generally) but the following reason offers a counter.

  • Most religions aren't truly effective until the shrine is established anyhow. Holding one prophet for the favored religion has a side effect of also holding that one prophet for immediately building the shrine of the next religion they found. Thus, immediately they begin to really enjoy the full benefits of having the religion and they don't have to a) waste the next tech earned prophet on a shrine; and/or b) be forced to rely on an extremely reluctant ai city advisor to birth a prophet without a tech... see below:

  • Currently, the value of slaves stabs the ai's birthing of prophets in the foot in the mid-early stages of city growth. This limits their ability to generate the supporting prophets needed for shrines and other tasks. Since players can be a bit more deliberate in creating prophets, they have an edge that allows them to make more complex decisions that allows them to take advantage of religions they unlock immediately as soon as they unlock them without concern for making a wasteful decision.

  • And of course, lets not overlook the value of holding onto a prophet so that if an opponent civ reaches your favorite religion's tech first but uses the free prophet for something else and you get there just after, you now have a prophet to capture that religion with immediately.

I realize there are some arguments that can be made to some of the points above, but overall, I thought this would make for a bit more ai 'gameplay' rather than just having them be pigeonholed into making kneejerk reactions that assumes they want every religion under the sun. You might be wondering why the ai players just ignored shamanism, druidism, and ngaism, allowing you to get them all without challenge until suddenly they start popping in with kemetism, mesopotamianism and such, planting shrines in their cities in the same round and having their religions suddenly rocket to the top of the 'most spread' (as well as most profitable) lists overnight.

As always, discussion is welcome, as are ideas for improvement (and possibly even expansion.)
 
My main issue is that if, say, your favorite religion is Mormonism (industrial era tech trigger) then holding your first GP, which you probably get in ancient, is very inefficient (it could be working as a super specialist [increasing your GP rate as a side effect] that whole time, or it could grant you a tech, or a golden age). In that kind of time span its a practial certainty that you'll get another one, so it's much more optimal to use a later one to found your (late) religion. It's also probably better to spread someone else's religion early and have its benefits for the 4 eras or so until your own comes along when the time gaps are large, than not to have one at all.

IMO you should just assume that if the tech is more than a certain distance away (you can use total tech cost as a measure and thus turns at current tech rate and game speed, or just crudely using era difference) it's not worth holding the current GP back.
 
Well... even though the reserved prophet will be used for a shrine the moment the ai gets an additional one (and thus founds the next best religion), then would save the next earned prophet again, I can see how that would be somewhat better for the ai and would do more to deny the player those early religions in a high difficulty level.

I also have to admit that the actual writing of such code escapes any method imaginable to me... it doesn't sound like something that's done anywhere else in the coding so finding an example of something like it would be nearly impossible unless you could point to where you know something like it is already taking place. Usually, if I can think about the problem long enough and scour for some similar programming calls, I can work it out so I might be able to solve it.

You're suggesting that I give an added: if (total cost to reach the prerequisite technology for our favorite religion < an established fixed threshold value (any suggestions as to what this # should be?)) then (hold onto one prophet). That could work, but I wonder what the average cost for all techs in an era would be, as I think that might be an appropriate amount for the threshold value.

Era difference may work but I've never seen a call to era in the code yet so I'll have to go looking around where I haven't looked before to find something like that. In this approach, which seems to be a bit more straightforward and less setup to create a need to adjust later, I'd want the ai to hold the prophet provided that our favorite religion's tech lies within an era within 1 era of our current tech era. Any advice on where I can find these kinds of tags in use in the dll already?

Another consideration that would/should need to be repaired then is the effect DP should have on the AI's prioritizing on its city citizen assignments. I need to ask it to evaluate priests as much more valuable than slaves, at least in one city (most likely the capital), until all religions have been founded (or until they've founded one religion and its shrine if using Limited Religions). Now that I think about it... that shouldn't be tooooo tough to sort out. Not that I've delved into that coding but I'm starting to get the overall picture on the general methods used with that kind of evaluation.
 
total cost to reach the prerequisite technology for our favorite religion < an established fixed threshold value (any suggestions as to what this # should be?
For a threshold value I would say do it by Number of turns to get a new great person*(1+%chance to get prophet) vrs the total number of calculated turns to get to the tech to create the religion if that is doable.
That way the ai will look at it as the number+Likelyhood of getting a prophet vrs the number of turns needed to get the tech for the religion.
So it should be something like this
If number of turns to get tech for religion > then Number of turns to great person*Percent chance for it to be a prophet
Then Save Prophet
Else Create next best religion.
 
Well... even though the reserved prophet will be used for a shrine the moment the ai gets an additional one (and thus founds the next best religion), then would save the next earned prophet again, I can see how that would be somewhat better for the ai and would do more to deny the player those early religions in a high difficulty level.

I also have to admit that the actual writing of such code escapes any method imaginable to me... it doesn't sound like something that's done anywhere else in the coding so finding an example of something like it would be nearly impossible unless you could point to where you know something like it is already taking place. Usually, if I can think about the problem long enough and scour for some similar programming calls, I can work it out so I might be able to solve it.

You're suggesting that I give an added: if (total cost to reach the prerequisite technology for our favorite religion < an established fixed threshold value (any suggestions as to what this # should be?)) then (hold onto one prophet). That could work, but I wonder what the average cost for all techs in an era would be, as I think that might be an appropriate amount for the threshold value.

Era difference may work but I've never seen a call to era in the code yet so I'll have to go looking around where I haven't looked before to find something like that. In this approach, which seems to be a bit more straightforward and less setup to create a need to adjust later, I'd want the ai to hold the prophet provided that our favorite religion's tech lies within an era within 1 era of our current tech era. Any advice on where I can find these kinds of tags in use in the dll already?

Another consideration that would/should need to be repaired then is the effect DP should have on the AI's prioritizing on its city citizen assignments. I need to ask it to evaluate priests as much more valuable than slaves, at least in one city (most likely the capital), until all religions have been founded (or until they've founded one religion and its shrine if using Limited Religions). Now that I think about it... that shouldn't be tooooo tough to sort out. Not that I've delved into that coding but I'm starting to get the overall picture on the general methods used with that kind of evaluation.

Era difference is super-easy to check:
Code:
prereqTech.getEra() - (int)getCurrentEra()

Tech path length is easy now beacuse I added a routine to caulculate it when I reworked civics (civis choice needs to know how far in the future a better choice lies so it can decide whether to wait). Use this method:
Code:
int CvPlayer::findPathLength(TechTypes eTech, bool bCost) const
If bCost is false it gives you the number of techs (minimal path) to the requested one. If bCost is true it gives you the total cost.

I would divide the total cost by the current tech rate, and normalise for gamespeed, then compare that against constant threshold. This is the full code that the civic evaluator uses for this:
Code:
int iTechPathLen = findPathLength(eTech, true);
iTechPathLen *= GC.getHandicapInfo(getHandicapType()).getResearchPercent();
iTechPathLen /= 100;
iTechPathLen *= GC.getWorldInfo(GC.getMapINLINE().getWorldSize()).getResearchPercent();
iTechPathLen /= 100;
iTechPathLen *= GC.getGameSpeedInfo(GC.getGameINLINE().getGameSpeedType()).getResearchPercent();
iTechPathLen /= 100;
iTechPathLen *= GC.getEraInfo(GC.getGameINLINE().getStartEra()).getResearchPercent();
iTechPathLen /= 100;
iTechPathLen /= std::max(1,researchRate);

Just compare the result to a constant threshold (which you'll need to tune somewhat empirically). If you do go this way, I suggest you encapsulate the above in a new CvPlayer method (getNormalizedPathLen() say) and replace the existing usage in CvPlayerAI for the civic choice rather than repeating the code.

Note - obviously over a long period your tech rate will tend to increase, but its not unreasonable to model that as a fixed curve (exponential probably), which means things are proportional to the current rate anyway, so no need to actually model the growth of rate - it's just bound up in the choice of constant you compare against.
 
I don't think the AI should found shamanism/druidism/ngaiism/kemetism shrines unless it's their favourite religion, since those shrines only give a culture boost.

For where to found religions at, Naghualism should be founded in the city with the most quarry-resources in it's BFC, or if no cities have those, the city with most mines/stone tool workshops/hills, since those can eventually discovery quarry-resources.

If there are many possible shrines available for building, Naghualism and Hellenism should be tier 1 priorities, Judaism, Mesopotanism, Asatru and Confucianism tier 2, the rest of gold producing shrines tier 3, kemetism tier 4 and shamanism/druidism/ngaiism tier 5.

EDIT: That's only thinking about the shrine value, I completely forgot the different per-city state religion bonuses. Those should probably be considered too.
 
Rasma said:
total cost to reach the prerequisite technology for our favorite religion < an established fixed threshold value (any suggestions as to what this # should be?
For a threshold value I would say do it by Number of turns to get a new great person*(1+%chance to get prophet) vrs the total number of calculated turns to get to the tech to create the religion if that is doable.
That way the ai will look at it as the number+Likelyhood of getting a prophet vrs the number of turns needed to get the tech for the religion.
So it should be something like this
If number of turns to get tech for religion > then Number of turns to great person*Percent chance for it to be a prophet
Then Save Prophet
Else Create next best religion.
Completely rational. Unnecessarily complex I think. Reason being, there is a lot of variables that can throw that equation out of synch. It's vulnerable to being a little TOO finely tuned and can be disturbed by other modding quite easily.

Much better, I think, to keep things as simple as possible. Perhaps, down the road, if the AI proves to be making bad decisions with other methods, I will take another look at this solution. I admit its well thought out and appreciated, but I want to be able to follow my own coding, and THAT I can get lost in.

@Koshling: Which is also why I lean preference towards a 'crude' era evaluation rather than getting into a much deeper round count to the prerequisite technology scenario. I'm really not thinking that the improved accuracy of AI decision making there would lend itself to much improved effect enough to justify getting that involved with it, even if it WOULD be a good exercise for me ;) The 'save the prophet if the prerequisite tech for your favorite religion is within a game-era away from where you are now' seems to be a fair enough approach.

MaXimillionZero said:
I don't think the AI should found shamanism/druidism/ngaiism/kemetism shrines unless it's their favourite religion, since those shrines only give a culture boost.

For where to found religions at, Naghualism should be founded in the city with the most quarry-resources in it's BFC, or if no cities have those, the city with most mines/stone tool workshops/hills, since those can eventually discovery quarry-resources.

If there are many possible shrines available for building, Naghualism and Hellenism should be tier 1 priorities, Judaism, Mesopotanism, Asatru and Confucianism tier 2, the rest of gold producing shrines tier 3, kemetism tier 4 and shamanism/druidism/ngaiism tier 5.

EDIT: That's only thinking about the shrine value, I completely forgot the different per-city state religion bonuses. Those should probably be considered too.
Some great considerations and I tend, as a player, to agree that this is the 'player's best practice' thinking expressed. However, consider the following:
1) I haven't touched the shrine building routines for Divine Prophets, but have allowed the previously in place stock ai programming to go untouched there. That section could probably do with some of the thinking you've mentioned, though it would greatly complexify the evaluations and should be based more on a building valuation rather than hardcoding it to prefer or deny particular buildings in the mod. Currently, I believe the ai simply builds buildings the prophet can build as a priority over doing much of anything else, believing this is the prophet's highest calling, as it would've been in Vanilla. For simplicity's sake, this is good, but yeah, it could use breaking up into some deeper priority evaluations based on building value.

2)Those initial shrines aren't all that bad a thing for their era. Particularly if you are playing with the 3rd city radius based on culture rather than just administration buildings. The extra culture can rocket the city into superstatus quite quickly and that can translate to a lot more gold, food AND production much earlier. Sure, culture seems less valuable once you've got an established city, but those culture producers are the first religions to arrive so its when it matters, which is the point of our current religious progression system... the religion is best for the age it's presented in. We also have some concepts floating around that could make overall culture production a lot more valuable in the lategame than it currently is so perhaps at some point it could be very regretted to ask the ai to ignore those shrines.

3) Don't forget the spread power of shrines and the +Prophet points towards the next GPs. (That latter factor has been recently included by DH on the earlier shrines.) Under Divine Prophets, you can't have enough Prophet points in your religious center.


Nevertheless, some great contributing feedback that can really help to guide this mod component into a finely tuned device (and improve on some religious ai factors when DP ISN'T in play too!) All of these things are projects to go in my queue and that queue is quite extensive already. But I love the thinking here and appreciate your contributions. Gathering all thoughts on these matters will help to guide me when I go to really advance DP again. (I hope to include the era evaluation bit on my next update though... if I can get it right that is ;) )
 
I don't think the AI should found shamanism/druidism/ngaiism/kemetism shrines unless it's their favourite religion, since those shrines only give a culture boost.

For where to found religions at, Naghualism should be founded in the city with the most quarry-resources in it's BFC, or if no cities have those, the city with most mines/stone tool workshops/hills, since those can eventually discovery quarry-resources.

If there are many possible shrines available for building, Naghualism and Hellenism should be tier 1 priorities, Judaism, Mesopotanism, Asatru and Confucianism tier 2, the rest of gold producing shrines tier 3, kemetism tier 4 and shamanism/druidism/ngaiism tier 5.

EDIT: That's only thinking about the shrine value, I completely forgot the different per-city state religion bonuses. Those should probably be considered too.

Big culture rocks. In the longer term it gets you a city that can use a 3-tile radius faster than you would otherwise be able to, which is a big boost down the road. I pretty much always build shrines for any religions I have founded (and generally find I get more GPs before long anyway). Having said that it may depend on play style a lot - I tend to play a very GP heavy game strategy, and almost never use civics that lower the GP rate (and strongly favour those that raise it).
 
OK in that last SVN, i was the first to get to Shamanism but NO Prophet, no Holy City, well nothing actually??

I've now got this and one other possible bug to look into. Thanks for the report. I'll take a look this weekend!
 
Ok, after a quick playtest and code review, I believe the only answer is that you were not the first to get to the tech. Nothing in the pics you showed me there indicate for certainty that you were.

Now, what could be causing some confusion is this: The ai that got there first held onto his free prophet, leaving the religion available. My next update should reduce the occurences of these decisions according to the above conversation.

Otherwise, in my playthrough, I found that when I got to that tech first, I did get a prophet. The first civ to the tech that grants druidism must have considered it it's favorite as it used it for druidism right away. I could not reproduce the 'bug'.

I'm still going to look for the 'bug' reported on limited religions (allowing more than one religion) to see what's going on there.
 
This game option appears to be working much better than it used to, given my experiences from my last couple of playthroughs. Last time I used this, the AI was not bothering to found religions for the most part. Hinduism wasn't founded until 200 BC. Islam wasn't founded until 1672. Now the AI founds religions as soon as they are able to, from what I can see.
 
Ok... this isn't working quite as I'd wanted it to... I'm hoping one of you dll guys can help me figure out how to reword this correctly. The problem appears to be the (int) conversion.
Code:
(((int)(GC.getTechInfo((TechTypes)GC.getReligionInfo((ReligionTypes)eFavorite).getTechPrereq()).getEra()) - (int)(GC.getEraInfo((GET_PLAYER(getOwnerINLINE()).getCurrentEra()))) < 2)) &&
I'm getting the following msg in the compiler:
Code:
1>CvUnitAI.cpp(30342) : error C2440: 'type cast' : cannot convert from 'CvEraInfo' to 'int'
1>        No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
hmm... I'm not sure how to proceed here. I've got the line commented out for now and will return to it once I've got some feedback on the matter. This is one of a few ways I've attempted to go about the placement of the (int) conversion and everytime I get this message or a missing '(' message. Either way I've tried most ways I can think of here and am apparently completely wrong no matter which way I go.
 
Ok... this isn't working quite as I'd wanted it to... I'm hoping one of you dll guys can help me figure out how to reword this correctly. The problem appears to be the (int) conversion.
Code:
(((int)(GC.getTechInfo((TechTypes)GC.getReligionInfo((ReligionTypes)eFavorite).getTechPrereq()).getEra()) - (int)(GC.getEraInfo((GET_PLAYER(getOwnerINLINE()).getCurrentEra()))) < 2)) &&
I'm getting the following msg in the compiler:
Code:
1>CvUnitAI.cpp(30342) : error C2440: 'type cast' : cannot convert from 'CvEraInfo' to 'int'
1>        No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
hmm... I'm not sure how to proceed here. I've got the line commented out for now and will return to it once I've got some feedback on the matter. This is one of a few ways I've attempted to go about the placement of the (int) conversion and everytime I get this message or a missing '(' message. Either way I've tried most ways I can think of here and am apparently completely wrong no matter which way I go.
GC.getEraInfo turns your EraTypes into a CvEraInfo which in this case you don't want as you don't want to retrieve XML info about this era, just calculate something with its number. In other words, just remove the GC.getEraInfo.
 
GC.getEraInfo turns your EraTypes into a CvEraInfo which in this case you don't want as you don't want to retrieve XML info about this era, just calculate something with its number. In other words, just remove the GC.getEraInfo.

Ok... that worked like a charm! You rock man! Thanks! I had not even begun to consider that would've been the problem. It makes sense but I'm going to have to really think about that a bit to really absorb the lesson and the meaning behind it so I don't flounder on this kind of thing again. Anyhow, VERY appreciated!
 
If there are many possible shrines available for building, Naghualism and Hellenism should be tier 1 priorities, Judaism, Mesopotanism, Asatru and Confucianism tier 2, the rest of gold producing shrines tier 3, kemetism tier 4 and shamanism/druidism/ngaiism tier 5.

For a long time I have made my first 2 religious choices Confucianism and Asatru in my military city. The Confucian shrine is arguably OP. Impis, Dog Soldiers, Pongos, or Coyote Soldiers moving 3 is awesome plus the XP buff. If I can get a Riding School I can get Cavalry and Hunters with 4 or 5 MPs. I can run a much smaller defensive army and rely on mobility and roads to rush my reserves to the threatened area. And with 3 MP my invading army can move, attack, and retreat all in one turn, especially with the Impi. Pick away at the enemy capital from a safe distance and he takes 2 turns to counter-attack. Increase the odds with Surround and Destroy then retreat the flankers back to the safe large stack before end of turn. If the capital is too strong the Impis or cavalry will completely "scorched earth" his entire empire, as well as picking off workers. I mean EVERY improvement and EVERY trail/mud path/road.

Hunters with Woodsman II, Riding School and Morale will expose the entire continent (gigantic C2C_Terra) before the end of the Classical Era. Eventually they will get enough XP for Speed and then I come home to upgrade to Rangers with 5 MP and Combat 4! Five of those bad boys really buff up the invading army up until the Medieval Era.

I try to build my military city on the coast so the navy also gets the Morale boost. With enough GGs (from all the successful land combat) my Triremes will have the promotions for Navigation 2 plus the one to reduce cost of bad coastal terrain. In my dream games I get the Phoenician Biremes so my late classical coast huggers get 6 MPs with reduced costs for kelp and coral reefs. These units can cross reefs in 1 turn so there are no turns lost to healing. I explore more of the coast and can get a few techs from goody islands with these units.

Mobility has always been a powerful force multiplier throughout military history in RL and C2C captures this. Specific to the game I suspect the AI does not factor in my improved mobility during threat calculation. Sometimes I pick off unescorted generals that would be safely behind enemy lines but my speedy hunters can reach it.

The smaller army allows me to maintain 100% science slider pretty much permanently from mid-Prehistoric, which tends to lead to more religious tech findings. Lather rinse repeat.....Admittedly with a Scientific leader but at Deity.

For Finance, a combo of the Scientology and Judaism shrines in a coastal capital is a very nice little nest egg!

For my games it got so OP that I tweak the XML to produce a Missionary instead of a GP for the first to found a religious tech. I want to be able to place the Holy City, but now I can't select the advanced religions like Scientology (What a $$ earner!) during the pre-historic era. Scientology allows monasteries with a income bonus (not science) before Meditation so the $$ just kicks in. it just feels better to me to have primitive religions during a primitive period. Admittedly I can burn a GP to get an advanced religion, but with my tweaks a GP is much more rare and valuable and needed for shrines.
 
For my games it got so OP that I tweak the XML to produce a Missionary instead of a GP for the first to found a religious tech. I want to be able to place the Holy City, but now I can't select the advanced religions like Scientology (What a $$ earner!) during the pre-historic era. Scientology allows monasteries with a income bonus (not science) before Meditation so the $$ just kicks in. it just feels better to me to have primitive religions during a primitive period. Admittedly I can burn a GP to get an advanced religion, but with my tweaks a GP is much more rare and valuable and needed for shrines.

Why not just tick choose religions off?
 
Why not just tick choose religions off?

When I played w/o Choose Religions (long ago) the Holy City was randomly placed, and seemed to favour cities with few other religions. So my strategy is about bundling valuable shrines, and w/o Choose Religions I would get Confucianism founded is some new struggling frontier city that was never going to produce valuable military units.

So I agree this eliminates the OP aspect, but for me ruined the enjoyment. I <3 my mobile army, just not too early! For my tastes building the Missionary seems like the right balance. As SO says: "Play C2C your way!"
 
Idea: - I would love to see a random missionary (neutral -not attached to a civ) occasionally spawn from a holy city and head off to spread a religion in a city that doesn't have it. No resources necessary, unplanned, and not under player control. - Living World Stuff.

(in that vein maybe some non-controllable (and non-aligned) spawned independent traders, transports, explorers, workers, etc. Like barbarians but without hostile intent and free to cross borders without being attacked. Maybe they couldn't be easily attacked by AI, either. Fortified caravan, or units with no thread level to most civs. It could have a not easily controllable slight variation effect on a civ's economy, and a close border civic component could stop that kind of traffic, like in anarchy. likewise free trade)
 
@ Rightfuture: Yes... I have a complete plan in mind for the Jewish origin that I'd like to put in place someday (something similar to what you've suggested) but there's some other matters I wanted to think through along with it before implementing in any way.

@ Wimpy: I pretty much do the same, Confucianism and Asatru... My wife favors the production, workers and dogs of voodoo so she goes for that a bit faster and as a team we share the benefits. Usually the ai gets to Scientology before we can if we're prioritizing for military benefit.

If you experienced holy cities being randomly placed, you weren't on divine prophets. Turn DP on and Choose Religions off and you'll have what you're looking for. If there were no Choose Religions option, I would've programmed it as you adjust it - by giving missionaries instead. But there's no cause to have to do this, and the ai is much improved now on that combination of settings. (I have yet to upload the last tweak to the svn but its coming soon... snagged on some other projects first.)
 
Back
Top Bottom