davidlallen
Deity
We have been working on a Dune mod, but it doesn't do anything special for water. Water should be scarce, and irrigation should also be scarce. We have a mapscript which generates no ocean, oasis, lakes or rivers, but it generates an occasional water improvement. We have buildings like windtraps (which collect water) and reservoirs.
In vanilla civ, improvements can spread irrigation (farms with civil service tech). So you can chain farms away from the terrain water sources. But I cannot find a way that an improvement or building can act as a source for this water.
Does anybody know if there is a tag or existing mod which lets buildings and improvements generate water for irrigation? If not, is there a python hook that would let us do anything? There are python calls to check if a plot is a lake or has irrigation, but nothing to set that. It might be possible to copy each related terrain type and make a variant which has the xml tag bFreshWater set. Then when the improvement is created/destroyed, python could change the terrain type of the plot so it becomes the variant with/without fresh water. That makes a lot of extra terrain types.
I am sure it is possible in the sdk, but I would prefer to leave that as a last resort. If anybody has specifics on that, it would help a little.
In vanilla civ, improvements can spread irrigation (farms with civil service tech). So you can chain farms away from the terrain water sources. But I cannot find a way that an improvement or building can act as a source for this water.
Does anybody know if there is a tag or existing mod which lets buildings and improvements generate water for irrigation? If not, is there a python hook that would let us do anything? There are python calls to check if a plot is a lake or has irrigation, but nothing to set that. It might be possible to copy each related terrain type and make a variant which has the xml tag bFreshWater set. Then when the improvement is created/destroyed, python could change the terrain type of the plot so it becomes the variant with/without fresh water. That makes a lot of extra terrain types.
I am sure it is possible in the sdk, but I would prefer to leave that as a last resort. If anybody has specifics on that, it would help a little.
. This would simulate the problem a bit.
.
. (a) I was hoping there was a python solution (thank you again for the encouragement to learn the sdk, but that is not in the cards for me right now). (b) I would think that some parts of the sdk call something like PlotGetHasFreshWater, so adding a bit to the improvement data structure to store HasFreshWater is only a start. Each time an improvement is created or destroyed, it needs to set or clear the HasFreshWater on the plot. Maybe it is not much code, and maybe we can try that out.