View Full Version : True Prophets


Kidinnu
Jan 25, 2006, 04:12 PM
True Prophets
Version 0.6 (Beta)
Updated 3 February 2006

This mod changes the way religions are founded in Civilization 4. Instead of being a byproduct of technology research, new religions are founded by Great Prophets.

This is a beta release of the mod. AI and human both work, but gameplay balancing is not complete. It was developed for patch 1.52.

The mod includes one new normally-buildable building: the Pagan Temple. This building is identical to a normal temple, but has no religion prerequisite. When a new religion spreads into its city, it converts into a temple of the appropriate religion.

Players who want a religion have two routes: build a Pagan Temple and divert population to staffing it, or build the wonders that provide Great Prophet points (Stonehenge, Oracle, and later Angkor Wat, Chichen Itza, or Spiral Minaret).

Interaction of religion with the game is significantly changed: instead of early religions being founded within the first 20 turns, players beelining have a hard time founding a religion before 1200 BC (on Noble), and AIs found religion between 600 BC and 600 AD.

Inspired by Tartan Spartan in http://forums.civfanatics.com/showthread.php?t=154972. Design decisions, balance problems, and playtest results are documented in the mod.

Feedback please!

Bast
Jan 25, 2006, 06:01 PM
I really like this idea, and this is one that Civ developers should think about in expansion packs or in Civ V. Because look at most the religions that are in the game. They weren't founded by technologies. They were founded by people.

Judaism (Moses)
Christianity (Jesus)
Islam (Muhammed)
Buddhism (Buddha)

I'll try this. Thanks. :)

[to_xp]Gekko
Jan 25, 2006, 06:05 PM
Very, VERY nice.

can I ask you more detailed info about gameplay balance so far?

Epicurist
Jan 25, 2006, 07:01 PM
yes..im curious if the ai knows what to do on this one

mayonaise
Jan 25, 2006, 09:10 PM
outstanding idea! i always thought the tech based way was kind of contrived. are they just revealed in a preset order or do you get to choose? random? how does that work?

Aussie_Lurker
Jan 25, 2006, 11:06 PM
OK, I have only played through a couple of times, which I realise does NOT make me an authority on this Mod ;). However, this is what I have observed.

1) Good News #1: the AI DOES know how to make use of Great Prophets to found religions.

2) Good News #2: the AI DOES build Pagan temples-eventually-and mans them-again, eventually.

Now its #2 which is the big issue, none of the AI civs seem to either build and/or man Pagan temples until VERY late in the game. Even when you beeline, however, it still takes a huge amount of time to get the first religion on the board. Now, I beelined for a Pagan temple-and manned it early-yet did not found Judaism until around 1500BC. What's worse, though, is that there were no other religions founded until around 25BC, and all of the other religions were founded within the space of 15 turns. Now this suggests to me that all the AI civs are building these temples at almost exactly the same time, and are probably waiting a long while to build them too (or else they are not even bothering to staff them for ages). So, here are a few suggestions that might make it work better:

1) Give Pagan Temples an automatic GPP bonus-as well as the ability to create a Priest.

2) Perhaps give the Temple a culture or happiness bonus, to encourage the AI to build it.

3) Perhaps add additional improvements and Wonders which either generate GPP's and/or allow priest creation.

4) Perhaps make the first Great Person threshold somewhere between 50 and 75, so that the first Prophet becomes available earlier.

5) Maybe it might be worth considering having the foundation of the religion require both a Prophet AND access to the appropriate tech. This may help to achieve a greater spread of religion foundation (much too clustered at the moment, IMO).

6) If all else fails, maybe push back the start date of the mod and/or turn down the number of years per turn.

Anyway, though, aside from these points, I DEFINITELY prefer the Prophet based method of getting religions. Now if we can only get the AI to make best use of it, then so much the better. Keep up the fantastic work Kidinnu!

Yours,
Aussie_Lurker.

Bast
Jan 25, 2006, 11:27 PM
Great points from the Aussie. May I also suggest that religions should be found accidentally. NOT picked. Besides, all the religions are equal anyway.

Because you shouldn't be able to know what religions you're going to find. All religions are found by accident.

Kidinnu
Jan 26, 2006, 04:18 AM
Thanks for the comments.

Bast, The religions are all equal, so I don't see the need to make them be chosen randomly - when you pick one all you're choosing is a name and an art style. (It's not really a bad idea, but it's also harder to implement than the current style.)

My playtest experiences are similar to Aussie Lurker's. I could beeline a religion by 1200 BC without cramping my normal style on Noble. The AI never got it earlier than 50 BC, and never founded more than 3 religions by 600 AD. By 1000 AD, everybody (even Tokugawa!) had some religion, some civs had changed religion, and religion appeared to be a nontrivial part of some of the wars that were going on. I haven't yet seen "all" the religions founded early; they weren't as clustered in my playtests as he saw, so I haven't yet worried about that.

I instrumented the game to count Great People born. Around 1000 AD, with 17 AIs, a typical count is 4 great prophets, 2 great artists, and 18 great scientists. This is reasonable for the standard ruleset, but needs tweaking for mine. :)

In the docs I discussed some of the alternatives I'd thought about:

GPP on palace - really dull, everybody gets it at the same time, human never gets a religion unless they're philosophical or build a pagan temple quickly.
GPP on obelisk - creates a scattering of GPP across the empire. I tested this idea once and the AI didn't build many obelisks, but that may have been because it was at a low difficulty level (was paying more attention to testing the human). Would actually give obsolescence via Calendar some benefit.
GPP on pagan temples. OK.
Priest slot on pagan temples. I like this because it requires a real sacrifice to get an early religion - you can't just build something and let it sit, you also need to dedicate some population to it. But that's probably why the AI isn't getting it.
Wonders - there are only two of these early, and 3 of these roughly medieval.


I've considered cutting the first GP threshold in half, but with the current AI that will just give them more early scientists. Pagan Temple currently has religious flavor 10; I'll be playing with the LeaderheadInfos in the next week to see if I can increase their proclivity to staff temples and to build obelisks, and turn down the appeal (and cost) of the religious techs a little.

Aussie_Lurker
Jan 26, 2006, 05:10 AM
Well, perhaps if you gave the Pagan temple some benefit aside from providing a priest slot, then that might work. Something like culture makes sense-I would probably make it around 2-4 culture per turn, to ensure the AI builds it. Once built, I have a strong suspicion that the AI will staff it quickly. After that, have it go obsolete at a respectable time-perhaps with Theology or Divine Right.
I also still strongly advocate retaining the tech-based element of religions, at least in determining which religions your prophets can actually found.

Yours,
Aussie_Lurker.

Chalid
Jan 26, 2006, 05:13 AM
Haven't tested this interesting mod yet, but maybe you should give the Pagan Temple a real high FLAVOR_RELIGION. Might need 30 or above that religios AIs constantly build it.

EDIT: Is it possile to make it unbuildable if the city already has a religion?

tartan spartan
Jan 26, 2006, 08:11 AM
Downloaded and hope to enjoy some testing later,

would suggest that the pagan temple retains the culture and happiness bonuses of a religion specific temple,

it seems wrong that currently cities can have libraries barrracks even wonders before a building which nourishes their spiritual needs

Kidinnu
Jan 26, 2006, 08:47 AM
One of the tests I'd like to run is:

* pagan temple has same cost and bonuses as normal temple (80, +1 culture, +1 happy, 1 priest slot)
* as soon as religion spreads in the city, pagan temple converts into temple of new religion
* pagan temples are not buildable once the city has a religion

The one possible problem I see here is that this makes the happiness available sooner and more easily than vanilla balance.

Aussie, on your most recent note, 2-4 culture per turn seems like a lot to me. In general, this is supposed to be a very-fine-grained mod, not a total conversion, so I'm not adding any wonders, and adding as few buildings and other things as are necessary.

