Dune Wars

Well, its not really playable. The entire world adopts Shai-Hulad, and then the game is a big happy-fest where no-one attacks anyone.

The only actual gameplay difference in 1.5.4 is that the religion techs are more spread out in the tech tree. It is an easy XML change in assets/xml/gameinfo/civ4religioninfos.xml to change which is the starting tech for each religion. Search for TechPrereq and change to the desired value. If these techs are not right, you can try the ones in your current design document, and tweak until this effect goes away. If that does not help you can also easily put them back to the 1.5.3 techs, which is guaranteed to cancel any effect from this.

In parallel, I will try to figure out how to implement some of the founding/spreading restrictions in your document.
 
The only actual gameplay difference in 1.5.4 is that the religion techs are more spread out in the tech tree.

Yes, but this is enough. Tweaking the other religion tech requirements a little will make a small difference, but the main thing that we need is to find whatever parameters control spread rate, and set them very low for Shai-Hulad.
 
Looks like our trade connectivity changes could be affecting religion spread. We might need to change the SDK code a bit.

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

The plus side is that there is a SpreadFactor in CIV4ReligionInfos.xml which seems to do what you'd expect.
 
AHR36
Remove the ability to build any improvements on salt-pan *except* the desalination. Otherwise the AI will just build a turbine or cottage on it first, and won't convert it.

* * *

The plus side is that there is a SpreadFactor in CIV4ReligionInfos.xml which seems to do what you'd expect.

Excellent. Lets try tinkering with this a little.

We might need to change the SDK code a bit.

HOLY_CITY_INFLUENCE=1
SpreadFactor = 100
RELIGION_SPREAD_RAND=1000
RELIGION_SPREAD_DISTANCE_DIVISOR=100

Are these things in the sdk or in the xml? Yes, we'll probably need to play with these. If they're just in the xml, we can probably just make our changes there, right? The trade route changes just make every city a candidate for religion spread.

I'd like to see most of the religion spread occurring by missionary (or conquest for Messianism), and earlier religions to spread slower.

* * *
Ok, looks like xml.
I will see if I can come up with some draft values.

It looks like we could also have religions spread from buildings. I'll ignore that for now.
 
So here's a draft.

Base civ religion:
Spreadfactor: 100
Missionary cost: 40
Python: none.

Imperium
Spreadfactor: 150
Missionary cost: 60
Python: removed automatically when another religion is spread to the city. (though it can be re-added afterwards?)

Landsraad
Spreadfactor: 40
Missionary cost: 60
Python: None.

Messianism:
Spreadfactor: 40
Missionary cost: No missionary.
Python: Spreads automatically to any city you conquer

Tleilaxu
Spreadfactor: 10
Missionary cost: no missionary
Python: appears automatically in any city founded by any faction with it as their state religion [this will be only the tleilaxu]

Qizarate:
Spreadfactor: 0
Missionary cost: 40
Python: when spread to a city, automatically eliminates all religions in that city.

Shai-Hulad
Spreadfactor: 30
Missionary cost: 80
Python: none.

Technocracy
Spreadfactor: 80
Missionary cost: 40
Python: none

I'll try testing the spread rates, but it probably needs the python and missionary changes too.
 
There is also iSpreadFactor for each religion in the civ4religioninfo.xml file. You can set it to zero, or some small number. I recommend the modiki link in the civfanatics main menu bar as the best way to learn what you can control in xml; this link for the religion file in particular.

EDIT: simultaneous post. I guess you already found it. I will try to work on the python parts, to prohibit civs from founding/converting to certain religions.

EDIT2: if you mean the build cost of missionaries, see units/civ4unitinfos.xml, field iCost.
 
How do I remove a missionary without causing a crash?

If you can get the python done, I will test and balance the spreadrates.
 
There is already no missionary for Tleilax. A shortcut is to set the unit iCost to -1, so it can never be built. Removing units requires changing a few files in sync. If you want to try, I highly recommend civcheck, which will flag undefined symbols before you try bringing up the game.

Missionaries are mentioned in units/civ4unitinfos.xml, units/civ4unitclassinfos.xml, buildings/civ4specialbuildinginfos.xml, and civilizations/civ4civilizationinfos.xml. Fortunately, using civcheck means you do not have to remember all this.
 
A shortcut is to set the unit iCost to -1, so it can never be built.

This sounds like it would work for now, that requires only the units/civ4unitinfos.xml, field iCost to be changed.
 
1.5.4
Terraforming still does not appear to be working. Dozens of turns in way of liet civic, 4-5 catchbasins built, no terraforming has occurred.
 

Attachments

  • Fremen.CivBeyondSwordSave
    299.3 KB · Views: 59
I see I forgot to mention in the release note, you only get terraforming changes if you have a Reservoir of Liet, not just catchbasins.
 
I see I forgot to mention in the release note, you only get terraforming changes if you have a Reservoir of Liet, not just catchbasins.

Why? That sounds terrible design. So there is absolutely no point at all in going way of Liet until you are ~2/3+ of the way through the tech tree? And building catchbasins is a total waste; they just suck up your water for no benefit.

