I am not sure you are correct in your assumption how religion is rolled out.
Suppose I tell you that it isn't an assumption, but a memory of how the code works from having looked at it several times to answer this question? No, suppose I tell you that I checked it fifteen minutes ago?
Edit: Suppose I come back an hour later and tell you I'm starting to have doubts myself?
The algorithm favors lowest score, rather than highest, with a +10 penalty added to the non-humans, it happens after the last players turn rather than before the next players turn... what I mean is I explained everything backwards
but the basic idea is right. CvGame::doHolyCity for those of reviewing the code at home.
I have heard reports of single play games where the human player did not get Judaism, but I haven't seen a demonstration of this issue, so I'm cautiously optimistic that this interpretation of the code is correct.
There's always the possibility that the delivered SDK doesn't actually match the delivered binaries, that I'm failing to read the code carefully, etc.
I allways based my calculation on assumption that religion rolled out the same way as Wanders.
I know that wanders based on Max overflow from wander building in case if bouth are going to be build the same turn.
Tangent: I keep hearing this, and can't find any justification to support this claim in the code. Among other things, it completely contradicts how training of units works (whipped units are immediately available to defend), and I believe it contradicts how other buildings are constructed (whipped walls are immediately available in defense?)
It is resonable assumption, as civ was designed as multiplayer game and creators needed to find a fair way to do this. Civ try to avoide lines like
If human then
I do not look on sdk, just base on general assumptions.
I agree that it is a reasonable assumption. It doesn't appear to hold in this case, but that doesn't make the assumption unreasonable.