(Now, I have at least three total conversion mods in design/prototyping phases, but this was a cool idea that could get to a playable state quickly. I don't have as much free time as Kael seems to. :) True Prophets would probably also go into one of those mods.)

Chalid, I'll look into that; in my glancing through the file I hadn't seen anything with a flavor value higher than 10, and didn't want to exceed "reasonable" bounds.

Anybody who has debugging on can watch my code's decision processes in the logs. I think I'm going to have to add a bit more there - note when temples are built, and when they're staffed. If staffing is happening long after building, I'll try putting +1 GPP on the building to speed the prophets up.

Chalid
Jan 26, 2006, 09:56 AM
Chalid, I'll look into that; in my glancing through the file I hadn't seen anything with a flavor value higher than 10, and didn't want to exceed "reasonable" bounds.

Kael used to give some of his buildings Flavors of 40 to have the AI build them, but the idea of giving the pagan temple the same bonuses as the original temple and converting them later should do trick. You might even think of disabling pagan temples as soon as a religion has spread to the civ, as from there on real temples can be built. I would even go farther and change all the pagan temples to temples of this first religion - and giving the religion to the cities too.

Kidinnu
Jan 26, 2006, 10:06 AM
For more statistics, I left a 17-AI game running overnight, and was finally able to check it just now.

All 7 religions were founded, between 100 and 150 turns in. (by England, Spain, Arabia, Greece, India, Mali, and China)

In 1884, great person counts were: 35 prophets, 13 artists, 49 scientists, 8 merchants, 27 engineers.

I wonder if this shows some AI bias, or if players typically have such unbalanced counts? Or would these shift even more if it ran to conclusion?

tartan spartan
Jan 26, 2006, 11:20 AM
An idea to prevent religion hogging and or excessive early religion founding is to increase the number of great prophets required to found multiple/later religions

I guess this is really two (perhaps mutually exclusive) options

1) founding a religion is like golden ages therefore to found a 2nd religion requires the sacrifice of 2 great prophets etc

2) Later religions have a have tech pre-requisites and or higher costs with each prohet making a contribution

For gameplay/realism tweaking it might also be an idea to link appearance of G prophets to some techs / wonders

[to_xp]Gekko
Jan 26, 2006, 11:28 AM
IMO religions should keep their tech prerequisites to be founded, as they make sense. so for founding christianity, you would need theology+a prophet. seems good to me.

Kidinnu
Jan 26, 2006, 02:04 PM
I've been resisting tech prerequisites because there are two possibilities:


They make it even harder to build a faith. Isn't it enough to have to get a great prophet?
They don't make any difference. By the time you have great prophets, you have the necessary techs.

Since I'm seeing all the religions appear between 400 BC and 600 AD in the most recent AI-only game (50 turns of spread), I wasn't too worried about spread, and most of them wouldn't have been delayed. Given that that was probably the peak period of religion foundation in real life, I was satisfied with it.

Now, real life may not make for good gaming, but just checking wikipedia for a ridiculous attachment to the facts (and rounding to the nearest century):

Hinduism: 1400 BC (I guess Asoka beelined!)
Buddhism: 500 BC
Confucianism: 500 BC
Taoism: 300 BC
Judaism: 300 BC, or maybe much earlier
Christianity: 1 AD
Islam: 600 AD

I haven't mastered cannotBuild() yet, and need to do some real work (TM) :( But once I do I'll be playtesting:

pagan temple has stats like a normal temple
only buildable in cities without religion (TODO)
automatically converts to first religion to spread into that city
requires TECH_PRIESTHOOD to build
AIs who prefer or are currently using Free Religion will found multiple faiths (wow, only Elizabeth prefers it?)
track completion of all temples so I can monitor AI timing
track assignment of priest specialists so I can monitor AI timing (TODO)
track discovery of religious techs so I can monitor AI timing (TODO)

Since Civilization has a city-by-city model of religion spread, I don't see why I should prevent the player from building a pagan temple in a non-religious city when a religion has merely spread to the civ. I might consider preventing the build when the civ has adopted a non-pagan state religion.

Adding the extra benefits to the temple makes me think it ought to wait until Priesthood, to maintain standard balance. (And otherwise the auto-conversion is a bit of an exploit :) )

I don't see any AIs in vanilla civ who prefer Paganism as their favorite civic, but I'd consider having them not found faiths...

Aussie_Lurker
Jan 26, 2006, 02:28 PM
Well, its funny Kidinnu, but your second point is WHY I want tech prerequisites to remain for founding religions. If it makes it too hard (i.e. if it causes the AI to NOT found religions with its Prophets) then I agree-don't apply tech prerequisites. Otherwise, I think having prerquisites in makes sense, as well as helping to maintain a nice spread of religions. Either way though, release what you have so we can test it for you, and we can all get back to you with our observations as before. Anyway, keep up the fantastic work, it is a really SOLID mod!

Yours,
Aussie_Lurker.

mayonaise
Jan 26, 2006, 07:38 PM
why are we so concerned with spreading the religions out? would it be that bad to have 2-3 religions founded within 10 or so turns, by different civs? it happens already with hinduism, buddhism, judaism.. and i dont see it negatively effecting gameplay at all.

regardless, brilliant mod!

Kidinnu
Jan 26, 2006, 07:58 PM
I ran another 17-AI game on autopilot, for about 180 turns. Temple build reports were broken, but here's what I saw sorted by turn:
[8] discover Meditation
[74] discover Polytheism (late?)
[86] first priests active; 2 at once in different civs (Egypt & China)
[97] 3 priests at once
[98] discover Monotheism
[99] 4 priests at once; found religion #1
[112] 5 priests at once
[113] found religion #2
[121] found religion #3
[125] discover Theology; found religion #4
[127] found religion #5
[131] found religion #6
[132] found religion #7
[160] discover Code of Laws


So there's some strong clustering effect in this run. Tech dependencies would spread out those later foundings. And since I never removed the rest of the benefits the later religions get (I never noticed Islam's holy city has better commerce than Hinduism's), I'll reintroduce tech requirements for religions.

I also need to know *who* founded each religion. Happy had a priest active for the 13 turns before religion #1 was founded, but she's not philosophical, so that'd only be a third of the points she needed. If she had built Stonehenge around turn 50 things would be OK, but I don't have that information. Mao's philosophical, but the Chinese only kept their priest working about half the turns he could have. So Mao could have founded if he'd built Stonehenge in turn 70.

I need temple dates. It was interesting watching the AI's frequently allocate and unallocate priests; they certainly have more appetite for micromanagement than I do. Hope to answer the question of when they found temples vs. when they staff them tomorrow.

I also have religion foundings spreading religion (like shrines); I'll probably turn that off, to make early dissemination more dependent on Missionaries. If a player gets a religion around 1200 BC, even without building any missionaries they can convert half the AIs before any other religions are founded.

mayonaise: I'm not sure that spreading religions out is necessary. But some of the vanilla game seems to be balanced around it - the early religions could take over the world, BUT you probably don't have good communication with the other civs, or the spare production capacity to pump out missionaries. Looking at the ReligionInfos file you can see that the late religions spread faster and have larger commerce benefits in the holy city. Having some spread in religion founding dates seems to add complexity to the game's strategy.

saetrum
Jan 26, 2006, 08:31 PM
I ran another 17-AI game on autopilot, for about 180 turns.

Excuse the slightly off topic post - but how do you run an AI game without user input? And how do you examine the results afterwards..

Excuse my newbie ignorance....

Great mod by the way.

Aussie_Lurker
Jan 26, 2006, 08:40 PM
My whole problem with how the vanilla system works IS how clustered the early religions are. So much so that-with or without this mod-I definitely intend to shift things like Meditation, so that they appear somewhat later in the tech tree, in order to get better spread of religion founding. If this was coupled with a need for prophets and techs, however, then I think that we would get a nice spread between the earliest and latest religions.
Anyway, sounds like the testing is coming along nicely Kidinnu-keep up the fantastic work :).

Yours,
Aussie_Lurker.

RED DIAMOND
Jan 26, 2006, 09:07 PM
Yeah I found most of what you guys are dealing with when I modded my religion and tech tree. What I ended up doing was throwing out history in leiu of gameplay. Once I did that putting all of the religion tech at the start of the tree solved all of these problems with religion monopoly and added a yet to be seen international flavor from the start.