This makes no sense to me.
 
Suggest alternative: terraforming begins as soon as you have way of liet civic.

Terraforming happens only on fresh water plots.

Fresh water comes only from wells.
Catchbasins provides fresh water in 1 tile radius around the city.
Reservoirs provide fresh water in 3-tile radius around the city.

Each of your tiles with fresh water has X% chance to terraform up 1 step per turn.
X = a + b*#catchbasins you control + c*#reservoirs you control.

Maybe:
a = 1%, b=0.25%, c=0.5%.
 
Why? That sounds terrible design. So there is absolutely no point at all in going way of Liet until you are ~2/3+ of the way through the tech tree? And building catchbasins is a total waste; they just suck up your water for no benefit.

This makes no sense to me.

The terraforming victory can be accomplished without terraforming any tiles. You need to build 7 reservoirs. In order to make this take longer / be harder to do, the catchbasin is required beforehand. So you have to withstand -6 water in each of 7 cities.
 
The terraforming victory can be accomplished without terraforming any tiles. You need to build 7 reservoirs. In order to make this take longer / be harder to do, the catchbasin is required beforehand. So you have to withstand -6 water in each of 7 cities.

So what? With your design, you may as well eliminate the Way of liet tech and move the catchbasin and way of liet civic up to arrakis transformation tech. There is no point in building a catchbasin before you have the arrakis transformation tech, and in fact you just get a large penalty from doing so.

The point of terraforming is to be a fun mechanic that happens through the game, not just as a victory condition. Its supposed to be an alternative way to run your economy, by giving up spice to have water-filled terrain that can support a higher population.

I would rather eliminate terraforming as a victory condition entirely and just have the terraforming start with way of liet than I would have nothing happen until a late-game tech.

Having no terraforming until a late game tech is no fun at all, and doesn't really make any design sense either.
 
Also note, by expanding the reservoir range out to 3, you will cover a lot more range, which makes the X% terraformed potentially feasible again.
 
I've raised the idea before that the terraforming victory should be based on a % of tiles within your cultural borders that have been terraformed. I think it would be better to make the actually changing of the terrain more connected with the victory condition. The building of 7 buildings will always feel like a slightly arbitrary victory to me.

With a % of terraformed tiles check, Reservoirs of Liet become a means to an end rather than the end itself. Catchbasin terraforming can be re-enabled, but at a slower rate/smaller chance/1-tile-radius. It is contributing to the terraforming victory, but if it only affects a 1 tile radius then you will be unabled to meet the % of terraformed tiles required for victory. When Reservoirs become available you can accelerate towards the goal.

One open question is, does the negative water penalty of the buildings represent water being diverted to terraforming or is it also a mechanism to make the victory condition harder?

If spice was more important to the game (which is something we need to address from other feedback) then having less of it would be enough of a punishment with needing an additional penalty. The negative water would simply represents water diverted to terraforming.
 
By % of tiles check, I mean something like:

You control at least 40% of world tiles, and at least 75% of those tiles must be terraformed.

These numbers are finger-in-the-wind, they'd obviously have to be tuned.
 
As you will often find with my implementations, I built the existing terraforming victory on top of hooks that are already there. There is an existing victory condition of "build N buildings". As far as I know, no other mod has ever used it, because there is a small bug in the victory display screen that shows up when you use it. But putting in this condition was pretty easy.

I am not sure how to implement a new type of victory condition, and I am not sure how to recycle any of the existing victory conditions into something which checks the number of tiles matching some condition. If anybody can figure that out, we could change the victory condition.

The current function to determine if a tile should terraform is: first, the tile must have fresh water, the owning player must be following the paradise civic, and the owning player must have at least one Reservoir of Liet built. Then, the percent chance of the tile terraforming per turn is 2% plus 0.5% per Reservoir the player owns.

The feedback from Ahriman above is that this makes terraforming too late, and it is no fun. What check would you prefer?

EDIT: I see Ahriman has already answered this question, I missed it:
ahriman said:
Each of your tiles with fresh water has X% chance to terraform up 1 step per turn.
X = a + b*#catchbasins you control + c*#reservoirs you control.

Maybe:
a = 1%, b=0.25%, c=0.5%.

The main difference is that in my implementation, nothing happens without any reservoirs. In Ahriman's suggestion, if you never build any catchbasins or reservoirs, you will still get terraforming. Which is better?
 
The one bit of Ahriman's suggestion I don't like too much is removing Fresh Water from Windtraps since in the book the majority of the water for transforming Arrakis comes from Windtraps. I don't see why only Wells should have it, if we have to sacrifice something thematic to get the mechanic working then perhaps the mechanic isn't quite right.

I wonder if we can just remove Fresh Water entirely and implement the things that depend on it in a simpler way? The trouble is we have water as food which is modeling the location of water one way, and then we have fresh water which is modelling the location of water in a parallel and unrelated way. Every tile that has 1 or more water (food yield) should have Fresh Water otherwise it is confusing.
 
Top Bottom