I also added the religious victory condition and it is now tough to get 30% of the world converted. Much better game overall.

Robo Magic Man
Jan 26, 2006, 09:42 PM
I like the idea a lot, but it seems like it would take a very long time to get great prophets the conventional way (or at least much longer than it takes to research a religious tech). Is there a way to speed up the great person benefits of the pagan temple to get your first prophet faster, and then bring the speed back to normal after the first prophet?

Kidinnu
Jan 27, 2006, 07:22 AM
Excuse the slightly off topic post - but how do you run an AI game without user input? And how do you examine the results afterwards..
Start the game with cheat mode turned on in your .ini file, hit backquote (`) to bring up the console, type "Game.AIPlay 150" (for 150 turns), wait about half an hour. (It's safe to minimize the window during this time, and maybe even a little faster.) Your civilization will have been autodestroyed, but the others will have played through the ensuing time. Hit control-Z to go into godmode - reveals the entire map and all units, lets you look at any player's information screens. There's a difference between the ` console and the ~ console that I don't understand.

I'll reintroduce tech requirements for religions.
I was thinking about this last night (while folding laundry) and remembered the hitch: AI. I've had to write some custom AI code to get the computer to found religions, and it currently only fires when the prophets are born. The computer won't plan to found religions later, since it doesn't understand the idea. Now, if you give the computer a big stack of prophets it will save one in case it manages to found a religion later, so that it could build the shrine right away. I think I can work with this, so that the saved prophet is instead used to found a religion as soon as the AI discovers the tech, but it'll take more coding.

I forgot to post the Great People distribution last night: 12 prophets, 1 artist, 12 scientists, 1 merchant, 5 engineers in 180 turns.

Is there a way to speed up the great person benefits of the pagan temple to get your first prophet faster, and then bring the speed back to normal after the first prophet?

I'm happy with the current speed, so I don't intend to have this be a standard part of the mod, but it wouldn't be hard to hack in something that doubled the GPP rate of priests as long as there were no religions founded, so that it was a real race to be first. You'd probably want to double Stonehenge and Oracle too, to keep them useful. What would take much more work would be updating the city display screens and F1 to correctly report GPP during that period.

putting all of the religion tech at the start of the tree solved all of these problems
To me that creates a real problem. It makes the religions *much* more interchangable, getting rid of the last hint of real-world flavor that was attached to them.

RED DIAMOND
Jan 27, 2006, 11:24 AM
To me that creates a real problem. It makes the religions *much* more interchangable, getting rid of the last hint of real-world flavor that was attached to them.

No actually in practice religion is "less" interchangable when they are all founded at the start of the tech tree. It also adds "more" flavor to international relations.

Take this example. Custom conts. 11 AI's and me. In this one I like 6 islands/conts. This gives me and maybe one other civ a lone island start. Remember, all religions are founded within the first 10 turns and now you begin to build your civ.

Fast forward to contact with other civs. What you find is 11 others civs and 6other religions(I founded Islam). Now, trying to spread to the new civs is much different/harder. The likelyhood of international tension is higher because of the different religions. There is also a race to indoctrinate the non-founding civs with your religion etc... The civs that have been touched by another religion will adopt it as state and getting them to switch is more fun.

I could go on about how the flavor is enhanced and gameplay is actually MUCH better. Many more religious wars etc. I might add to this, I also enhanced the civics to 45 total choices. The additional options of civics social engineering and early religion really adds so much to this game, it has to be seen to be totally understood.;)

Kidinnu
Jan 27, 2006, 12:31 PM
No actually in practice religion is "less" interchangable when they are all founded at the start of the tech tree. It also adds "more" flavor to international relations.
We'll just have to agree to having different tastes here; I find the texture of racing for early religions, and religions with wildly varying dominances, more interesting than what sounds like seven religions each with two or three adherents. I find plenty of competition to spread religion in either the vanilla rules or my playtests of this mod; even when I as the player sprint to a religion around 1200 BC, if my neighbor founds Islam in 1 AD and converts two of his neighbors I know I'm in trouble no matter how large my bloc.

Caveats: I've only toyed with games set up like yours, never put a lot of time into them. If there were some ability to have varying relationships between religions, a la Europa Universalis, then the more even spread might be interesting. However, right now, all religions appear to be equally intolerant of each other, and equally tolerant of pagans.

Badmojo
Jan 28, 2006, 06:10 AM
I love this mod!!!
it really fixes on of the biggest mistakes in vanilla civ!
combining this with the real religion mod, which removes all the unreal religions... would be a great mod!

Bast
Jan 28, 2006, 06:18 AM
I love this mod!!!
it really fixes on of the biggest mistakes in vanilla civ!
combining this with the real religion mod, which removes all the unreal religions... would be a great mod!
Yes. You should think about combining these two mods.

Let's think about this. Religions have advantages and disadvantages. For instance, with Judaism you can't use clam, pig etc... Therefore when you get your prophet, and you try to get your first religion, you should get a religion that will suit you geographically, demographically etc... That's how the real religions evolved.

Islam is islam because the religion was started and followed by people living in mostly desert areas.

This would make it perfect.

I mean you don't even need to combine mods, just give advantages and disadvantages to the religions.

RED DIAMOND
Jan 28, 2006, 06:37 AM
We'll just have to agree to having different tastes here; I find the texture of racing for early religions, and religions with wildly varying dominances, more interesting than what sounds like seven religions each with two or three adherents. I find plenty of competition to spread religion in either the vanilla rules or my playtests of this mod; even when I as the player sprint to a religion around 1200 BC, if my neighbor founds Islam in 1 AD and converts two of his neighbors I know I'm in trouble no matter how large my bloc.

Caveats: I've only toyed with games set up like yours, never put a lot of time into them. If there were some ability to have varying relationships between religions, a la Europa Universalis, then the more even spread might be interesting. However, right now, all religions appear to be equally intolerant of each other, and equally tolerant of pagans.

Taste, hmm maybe, but I really think it has more to do with actual gameplay under the settings I described. Without real seat time I think it is really to hard to conceptualize based on some clear misunderstandings about how the setup actually operates in practice. No worries. ;)

[to_xp]Gekko
Jan 28, 2006, 08:09 AM
Yes. You should think about combining these two mods.


What he said. Realistic Religions + True Prophets = Civ4 Religion-related fun is doubled :goodjob:

lordroy
Jan 31, 2006, 03:12 AM
I will check this out. Great Work.

-=R=-

Cyberstar
Feb 02, 2006, 05:39 AM
This does sound terrific, especially the last few comments about combining it with realistic religions. I've been playing abbamouse religions and like it the best so far, but find that Zororastrianism tends to dominate, which isn't very realistic. Great graphics though.

One thing that has always bugged me about the vanilla religions is that a civ that founds a religion will never convert to another one no matter what. It would be more fun it it were possible for a founding civ to convert at times, even if it's more difficult for them than a non-founding civ.

Roland Johansen
Feb 02, 2006, 11:37 AM
This sounds like a really good idea and reading about the AI-played games, it seems like it works also. Great job.:goodjob:

One thing though, I don't think that the AI realizes that there is a race to get the first great prophet out so that it can found a religion. The human player clearly realizes this and will prioritize the construction of the first pagan temple and the assigning of the first priest. After that, the human player will probably not bother with pagan temples and priests except when the happiness bonus or culture boost of the temple is useful. This is a clear advantage for the human player in comparison to the AI. At the highest difficulty levels, it can be a daunting task to found a religion in the vanilla game. But I don't think that it will be as difficult in this mod. We can of course solve this by playing at higher difficulty levels, but giving the AI all kinds of bonuses is not very elegant.

I was thinking of another way that was maybe easier for the AI to compete with the human player. Maybe, you'll like it.

What if the construction of say 3 pagan temples allowed the construction of a new small wonder, the Great Temple, that produced 2 free priest specialists. At the same time, the pagan temples ability of assigning priest specialists would be removed (reducing the value and thus the cost of these temples a little). In this way, there are still a lot of resources needed to get a religion because the construction of the three temples and especially the construction of the Great Temple would cost a lot of resources. But on the other hand, the race to obtain a religion between the human and the AI is probably a bit more fair. I think that the AI will go for such a small wonder, while not understanding the connection with obtaining a religion. The Great Temple should of course get a very high religion value for the AI, so that it will build it as soon as possible (like a human would). With the production bonuses that the AI gets at the higher difficulty levels, it will be a challenge again to found a religion.

Some details: If possible, the Great Temple could transform into the religious shrine for a specific religion when it is founded. The nations that fail on the race for the religions, will still have a Great Temple. That's not as good as the shrine of a religion, but still nice.
There will probably be more variation in the time needed to build the Great Temple between the various nations. So maybe that difference in founding time of religions that you were looking for will be present in the game in a natural way.

Optimizer
Feb 02, 2006, 01:49 PM
Great mod!

I have always been upset when I lost the race for a religion tech by one turn. With this mod, you get no religions for free.

I would also suggest the Pagan Temple to give +1 culture, and the Obelisk to be dropped. Some of the religious techs can also be dropped, to make the game more "slim".

Fachy
Feb 02, 2006, 10:57 PM
I'm not sure how the mod works, but if I got it right then for me as a Moslem I find it very offending to figure prophets (Mohammad or others) graphically in a game.

AWolfe
Feb 03, 2006, 12:52 AM
if I got it right then for me as a Moslem I find it very offending to figure prophets (Mohammad or others) graphically in a game.
Then don't use the mod.

lordroy
Feb 03, 2006, 03:18 AM
(Censored)

Che Guava
Feb 03, 2006, 08:54 AM
A suggestion for "pagan" cities (keeping in mind I would have no idea how to mod this in): every city that has pagan temple has a 10% chance per turn of developing a proto-religion, or 'cult' based on a nearby resource. This cult would spring up in a city with no religion, would not spread to other cities or allow any more improvements to be built, and could only remain if the religion civic is paganism. It would, however, give a small growth/production/commerce bonus, based on the resource the cult is founded on.

For eg: Calcutta has had no city religion for 12 turns, and sponaneously founds a "Wheat Cult": the worship of the the wheat harvest. Calcutta now receives a 1+ food bonus for every tile in its radius that has wheat, as well as one extra great prophet point. A couple of turns later, Judaism spreads to Calcutta, and the cult (and its bonuses) disappear.

I think this kind of system would give a nice little nod to our pagan roots, as well as give an incentive to spread your own religion to those not 'enlightened'. Spread your religion to your heathen neighbours and watch as thier earthy pagan ways erode, and lose bonuses related to thier former dieties.

Kidinnu
Feb 03, 2006, 10:36 AM
Posting 060 now. Changes are (as predicted in message #17):

Pagan temple has same cost, bonuses as a normal temple.
Pagan temple has same prerequisites (priesthood!), plus can only be built in cities without religion.
When religion spreads to a city, any pagan temple present converts to the new religion.
AIs will found multiple religions if they're using, or want to use (Elizabeth), Free Religion.

Free time's been scarce (especially since I tried playing Europa Europa - EU was lots of fun, but Civ is just too slow to reproduce it pleasantly), so I haven't been able to do the AI work necessary to put technology prerequisites back in.

Many of the other suggestions have merit (I particularly like Che Guava's), but are outside the scope of what I'm trying to do. I'm happy to give advice if other people want to fork my mod.

Qlx
Feb 03, 2006, 11:06 AM
I really like this idea, and I like your minimalistic approach which tries to touch as less as possible. I wish every mod had this scope so we colud merge the ones we like according to our own taste :)

My tiny suggestion will be to re-evaluate the cost of the techs that makes the foundation of a religion possible, since they will be overvalued at this position as they cannot find a religion.

Fachy
Feb 03, 2006, 05:56 PM
Wolfe My problem wasn't me using it, it was it being allowed to be used!

Lordroy I didn't quite get ur drift?

AWolfe
Feb 04, 2006, 04:09 AM
Fachy, how dare you have the arrogance to say "allowed to be used"? Your personal beliefs give you absolutely no right to decide what anyone else can or cannot do. Tyranny in the name of religion is still tyranny, and is pure evil.

RED DIAMOND
Feb 04, 2006, 04:14 AM
Wolfe My problem wasn't me using it, it was it being allowed to be used!

Lordroy I didn't quite get ur drift?

Ok Fachy, don't misunderstand how Propehts are repsented in the game.

On the otherhand most people may not be in the know about Islam and the prohibition of any visual portrayal of Mohammad.

Both sides should just settle down.:cool:

AWolfe
Feb 04, 2006, 04:23 AM
On the otherhand most people may not be in the know about Islam and the prohibition of any visual portrayal of Mohammad.
And some of us are in the know, and just don't care about their beliefs. Personally, I view all religion as myths at best, tales told to scare children. It really annoys me when someone tries to cram their favorite superstitious nonsense down someone else's throat.

lordroy
Feb 04, 2006, 04:34 AM
(censored)

[to_xp]Gekko
Feb 04, 2006, 05:09 AM
that's the spirit, Wolf :goodjob:
though I have to say religion in Civ4 is awesome, I really am a religious fanatic in-game :D

Kaiserguard
Feb 04, 2006, 05:45 AM
Great mod however, but did you considered the following? First to discover Meditation will get free Great Prophet, same goes to Polytheïsm etc.

[to_xp]Gekko
Feb 04, 2006, 05:59 AM
I like the sound of that... sure it would make little difference from vanilla civ4, but it would let you decide WHERE to found the religion, which is definitely a plus. I vote for that, it's simple and it does the job :goodjob:

Nadin Bytefelt
Feb 04, 2006, 12:14 PM
to politic. me own opion. from self edit.

Nadin Bytefelt
Feb 04, 2006, 12:28 PM
to politic. me own opion. from self edit.

Nadin Bytefelt
Feb 04, 2006, 12:32 PM
sorry for this 2 reply not for Civ forum thrend.i will dont make more politic message.
better to play civ4 and politic to politc...

your mod is nace, make more ideas. thnks

RED DIAMOND
Feb 04, 2006, 12:57 PM
And some of us are in the know, and just don't care about their beliefs. Personally, I view all religion as myths at best, tales told to scare children. It really annoys me when someone tries to cram their favorite superstitious nonsense down someone else's throat.

It is not about "caring" per se, its about respect. You do not have to share the same beliefs to show some decency and respect for something that is of value to someone else.

If you really "are" in the know about Islam, then you should "understand and respect" the differences in your personal beliefs and those that follow Islam or any other religion. You can be a non-believer and still not be rude and disrespectful to those that believe in whatever religion/myth etc...

Nobody was attempting to cram anything, however, they were pointing out something that is not allowed in their faith simple as that.

lordroy
Feb 04, 2006, 01:33 PM
(censored)

lordroy
Feb 04, 2006, 02:13 PM
(censored)

Civrules
Feb 04, 2006, 02:20 PM
Lordroy, I strongly recommend that you calm down. I want to see no more of these posts. Warned.

lordroy
Feb 04, 2006, 02:27 PM
Lordroy, I strongly recommend that you calm down. I want to see no more of these posts. Warned.


I am not sure exactly what I did wrong. I will re-read the rules, just to make sure I am not doing anything that I should not. I have only been around here since 2001... I would not know how to conduct myself.

I wish to apologize to Kidinnu for allowing people to get under my skin, and, to take away from this great mod. I wish to apologize to the people who enjoy this mod and have intelligence. I wish to ask that Civrules please also warn the people who are on the other side of the arguement to also "calm down".


Thank you,

-=R=-

Civrules
Feb 04, 2006, 02:59 PM
The comments which you chose to delete were clearly stepping over the line. Lets leave it at that and continue with the on-topic discussion of the mod. If you do have anything else to say, PM me.

Fachy
Feb 06, 2006, 03:17 AM
AWolfe Get a life, I was simply expressing my feelings. Isn't that what a forum is for??

Red But it's weird christians didn't mind Jesus being visualized, jews didn't mind Moses being visualized, am I the only person with a holy prophet here??

*Dying to know what lordroy has posted* heh

RED DIAMOND
Feb 06, 2006, 03:44 AM
AWolfe Get a life, I was simply expressing my feelings. Isn't that what a forum is for??

Red But it's weird christians didn't mind Jesus being visualized, jews didn't mind Moses being visualized, am I the only person with a holy prophet here??

*Dying to know what lordroy has posted* heh

No Fachy there is not the same prohibition in Christian or Jewish faiths.

Aussie_Lurker
Feb 06, 2006, 03:50 AM
The problem, Fachy, isn't you voicing your own opinion about whether or not you want to use the mod-its insisting that everyone else has no right to use the mod either. As it happens, there is no physical depiction of Mohammed in either this mod or in Vanilla civ, as all 'Prophets' in the game have a generic shape. If, however, you have a problem with even this, then I will suggest that you simply don't play the game at all.

Yours,
Aussie_Lurker.

AWolfe
Feb 06, 2006, 05:45 AM
AWolfe Get a life, I was simply expressing my feelings. Isn't that what a forum is for??
If you are free to express your feelings, then others can do so however they wish, including depictions of historical figures if they so wish. Anything else is hypocrisy. BTW, you can express your feelings. You cannot tell others what they may or may not do, or what mods they may or may not use. You don't have that right.

lordroy
Feb 06, 2006, 07:06 AM
(censored)

Kidinnu
Feb 06, 2006, 12:46 PM
Enough.

Please keep discussion in this thread focused on the True Prophets mod. I'm happy to hear suggestions for improving the mod, or reports on games played with it. I'll also respond to requests for help integrating it with other mods.

Anything else may result in a request for moderation. Since they've already stepped in once, please get back on-topic before the thread gets locked.

[to_xp]Gekko
Feb 06, 2006, 01:20 PM
Hi Kidinnu, what do you think about the suggestion Kaiserguard made in the third page of this post? ( first one discovering technology X gets free great prophet).
to make it even better, you could add to the game a second kind of Great Prophet with only one action available: founding the corresponding religion. this modified great prophet would only be available if you are the first one to discover a given tech.
basically the only difference between this system and the vanilla game is that it allows you to choose where to found a religion ( assuming you create 7 different kinds of modified prophets, each founding a different religion, and then associate each one of these prophets with the right tech.)

Kidinnu
Feb 06, 2006, 01:30 PM
Gekko, I'm not interested in that, because to my mind it *nearly* turns the process of starting religions back into tech-chasing. There is a tradeoff - you could use the prophet to instead grab another tech, or for that +2 production that is really, really useful in the very-early game - but I want to decouple religion from technology, and instead have it tied to something closer to culture. That tradeoff *might* make for an "interesting decision", though.

If somebody using my mod wants to follow Kaiserguard's idea, it's really easy:

Open True Prophets 060/Assets/xml/technology/CIV4TechInfos.xml
Change the <FirstFreeUnitClass> tag from NONE to UNITCLASS_PROPHET for each technology that you want to grant a prophet.

For reference, the seven technologies that grant religions in vanilla Civ4 are: Meditation, Polytheism, Monotheism, Code of Laws, Philosophy, Theology, Divine Right.

[to_xp]Gekko
Feb 06, 2006, 01:50 PM
There is a tradeoff - you could use the prophet to instead grab another tech, or for that +2 production that is really, really useful in the very-early game - but I want to decouple religion from technology, and instead have it tied to something closer to culture.


That's the reason why I suggested creating a slightly different prophet that has only one action available to him (founding his religion) : to keep people from using that prophet differently ;)

but I see you don't like religion being linked to technologies, so it does not matter much :)

Aussie_Lurker
Feb 06, 2006, 02:25 PM
You see, I want a partial decoupling of religion from techs, but the idea about getting a great prophet with a tech would still allow this decoupling, as which religion they found-if they choose to found one at all-is not connected to a specific tech. Also, though I still want some link between religious techs and the founding of religions-even if it is only loose, and the Great Prophet from tech idea would be a good way to do it IMO.

Yours,
Aussie_Lurker.

lordroy
Feb 06, 2006, 02:36 PM
Looking forward to adding this to "Faces of God" mod by Sevo


-=R=-

Civrules
Feb 06, 2006, 03:41 PM
This is enough. Lordroy... if you have been warned once, common sence should tell you not to attempt anything like that again (images in that post have been deleted, really not needed. Just discuss the mod. If you DO NOT like it, DO NOT post). Next time I see this thread go off topic, it'll be closed. Next time I see someone try acting out of place, he'll be banned.

RED DIAMOND
Feb 06, 2006, 03:47 PM
Yippie! BOT. Your mod is interesting and has given us all something to think about. Just seeing all of the various ideas here helps me fine tune my personal mod. Great job.:goodjob:

Civrules
Feb 06, 2006, 06:44 PM
Maybe I didn't make myself clear (two posts were deleted). From this post on, this thread gets back on topic. No more spam, no more complaining. No more responses to complaining. Just be on topic please, or you will get a ban.

Spocko
Feb 13, 2006, 06:33 AM
I've merged this mod (great idea!!) with Alilum's Alt Religion mod (another great idea!). Now my Great Prophets are able to found one of seven religions other than the vanilla seven. The hardest part of merging these two mods was figuring out how to make TPEventManager work with CvCustomEventManager - I had to dump the contents of TPEventManager into the CvCustomEventManager because I couldn't figure out how to let the two files coexist.

I'm trying to figure out what file calls 'TrueProphetTextInfos' - I want it to point to another file instead (that contains pedia entries for the alternate religions, etc.) but I cannot find the calling file. I've renamed TrueProphetTextInfos (just to see who complained that the file was not available - but there were no complaints).

Also, when I found a new religion, I see bulky text like 'TXT_FOUND_RELIGION_EZBOLISM' in the message queue, followed by a more elegant-looking text such as "Spocko founds Ezbolism." I suspect that the program defaulted to using the bulky text instead of the elegant text provided in TrueProphetsTextInfos - once I figure out who calls TrueProphetTextInfos, I hope these messages will display more elegantly.

I really like the feel of both of these mods merged together. I launched an AI-only game of Huge map, marathon speed, 900 turns, and five of the seven religions were founded. I also added a Religious Victory condition to ensure the AI is motivated to pursue religions.

Tonight, I plan to merge this with Mylon's Inquisitor mod. I hope you can help me find the file that calls TrueProphetTextInfos. Thanks!

I would post this merge, but because I've now merged 24 mods together, I don't think I could accurately untangle everything to yield a modpack of only these two mods.

Spocko

Kidinnu
Feb 13, 2006, 06:44 AM
Most of the XML files have fixed filenames, but the stuff in the text/ directory doesn't - any file in that directory will be read. So you can name your new text files whatever you want to (so as to make maximum sense, and keep them separate from Firaxis'), and they'll get read in.

So create a new XML file in Assets/XML/Text/ modeled after the True Prophets one, but put in your own tags and your own expansions for them.

Spocko
Feb 14, 2006, 05:56 AM
Thanks, Kidinnu. I'll check into this tonight, and I'll see if I can clear up the so-called problem with the so-called bulky text messages. And I didn't know that all files in the Text folder are read by the game, but then again there's not much that I do know about Python and XML :)

Spocko
Feb 19, 2006, 08:02 PM
I've been playing my composite mod in which I've merged TrueProphets, Alt Religion, the Inquisitor, and Religious Victory. It works beautifully :)

I really like the feel of the game now that I've removed RW religions, and I like the fact that religions are founded by people, not by technology.

Thanks to Kidinnu, Alulim, Mylon/Robo Magic Man and donquixote235 for creating the initial mods - together, they've made religion a much more satisfying and complex aspect of the game, IMHO.

Eusebius
Mar 08, 2006, 11:49 AM
Readers of this thread may be interested in checking out my new thread about creating a mod that adds all world religions to the game: http://forums.civfanatics.com/showthread.php?t=162297

Eusebius

Eusebius
Mar 29, 2006, 10:22 PM
Kidinnu, I'm walking through your code and have a question...

To found a religion, it looks to me like you basically bulid the bujilding and then set the holy city...

pCity.setHasRealBuilding(iBuildingNumber, 1)
self.onBuildingBuilt([pCity, iBuildingNumber])

game.setHolyCity(iReligion, pCity, true)

You never call CyPlayer.foundReligion and even have a call to #self.onReligionSpread([iReligionIndex, iPlayer, pCity])
commented out. It doesn't seem like that ought to be enough to get the religion founded and spreading. Why does this work?

Thanks so much,
Eusebius

Kidinnu
Mar 31, 2006, 08:42 AM
Eusebius, I'm afraid I've hardly touched it since I released 0.6, and I don't recall how it works for sure. If I remember right, it's one of
* the ReligionChanges field in the BuildingInfos has the happy side-effect of causing the religion to be founded, or
* setting the HolyCity (in onBuildingBuilt()) causes the religion to be founded.

Kidinnu

Optimizer
Jul 20, 2006, 05:38 PM
Great idea! Is it developing?

Jeckel
Jul 20, 2006, 07:43 PM
seting a holy city should found the religion for you, I don't think you have to directly call foundReligion.

tflst5
Aug 28, 2006, 08:33 AM
would it be possible to add a preferred religion trait for the civ leaders now too, or at least the ones that had a religion? It wouldn't change the gameplay much, but might make things a bit more fun - more real.

Grave
Sep 21, 2006, 01:30 PM
would it be possible to add a preferred religion trait for the civ leaders now too, or at least the ones that had a religion? It wouldn't change the gameplay much, but might make things a bit more fun - more real.

http://forums.civfanatics.com/showthread.php?t=186697 :D

I haven't read though all 5 pages of this... so if it was mentioned already, disregard...

... but how about a specific building that can generate a specific prophet to found a religion? Example:

When discovering Meditation, you can build some kind of shrine that generates a specific Prophet that can found Buddhism.

There would have to be a specific building for each religion, and a specific great Prophet that can be generated by that building that will only create one specific religion. You would need to do this for every religion.

Corvex
Dec 08, 2006, 05:07 PM
I realize it's considered vulgar to bump an old thread like this, and I'm not even sure if Kidinnu is still around, but is there any chance of having the made compatible with Warlords?

Aussie_Lurker
Dec 08, 2006, 08:10 PM
For what its worth, Corvex, an update to this Mod is on my "to-do" list. My hope is to do more than merely make it compatible with Warlords. I am actually going to see if I can make "Found Religion" a genuine mission for Prophets, by modifying the SDK. Can't give a timetable yet, but I predict to have something (or announcement of my failure ;) ) sometime early in 2007. Keep your eyes peeled.
Oh and, if you are still around Kidinnu, I hope you don't mind me doing this?

Aussie_Lurker.

Spocko
Dec 09, 2006, 07:47 AM
For what its worth, Corvex, an update to this Mod is on my "to-do" list. My hope is to do more than merely make it compatible with Warlords. I am actually going to see if I can make "Found Religion" a genuine mission for Prophets, by modifying the SDK. Can't give a timetable yet, but I predict to have something (or announcement of my failure ;) ) sometime early in 2007. Keep your eyes peeled.
Oh and, if you are still around Kidinnu, I hope you don't mind me doing this?

Aussie_Lurker.

Hi Aussie_Lurker and Corvex,
FWIW, I've fused this mod with Alulim's Alt Religions Mod. In doing so, I'd been hacking away, to no avail, at trying to use RogerBacon's approach for monitoring Assassins to monitor Prophets. It seems that in EventManager's "GreatPersonBorn", something happens in the SDK by which the Prophet is either converted into a super citizen or put into sleep mode BEFORE GreatPersonBorn invokes the FoundReligion "subroutine" in eventManager. Because the Assassin Mod works by tracking Assasin's that move, the fact that Prophets are born and then either supersized or "put to sleep" means that my prophets are never picked up by the Assassin Mods technique for tracking moving prophets.

I've got things arranged such that a prophet is born in one of my cities and it immediately founds a religion without my being able to choose my religion (which is good, for which leader can claim they've had control over their people's religious inspiration?).

Anyway, I think cleaning up True Prophets (Thanks Kidinnu - super great initial effort on this!!) is key to significantly enhancing enjoyment of this game.

I'd like to help, just know that I'm not a coder, just a clever fuser of mods.

Spocko

chipper_30
Dec 09, 2006, 08:05 AM
Hi guys, I had never seen this mod and I find the idea very interesting...
I'd like to take a look at the modified files, unfortunately this mod is based on 1.52... so a compare of the files with the ones from my folder also brings up all the changes from 1.52 to 1.61...
Does anyone know how I could get a hold of the 1.52 files without having to reinstall everything and trying to find the 1.52 patch?
Thanks

Spocko
Dec 09, 2006, 08:30 AM
Hi guys, I had never seen this mod and I find the idea very interesting...
I'd like to take a look at the modified files, unfortunately this mod is based on 1.52... so a compare of the files with the ones from my folder also brings up all the changes from 1.52 to 1.61...
Does anyone know how I could get a hold of the 1.52 files without having to reinstall everything and trying to find the 1.52 patch?
Thanks

Hi Chipper30,
Are you running 1.61 or Warlords 2.08? Regardless, I think you'll find that the changes are identical for any and all versions. The tricky part is how you've set up your EventManager. To my chagrin, many of the newer, cool mods incorporate Dr. Jiggle's INI parser technology, something I've not yet been able to incorporate into my modding (I just don't understand it well enough :)

I should defer to Aussie_Lurker on this, because, as I've said, I just fuse mods, I don't create them. I mostly wanted to reply to you and welcome you to our newly reinvigorated efforts on TrueProphets.

Spocko

Spocko
Dec 09, 2006, 09:27 AM
... I'm wondering if there is a way in the XML to boost the attractiveness of the religion founding "buildings". It seems that if we can mark these foundings/buildings as being of a high strategic value, the AI would recognize these foundings as more valuable than supersizing a prophet. Of course, if we did this, we would impose our bias that founding a religion is a positive act - but in our defense, we know the game is wired to benefit a civ that founds a religion.

In Civ4BuildingInfos, the following tags look like they would add weight to the value of constructing a building: <iAIWeight>, <Flavors>, <iAsset>. Would it be unbalanced to have the founding of a religion trigger a golden age (using <bGoldenAge>)?

Spocko

chipper_30
Dec 09, 2006, 09:28 AM
Hi Chipper30,
Are you running 1.61 or Warlords 2.08? Regardless, I think you'll find that the changes are identical for any and all versions. The tricky part is how you've set up your EventManager. To my chagrin, many of the newer, cool mods incorporate Dr. Jiggle's INI parser technology, something I've not yet been able to incorporate into my modding (I just don't understand it well enough :)

I should defer to Aussie_Lurker on this, because, as I've said, I just fuse mods, I don't create them. I mostly wanted to reply to you and welcome you to our newly reinvigorated efforts on TrueProphets.

Spocko

Thanks, I'm running Warlords 2.08, and so Civ Vanilla is updated to 1.61. I did my compare between the mod and the 1.61 Assets folder.
At first glance, CvEventInterface and CvGameInterface are redirected to the new TPEventManager and TPGameUtils, and there are some XML changes, these shouldn't hard to identify.
My problem is that the included CvMainInterface.py differs from the one I have (1.61). I suppose it is included because there are some changes from the original one in 1.52, but I can't identify which differences come from the mod, and which from the update.

Spocko
Dec 09, 2006, 09:32 AM
Thanks, I'm running Warlords 2.08, and so Civ Vanilla is updated to 1.61. I did my compare between the mod and the 1.61 Assets folder.
At first glance, CvEventInterface and CvGameInterface are redirected to the new TPEventManager and TPGameUtils, and there are some XML changes, these shouldn't hard to identify.
My problem is that the included CvMainInterface.py differs from the one I have (1.61). I suppose it is included because there are some changes from the original one in 1.52, but I can't identify which differences come from the mod, and which from the update.

Hi Chipper_30

... and if you do find that difference, please tell me, because I could not find how CvMainInterface changed for TrueProphets (I visually compared the files: very tedious - what tool do you use to compare files?).

Spocko

chipper_30
Dec 09, 2006, 09:36 AM
Hi Chipper_30

... and if you do find that difference, please tell me, because I could not find how CvMainInterface changed for TrueProphets (I visually compared the files: very tedious - what tool do you use to compare files?).

Spocko

I use Araxis Merge. It reports 77 differences so I am not going to go through all of them... maybe if you have an untouched 1.52 CvMainInterface.py, I could look at it?

Eusebius
Dec 09, 2006, 02:58 PM
For what its worth, Corvex, an update to this Mod is on my "to-do" list. My hope is to do more than merely make it compatible with Warlords. I am actually going to see if I can make "Found Religion" a genuine mission for Prophets, by modifying the SDK. Can't give a timetable yet, but I predict to have something (or announcement of my failure ;) ) sometime early in 2007. Keep your eyes peeled.
Oh and, if you are still around Kidinnu, I hope you don't mind me doing this?

Aussie_Lurker.

FYI, this mod was the basis for Eusebius World Religions which uses the same mechanism for most religions. (In fact I learned to mod from studying this one.) EWR does run on Warlords 2.08. My recollection is that there isn't much in his code that would need converting for warlords.

Aussie_Lurker, I would love to see your SDK code to push a mission. I have no idea how to go about that one.

Eusebius

Eusebius
Dec 09, 2006, 03:07 PM
I use Araxis Merge. It reports 77 differences so I am not going to go through all of them... maybe if you have an untouched 1.52 CvMainInterface.py, I could look at it?

You know, I am pretty familiar with all this code and I really can't think of any reason why this mod would need a CvMainInterface change. I have a feeling that if you just go with the standard Warlords version of that file that everything will work just fine.

But, here is the 1.52 file in case you want it... 144005

Eusebius

chipper_30
Dec 09, 2006, 04:54 PM
You know, I am pretty familiar with all this code and I really can't think of any reason why this mod would need a CvMainInterface change. I have a feeling that if you just go with the standard Warlords version of that file that everything will work just fine.

But, here is the 1.52 file in case you want it... 144005

Eusebius

I guess this is a mistery... but there are plenty of changes with this file too... Thanks for the file anyway.

Aussie_Lurker
Dec 09, 2006, 07:17 PM
Well, the wierd thing I have discovered is that I am kinda rubbish when it comes to Python, but have at least a half-way decent grasp of C++, especially after some very kind and patient people put my feet in the right direction. Though it is still not second nature to me, I still find it much easier than Python.
Anyway, my point is that SDK allows us to do things with this mod which are simply impossible with Python alone, and I am hoping that an ability to add an entire new mission is one of them. In truth, I believe that each religion might require its own seperate mission. Clues in how to do this obviously lie in the code for all the missions already possible in the game, as well as the additions which have been made via things like the CCCP. Anyway, I am not guaranteeing success, but I am at least prepared to look at if its possible!

Aussie_Lurker.

Aussie_Lurker
Dec 09, 2006, 07:34 PM
Well, thats very interesting to begin with. First up we have this code which I believe is for settlers founding cities:

bool CvUnit::canFound(const CvPlot* pPlot, bool bTestVisible) const
{
if (!isFound())
{
return false;
}

if (!(GET_PLAYER(getOwnerINLINE()).canFound(pPlot->getX_INLINE(), pPlot->getY_INLINE(), bTestVisible)))
{
return false;
}

return true;
}

Then we have this for spreading religion:

bool CvUnit::canSpread(const CvPlot* pPlot, ReligionTypes eReligion, bool bTestVisible) const
{
CvCity* pCity;

if (eReligion == NO_RELIGION)
{
return false;
}

if (!(GC.getUnitInfo(getUnitType()).getReligionSpread s(eReligion)))
{
return false;
}

pCity = pPlot->getPlotCity();

if (pCity == NULL)
{
return false;
}

if (pCity->isHasReligion(eReligion))
{
return false;
}

if (!canEnterTerritory(pPlot->getTeam()))
{
return false;
}

if (!bTestVisible)
{
if (pCity->getTeam() != getTeam())
{
if (GET_PLAYER(pCity->getOwnerINLINE()).isNoNonStateReligionSpread())
{
if (eReligion != GET_PLAYER(pCity->getOwnerINLINE()).getStateReligion())
{
return false;
}
}
}
}

return true;
}

So, for starters I am thinking that perhaps a fusion of the found city and spread religion functions might be a place to start. What do you guys think?

Aussie_Lurker.

Spocko
Dec 09, 2006, 08:09 PM
Accolades for your blazing a trail into the SDK for this, Aussie_Lurker :)

I am struck by the idea of having one mission per religion... because at the point the religion to be founded is chosen, I wonder whether that choice should be random or decided by the player/AI. It would not seem to matter if all religions are equal, but, at least in my case, I've tweaked the effects of temples and cathedrals for each of Alulim's seven religions - with these effects being combinations of exp points, happies, beakers, coins, healths, and/or hammers.

So, at least for me (and maybe only me), my religions are not the same. The question I've wrestled with is, can an aggressive leader of a country "dictate"/choose Vaalkazism because it is a martial arts oriented religion or can we say that a leader cannot influence the beliefs that a new Prophet is preaching (here, our prophet could be preaching Sutism, a religion whose emphasis is happiness).

I think we could tie leader traits with favorite religions, but I'm not sure we should do this on behalf of our inspired prophets who may have better ideas. Indeed, a militaristic society could encourage a grassroots effort to install a religion which emphasizes happiness or science instead of brute force.

Spocko

Aussie_Lurker
Dec 09, 2006, 09:06 PM
Something else I want to look at, as soon as I figure out how to do the missions, is the possibility of having some kind of 'Lock-out' mechanism for founding a religion. This way you could have multiple religions available per tech, but once you select one, all the others get locked out. An example might be Polytheism unlocking the ability to found The Dodecameron (the religions seen in Ancient Egypt, Greece, Rome and Meso-America) or Hinduism. Monotheism would unlock Zoroastrianism and Judaism. However, if you select one, the other is no longer available. Anyway, thats way down the track. For now I just want to figure out how to make Prophets found religion using the SDK ;)!

Aussie_Lurker.

Spocko
Dec 09, 2006, 10:13 PM
Aussie_Lurker,

I wonder if it might not be fruitful to look for where the SDK ties in with the EventManager's "GreatPersonBorn" subroutine?/method? (what are they called, those python statements that begin with "def onGreatPersonBorn"?).

I hardwired the eventmanager's onGreatPersonBorn to drop down to Kidinnu's "tpConsiderFoundingReligion" in which this method forced the founding of a religion - but for some reason, even though a great person was born, the process never dropped down to tpConsiderFounding, every time. Once, my own prophet was forced to found a religion and another civ founded a religion - so it is finding it somehow. It's as if the event onGreatPersonBorn is selectively invoked, not every time a greatperson is born.

Is the Python class/method/thingy "onGreatPersonBorn" called after an AI has already decided to either supersize a greatperson or put the GreatPerson into sleep mode?

I'm out of my league here, but it is maddening to see something work sometimes but not other times. This shows a lack of understanding :)

Spocko

Kidinnu
Dec 10, 2006, 08:41 AM
I realize it's considered vulgar to bump an old thread like this, and I'm not even sure if Kidinnu is still around, but is there any chance of having the made compatible with Warlords?

No, I'm not really around, and really not playing Warlords. :(

It's quite cool to see so much discussion around my little proof-of-concept. By all means, feel free to port to newer versions of Civ, merge with your own mods, or do whatever else interests you. I'll be subscribed to this thread for several months yet & will answer questions as I can.

Unfortunately, the version of the code I have archived on this laptop is only 0.5; I can verify that it doesn't contain any changes to CvMainInterface.py.

Eusebius
Dec 10, 2006, 02:08 PM
Is the Python class/method/thingy "onGreatPersonBorn" called after an AI has already decided to either supersize a greatperson or put the GreatPerson into sleep mode?


I have always seen this called before the Great Person has taken any other action.

Something else I want to look at, as soon as I figure out how to do the missions, is the possibility of having some kind of 'Lock-out' mechanism for founding a religion. This way you could have multiple religions available per tech, but once you select one, all the others get locked out. An example might be Polytheism unlocking the ability to found The Dodecameron (the religions seen in Ancient Egypt, Greece, Rome and Meso-America) or Hinduism. Monotheism would unlock Zoroastrianism and Judaism. However, if you select one, the other is no longer available. Anyway, thats way down the track. For now I just want to figure out how to make Prophets found religion using the SDK ;)!


Founding the religion is easy. You can...

Build a building that has the <ReligionType> set to that religion. This is essentially what True Prophets does by using the founding buildings.
Use a unit that has the <ReligionSpreads> set to that particular religion. This is how missionaries work.
Ultimately, everything trickles down to someone calling CvCity::SetHasReligion. You can also get there from CvPlayer::foundReligion or even CvGame::setHolyCity.In other words, the SDK is pretty careful to found the religion any time you do anything that involves that religion.

If you continue to found religions through prophets buildings, your lock-out mechanism can largely be handled that way, since there are so many fields in XML that allow you to set parameters around building construction.

The canConstruct and cannotConstruct mechanism in the Python GameUtils file can set further restrictions.

Where in the SDK does it talk about missions?

Eusebius

Impaler[WrG]
Dec 11, 2006, 01:56 AM
I have done some work with Missions in the past primarily related to spies. Missions are a bit more complex then most Building and technology effects.

The relevent code is in CvUnit.cpp ware their is a long list of enumerated mission types in a series of switch statments. In their the "can perform" functions for each mission are called which check the unit Info to see if the unit has the ability and then checks for all other requirments like having money or being in the correct location. The actual "perform" mission functions are again in a switch statment and fire off all the various effects. To add a new mission you must Add the mission to the XML missionInfos.xml and the Enums.h in such a way that their lists are in identical order, this is how the assosiation is made. Then you add the Missions Enum in the various switch statments and create "can perform" and "do mission" type functions which get called in the switches. Copying the architecture of an existing mission and then modifying it would be the easiest solution.

I would recomend creating a generic found religion mission for now, for one thing its much easier to do and will be flexible regardless of the number of religions. The effect would randomly select from all the religions which the player could leagly found (not already taken and they have the tech for it). From their you can start looking into elaborating on the system to pass a specific religion as an argument. This will probably also require some work in getting the UI to display a button for each foundable religion probably based on the code that allows it to show various buttons at apropriate times.

ollj
Dec 11, 2006, 02:52 AM
I satrongly disagree with everything Bast posted here.
The mod is still a good concept, sadly stretching the game a lot and thuis ballancing it against culture in the game.
Its also against many different religions in the game at once because not everyone gets any prophet early enough.

Aussie_Lurker
Dec 11, 2006, 03:24 AM
I was thinking of going that way, but the complicating factor is how do I restrict access to the religions based on tech? Is it in CvTeam or also within CvUnit? Any advice you could give in this regard would be very helpful Impaler :).

Aussie_Lurker.

Eusebius
Dec 11, 2006, 09:00 AM
I satrongly disagree with everything Bast posted here.
The mod is still a good concept, sadly stretching the game a lot and thuis ballancing it against culture in the game.
Its also against many different religions in the game at once because not everyone gets any prophet early enough.

Great Prophet flow is definitely an issue. In my mod, I got around this by having religions founded in different ways. Hinduism is founded conventionally because there is no single great prophet associated with it. Some of the religions are founded by building a wonder. Most of the others through great prophets. I also had Monuments give a +1 toward production of great prophets.

Eusebius

Impaler[WrG]
Dec 12, 2006, 01:27 PM
The tech pre-requisite is a data member of the Religion so it should be a simple process of performing a loop on all religions and checking if the player has the pre-requisite tech and the religions is not yet founded, if both conditions are true its a valid religion for founding. I did a similar thing for the spy tech steal. Now to randomly select a religion out of a subset takes a bit more work. The method I have used which could probably be turned into a more generalized array selection method by use of a function pointer (a pointers can point to functions and functions can be the arguments for other function, this is an advanced C++ technique not seen in much of Civ4)

Basicly you start by initializing a parrelel boolean array to the array your searching, loop the array perforing your validation check on each index. The parrelel array is set with the return boolean of the validation, true if its valid, false if its not. On each true evauation a counter increments. When your done with the loop you now have an array of booleans and a count which should match the number of trues in that array. At this point check if count is zero, if so return -1 aka not found. Now generate a random number betwee 0 and count -1 call that "Goal". Walk the boolean array decrementing goal as you pass each true, when goal is zero return the current index as the answer, it will corespond to one of the valid index's on the original array and will be completly random amongst the valid set.

GoodGame
Jan 05, 2007, 07:39 PM
Just an alternative idea (I never ran into this thread before, and assuming it's not to hard to implement new religions into the code):

Make the pagan temples a national wonder (give culture as a bonus, and 2 Priest slots as a regular temple), and building them founds them founds a 'culturally appropriate' paganism (e.g. Greeks found "Olympic Gods" a la TAM; Egypt founds "Heliopic Gods").

When one of the six major religions comes to an empire, it automatically obsoletes the paganism and the pagan temple (forced conversion to on of the major 6?).

Optionally:
Paganism could spread like a normal religion, but when it spreads to another empire for the first time, that form is still a different religion (in other words if 18 civs, there are 18 versions of paganism, and none are the same--e.g. no diplomacy bonuses). Maybe the first city to receive it gets a free Pagan Temple? (In exchange for a turn of revolt?)

To balance the pagan temple, perhaps it causes unhappiness in the city that it's built (ritual sacrifice, etc..), but cities converted to paganism get the usual religion bonuses of happiness/free culture.

Ekmek
Apr 29, 2008, 07:23 PM
I'm resurrecting this because I working on something similar and tried as much as code by xml alone.

I was trying to make it so that a gp "founds" a religion by using the missionary spread function. after changing the unitAI I got it to set up the religion which "founds" it but it doesn't give a holy city. but I added extra gps to the AI and found they won't try and build the shrine if the missionary ai is sret.

I also found that if you give a gp multiple religions to spread the ai will just pick the first one.

so i found this (not for bts unfortunately):

the problems I have is
- how to make religions not appear with techs (when I set it to none they appeared after a few turns)
- get the shrine to establish the holy city (i think I can do this python)
- get the AI to found its own religion (I'm thinking of making religion-specific propets the only appear to the favorite religion of each civ (adding a few to those with one) and have the other religion great prophets upgraded/obsoleted by state religion only prophets of that religion (whew)

anyone have thoughts on this? thanks!

IronicBuddha
Apr 29, 2008, 10:41 PM
Monument gives +1 great prophet point?

CyberChrist
May 06, 2008, 07:27 PM
@Ekmek:
You might want to check out Eusebius World Religions (http://forums.civfanatics.com/showthread.php?t=201482). Although it is for Warlords only you should still be able to get some good examples/ideas of how to do what you are trying to do by examining the code Eusebius used.

Ekmek
May 06, 2008, 07:29 PM
thanks. I notice some warlords python looks different than bts python. weird.

Aussie_Lurker
Jan 01, 2009, 08:14 PM
Ekmek, I don't know if you're still working on this, but it occurs to me that Corporations gives us the best bet for using Great Prophets to found religions. With Corporations, a suitable Great Person can only build each corporate HQ if they have the right tech and if no-one has already built it. So we're already most of the way there.

Aussie.

Ekmek
Jan 01, 2009, 09:29 PM
aussie,

still on my radar but way off. i may do sdk work to make prophets work.

CaptainMidnight
Oct 16, 2009, 11:18 AM
Doesn't the Gods of Old mod have python code that founds religion through building the actual shrine? Therefore couldn't you have a specific building that functions this way and enable its founding in the same way corporations are founded? In this way it would also be easy to tie it to a technology if you wanted by simply putting the building on the techtree.

Also, if it hasn't been mentioned already, what about using goody huts to give a couple of random great prophets early in the game to spur on general religious development.

HappyFunPal
Oct 19, 2009, 04:58 PM
Each city gets one and keeps it. It doesnt affect the game until much later with free religion civics:goodjob: