View Full Version : Terraforming marsh in RFC?


Beyondtheocean
Dec 06, 2008, 10:28 AM
I understand the marshes in Rhye's and Fall of Civilization were added for realism, but I don't like to be stuck with them the whole game.
In the real world most of the marshes were turned into farmland (grassland?) at some time. In my part of the world mostly in the 19th and early 20th century.

Is this already possible with an existing mod? And if not.... does anyone know how to make this work? (I have no programming knowledge)

Cethegus
Dec 06, 2008, 10:41 AM
I'd like to second this. Allow Marsh-clearing after a certain technology, that'll turn even Helsinki (Finnish capital) into profitable city site.

3Miro
Dec 06, 2008, 10:45 AM
Can you guys find an example of a marsh that has been terraformed.

Wessel V1
Dec 06, 2008, 11:00 AM
I only have to walk a mile to see that happening, because at the moment they are building a new citydistrict in a former marsh:). Since the 13th century, the Dutch have been clearing marshes, up to 1000 square kilometers in the 17th century. However, I can't think of other evident examples.

jessiecat
Dec 06, 2008, 11:04 AM
Can you guys find an example of a marsh that has been terraformed.

England early 17th.C. The Cambridgshire Fens (100's of sq. miles of marshes) completely drained and dried out by Flemish and Dutch engineers. Since then some of the richest farmland in Britain.

Beyondtheocean
Dec 06, 2008, 11:19 AM
Can you guys find an example of a marsh that has been terraformed.

And I live in an area pretty close to Wessel V1, the Peel region in the south-east Netherlands. A good example of late (industrial age) marsh draining.

SadoMacho
Dec 06, 2008, 02:20 PM
I live in Flanders, and we did the same, but not as to the extend the Dutch did it. The region I live in called "Waasland" and this refers to swampland. Currently there are now more swamps in the region anymore. The terraforming was done during the middle ages. The first town in my region was called Waasmunster meaning "Monastery in the Swamp". Also the old Flemish name for Brussels is Broekzele, meaning "stone hall in the swamp", but no more currently.

So a lot of medieaval terraforming in the Low Lands.

Panopticon
Dec 06, 2008, 02:54 PM
Given that the purpose of marsh is to prevent development, making it removable would have mid- or late-game consequences, so it would be just the same as jungle terrain.

Is there anywhere on the map where marsh is a problem? I can only think of one place: the incredibly fertile Indus valley, which is uninhabitable in RFC.

jessiecat
Dec 06, 2008, 03:06 PM
Given that the purpose of marsh is to prevent development, making it removable would have mid- or late-game consequences, so it would be just the same as jungle terrain.

Is there anywhere on the map where marsh is a problem? I can only think of one place: the incredibly fertile Indus valley, which is uninhabitable in RFC.

We're not talking about regular RFC. There is quite a lot of marsh on the RFC Europe map, particularly in Ireland, Poland and Russia. Too much, in my opinion.

sedna17
Dec 06, 2008, 03:36 PM
Actually, I believe the original poster was asking about plain RFC. The question is an interesting one for RFC Europe too.

I'm not aware of a mod that does this. It would not be an XML-only job, since "Marsh" in RFC is a terrain, a feature, and a resource. Features (like jungles and forests) can be removed easily with in XML by adding a new worker action. I think it would take Python work to change the terrain though.

3Miro
Dec 06, 2008, 03:53 PM
Python can do that I think, in a way similar to the Inquisitor action. There is one problem again, how to do the AI for it. I will look at the AI problem. Changing the marsh to a feature might be an easier solution.

st.lucifer
Dec 06, 2008, 06:03 PM
Python can do that I think, in a way similar to the Inquisitor action. There is one problem again, how to do the AI for it. I will look at the AI problem. Changing the marsh to a feature might be an easier solution.

The health and movement penalties are already built into the marsh-as-feature rather than marsh-as-terrain, right?


If we can keep those things, I'm fine with just using marsh as a feature rather than as a terrain.

SadoMacho
Dec 07, 2008, 03:06 AM
Marsh feature could be transformed into a polder:
http://en.wikipedia.org/wiki/Polder

Beyondtheocean
Dec 07, 2008, 06:34 AM
I did mean the original RFC map, in India but also a big part of the Nile valley where it makes no sense to have an uninhabitable area.
And there are other parts of the world too, where it does make sense to have this kind of bad terrain. Of course it also makes sense to terraform the marsh into farmable land (grassland, 2 food no hammers) in the late game, like in the real world.

Whitefire
Dec 08, 2008, 10:03 AM
Can you guys find an example of a marsh that has been terraformed.

New Orleans, Louisiana.

3Miro
Dec 09, 2008, 10:51 AM
New Orleans, Louisiana.

Silly me, how can I have forgotten about this great example of Medieval European Engineering ;):D

Panopticon
Dec 09, 2008, 12:07 PM
It doesn't necessarily have to happen in the medieval era. Jungles can only be cut down with Biology.

Whitefire
Dec 09, 2008, 04:07 PM
Silly me, how can I have forgotten about this great example of Medieval European Engineering ;):D

Yes, silly you. The Creole founders of the city (French emmigrants that were expelled from Canada by Britain) used methods to drain the swamps that came primarily from Dutch applications developed in 1500s.

musicfreak
Dec 26, 2008, 04:43 PM
Can you guys find an example of a marsh that has been terraformed.Italy, 1900s during the Fascist movement. Not exactly medieval but it works. :)

I'm all for this proposal. I don't really have any suggestions on how it would work, but as long as there is some way of terraforming marshes, I'm all for it.

ninerzfan_22
Jan 03, 2009, 11:24 AM
The Aztecs founded Tenochtitlan in the middle of a swamp/marsh land. The Mexicans filled the lake around it however and terraformed the marsh. Now, Tenochtitlan is known as Mexico city. Allowing the terraforming of marshes is a great idea.

Deon
Jan 04, 2009, 08:34 AM
Can you guys find an example of a marsh that has been terraformed.

Russia, Saint-Petersburg. People brought stones on carts and basically floored the marsh over.
It was a plain marsh everywhere, now there's a big city. Peter I was crazy.

The Number Pi
Jan 29, 2010, 09:34 AM
Hello, I know that this thread is old, but I have been trying for the past few days to mod my game to terraform marsh, but i cannot get it to work. I tried to use the "poineertank" mod as a basis for this, but I don't know what I am doing wrong. This has started to obsess me so much that I joined these forums just to ask this. Could anybody help me?

I am using RFC 1.186, BTS build version 3.1.9.0 from May 2009.

My changes are:

In Civ4ImprovementInfos:
<ImprovementInfo>
<Type>IMPROVEMENT_DRAIN_MARSH</Type>
<Description>TXT_KEY_IMPROVEMENT_DRAIN_MARSH</Description>
<Civilopedia>TXT_KEY_IMPROVEMENT_DRAIN_MARSH_PEDIA</Civilopedia>
<ArtDefineTag>ART_DEF_IMPROVEMENT_MINE</ArtDefineTag>
<YieldChanges>
<iYieldChange>2</iYieldChange>
<iYieldChange>0</iYieldChange>
<iYieldChange>0</iYieldChange>
</YieldChanges>
<RiverSideYieldChange/>
<bActsAsCity>0</bActsAsCity>
<bHillsMakesValid>0</bHillsMakesValid>
<bFreshWaterMakesValid>0</bFreshWaterMakesValid>
<bRiverSideMakesValid>0</bRiverSideMakesValid>
<bNoFreshWater>0</bNoFreshWater>
<bRequiresFlatlands>1</bRequiresFlatlands>
<bRequiresRiverSide>0</bRequiresRiverSide>
<bRequiresIrrigation>0</bRequiresIrrigation>
<bCarriesIrrigation>0</bCarriesIrrigation>
<bRequiresFeature>0</bRequiresFeature>
<bWater>0</bWater>
<bGoody>0</bGoody>
<bPermanent>0</bPermanent>
<bUseLSystem>0</bUseLSystem>
<iAdvancedStartCost>48</iAdvancedStartCost>
<iAdvancedStartCostIncrease>0</iAdvancedStartCostIncrease>
<iTilesPerGoody>0</iTilesPerGoody>
<iGoodyRange>0</iGoodyRange>
<iFeatureGrowth>0</iFeatureGrowth>
<iUpgradeTime>0</iUpgradeTime>
<iAirBombDefense>0</iAirBombDefense>
<iDefenseModifier>0</iDefenseModifier>
<iHappiness>0</iHappiness>
<iPillageGold>0</iPillageGold>
<bOutsideBorders>1</bOutsideBorders>
<TerrainMakesValids>
<TerrainMakesValid>
<TerrainType>TERRAIN_MARSH</TerrainType>
<bMakesValid>1</bMakesValid>
</TerrainMakesValid>
</TerrainMakesValids>
<FeatureMakesValids>
</FeatureMakesValids>
<ImprovementPillage/>
<ImprovementUpgrade/>
<TechYieldChanges/>
<RouteYieldChanges/>
<bGraphicalOnly>0</bGraphicalOnly>
</ImprovementInfo>

In Civ4BuildInfos:
<BuildInfo>
<Type>BUILD_DRAIN_MARSH</Type>
<Description>TXT_KEY_BUILD_DRAIN_MARSH</Description>
<Help/>
<PrereqTech>TECH_CIVIL_SERVICE</PrereqTech>
<iTime>200</iTime>
<iCost>0</iCost>
<bKill>0</bKill>
<ImprovementType>IMPROVEMENT_DRAIN_MARSH</ImprovementType>
<RouteType>NONE</RouteType>
<EntityEvent>ENTITY_EVENT_BUILD</EntityEvent>
<FeatureStructs/>
<HotKey>KB_F</HotKey>
<bAltDown>0</bAltDown>
<bShiftDown>1</bShiftDown>
<bCtrlDown>0</bCtrlDown>
<iHotKeyPriority>1</iHotKeyPriority>
<Button>,Art/Interface/Buttons/Builds/BuildFarm.dds,Art/Interface/Buttons/Actions_Builds_LeaderHeads_Specialists_Atlas.dds,3 ,7</Button>
</BuildInfo>


In CvEventManager:

def onImprovementBuilt(self, argsList):
'Improvement Built'
iImprovement, iX, iY = argsList
if (not self.__LOG_IMPROVEMENT):
return
CvUtil.pyPrint('Improvement %s was built at %d, %d'
%(PyInfo.ImprovementInfo(iImprovement).getDescript ion(), iX, iY))
###MARSH-LESS Start#############################
pPlot = CyMap().plot(iX, iY)
if iImprovement == gc.getInfoTypeForString('IMPROVEMENT_DRAIN_MARSH') :
print("It worked =)")
pPlot.setTerrainType(TerrainTypes.TERRAIN_GRASS, True, True)
pPlot.setBonusType(BonusTypes.NO_BONUS)
pPlot.setFeatureType(FeatureType.NO_FEATURE)
pPlot.setImprovementType(-1)
###MARSH-LESS END############


When I have the workers drain a marsh, the improvement is built, but the terrain does not change, and the text is not printed.

Could anybody please help me?:help:

Baldyr
Jan 29, 2010, 12:59 PM
Here's what I did in my mod:

The Swamp terrain is in fact a combination of a base Terrain type, a terrain Feature and a special Resource. So firstly I divided the Swamps into one variety with the Feature and one variety without it. The Feature part can also be drainaged by simply "Cutting" it down, as if it were Forest or Jungle (the other types of Feature, along with Flood Plain). This is an industrial age feature and requires Railroad (for steam powered pumps).

Also, I permitted some Improvements on Swamp tiles, depending on if the Feature part was still there. Most units can also move through Swamp terrain (not siege units among others) but they receive damage every turn. A Road (or Railroad) effectively takes care of this as units mostly won't stand on the Terrain in between turns. And you can always remove the Feature layer later on (see above).

If you get your mod to work I'd probably use it as a base for my own modding, so please keep the rest of us posted on the development. I'm not as sure about removing a Swamp from a tile completely though, and absolutely not turn it into Grassland! There's a lot of Swamp in Siberia, and drainaging all of that would make the region anything but the Taiga it should be! :eek:

So I think that the Swamp terrain shouldn't be removable entirely, but it shouldn't be completely impassable to the majority of units, and it should be workable and improvable. It would probably be some of the worst tiles in a city's BFC and it would probably be better to run specialists instead of working them, even with improvements. I have enabled Forest Preserves on them though (renamed Nature Preserves) and since the other kind is forested you can use them for Lumber Mills later on. Also, you could build riverside Cottages on Swamp tiles but they'd have to be supported by other tiles for :food:.

The Number Pi
Jan 29, 2010, 02:46 PM
:thanx:Thank you for the advice! I was so focused on why I could not get it to work, that I never realised how unrealistic it was. I decided that it is more realistic/accurate (and easier :p) to just make it an improvement with a smaller bonus. The improvement removes the feature part of the marsh (so all units can enter it) and builds a "drained marsh" that looks like a windmill. this adds 1:food:, and also adds 1:commerce: if it is next to a river. A city can work this for 35 turns to make it into a "thoroughly drained marsh" that adds 1 more:commerce:. With the discovery of plastics, an extra :food: is added (only for the improved one), making it able to sustain 1 population and generate 1-2 :commerce: depending if it is next to a river or not. :D The initial improvement is possible to build with the discovery of machinery, instead of ciliv service.

The improvements are:
<ImprovementInfo>
<Type>IMPROVEMENT_DRAIN_MARSH</Type>
<Description>Drained marsh</Description>
<Civilopedia>TXT_KEY_IMPROVEMENT_DRAIN_MARSH_PEDIA</Civilopedia>
<ArtDefineTag>ART_DEF_IMPROVEMENT_WINDMILL</ArtDefineTag>
<YieldChanges>
<iYieldChange>1</iYieldChange>
<iYieldChange>0</iYieldChange>
<iYieldChange>0</iYieldChange>
</YieldChanges>
<RiverSideYieldChange>
<iYield>0</iYield>
<iYield>0</iYield>
<iYield>1</iYield>
</RiverSideYieldChange>
<bActsAsCity>0</bActsAsCity>
<bHillsMakesValid>0</bHillsMakesValid>
<bFreshWaterMakesValid>0</bFreshWaterMakesValid>
<bRiverSideMakesValid>0</bRiverSideMakesValid>
<bNoFreshWater>0</bNoFreshWater>
<bRequiresFlatlands>1</bRequiresFlatlands>
<bRequiresRiverSide>0</bRequiresRiverSide>
<bRequiresIrrigation>0</bRequiresIrrigation>
<bCarriesIrrigation>0</bCarriesIrrigation>
<bRequiresFeature>0</bRequiresFeature>
<bWater>0</bWater>
<bGoody>0</bGoody>
<bPermanent>1</bPermanent>
<bUseLSystem>0</bUseLSystem>
<iAdvancedStartCost>48</iAdvancedStartCost>
<iAdvancedStartCostIncrease>0</iAdvancedStartCostIncrease>
<iTilesPerGoody>0</iTilesPerGoody>
<iGoodyRange>0</iGoodyRange>
<iFeatureGrowth>0</iFeatureGrowth>
<iUpgradeTime>35</iUpgradeTime>
<iAirBombDefense>0</iAirBombDefense>
<iDefenseModifier>0</iDefenseModifier>
<iHappiness>0</iHappiness>
<iPillageGold>10</iPillageGold>
<bOutsideBorders>1</bOutsideBorders>
<TerrainMakesValids>
<TerrainMakesValid>
<TerrainType>TERRAIN_MARSH</TerrainType>
<bMakesValid>1</bMakesValid>
</TerrainMakesValid>
</TerrainMakesValids>
<FeatureMakesValids/>
<ImprovementPillage/>
<ImprovementUpgrade>IMPROVEMENT_DRAIN_MARSH2</ImprovementUpgrade>
<TechYieldChanges/>
<RouteYieldChanges/>
<bGraphicalOnly>0</bGraphicalOnly>
</ImprovementInfo>
<ImprovementInfo>
<Type>IMPROVEMENT_DRAIN_MARSH2</Type>
<Description>Thoroughly drained marsh</Description>
<Civilopedia>TXT_KEY_IMPROVEMENT_DRAIN_MARSH_PEDIA</Civilopedia>
<ArtDefineTag>ART_DEF_IMPROVEMENT_WINDMILL</ArtDefineTag>
<YieldChanges>
<iYieldChange>1</iYieldChange>
<iYieldChange>0</iYieldChange>
<iYieldChange>1</iYieldChange>
</YieldChanges>
<RiverSideYieldChange>
<iYield>0</iYield>
<iYield>0</iYield>
<iYield>1</iYield>
</RiverSideYieldChange>
<bActsAsCity>0</bActsAsCity>
<bHillsMakesValid>0</bHillsMakesValid>
<bFreshWaterMakesValid>0</bFreshWaterMakesValid>
<bRiverSideMakesValid>0</bRiverSideMakesValid>
<bNoFreshWater>0</bNoFreshWater>
<bRequiresFlatlands>0</bRequiresFlatlands>
<bRequiresRiverSide>0</bRequiresRiverSide>
<bRequiresIrrigation>0</bRequiresIrrigation>
<bCarriesIrrigation>0</bCarriesIrrigation>
<bRequiresFeature>0</bRequiresFeature>
<bWater>0</bWater>
<bGoody>0</bGoody>
<bPermanent>1</bPermanent>
<bUseLSystem>0</bUseLSystem>
<iAdvancedStartCost>24</iAdvancedStartCost>
<iAdvancedStartCostIncrease>0</iAdvancedStartCostIncrease>
<iTilesPerGoody>0</iTilesPerGoody>
<iGoodyRange>0</iGoodyRange>
<iFeatureGrowth>0</iFeatureGrowth>
<iUpgradeTime>0</iUpgradeTime>
<iAirBombDefense>5</iAirBombDefense>
<iDefenseModifier>0</iDefenseModifier>
<iHappiness>0</iHappiness>
<iPillageGold>15</iPillageGold>
<bOutsideBorders>0</bOutsideBorders>
<TerrainMakesValids/>
<FeatureMakesValids/>
<ImprovementPillage/>
<ImprovementUpgrade/>
<TechYieldChanges>
<TechYieldChange>
<PrereqTech>TECH_PLASTICS</PrereqTech>
<TechYields>
<iYield>1</iYield>
<iYield>0</iYield>
<iYield>0</iYield>
</TechYields>
</TechYieldChange>
</TechYieldChanges>
<RouteYieldChanges/>
<bGraphicalOnly>0</bGraphicalOnly>
</ImprovementInfo>

In the ImprovementInfos XML file.

Do you think this is better?

Baldyr
Jan 30, 2010, 05:31 AM
Do you think this is better?
Sure, its a nice solution that I'll consider myself also. :goodjob:

kochman
Feb 09, 2010, 02:08 PM
Can you guys find an example of a marsh that has been terraformed.
New Jersey

dragodon64
Feb 09, 2010, 09:14 PM
I think that more than enough example of marshes being drained have been presented, but I think I'll add my own: my hometown of Calcutta (Kolkata) was some swamp until the mid 18th century; now its home to 15ish million people.

Rod
Feb 10, 2010, 05:51 AM
I agree that marshes have been drained in human history, but I also shun the micromanagement effort that a worker based solution would pose on us.

However I believe the same simulation of man made marsh-draining could be accomplished by simply let the feature "grow" negativly (like cottages).

This grow would of course appear only when the marsh is within cultural boundaries (like forts in FFC which grow into citadels)

So if a marsh is within cultural boundaries it will simply disappear after some looong while - this would simulate the effort of the native people in settling and draining the land. Certain techs could enhance the speed of draining.

kochman
Feb 10, 2010, 07:42 AM
Pretty good idea actually... The only problem is, we choose which places to drain. This would make it somewhat randomized... OR, if it didn't, then all marshes within the cultural boundaries on turn X would all be normalized on turn Y... seems unlikely.

Baldyr
Feb 10, 2010, 10:01 AM
Pretty good idea actually... The only problem is, we choose which places to drain. This would make it somewhat randomized... OR, if it didn't, then all marshes within the cultural boundaries on turn X would all be normalized on turn Y... seems unlikely.
You choose what marsh to drain by working that tile. Unworked tiles wouldn't be drained either, as no one is utilizing the land and making improvements to it as time goes by.

So, by making a March into a terrain improvement instead of a base terrain/feature/resource, it could be coded so that it will be cultivated into something else (as a Cottage does) if worked. The reward of working a poor March tiles for a century or two would be to eventually get a tile worthwhile having.

This could also be a way to keep the graphic of the Marsh bonus while being able to get rid of it. The graphic becomes the Marsh improvement, and it would be an easy task to have it develop into a Windmill or Farm or whatever over time.

kochman
Feb 10, 2010, 10:31 AM
No, I agree with you... I was referring directly to Rod's post, which suggested not using workers for it. Pointing out the issue(s) with that proposition.

I think workers working it is the only way it should happen, because you do have to put resources into such things.

Rod
Feb 11, 2010, 06:03 AM
You missunderstood Baldyr's post.
He was advising to "work" the tile in the city screen like a cottage in order to gain the draining effect. I am not fully convinced that the AI will be able to use the drain in this way, however humans could do it but it would be no less micromanagement than workers...

Baldyr
Feb 11, 2010, 10:21 AM
You missunderstood Baldyr's post.
Yeah, thank you for clearing that up! :goodjob:

kochman
Feb 11, 2010, 11:54 AM
Oh, well, in that case... No... I don't like that idea really at all.
Stick with workers, make them spend a huge amount of turns on it... perhaps in stages...
This is the whole point to workers, making tiles more productive so that you can then "work" them within your city.

dragodon64
Feb 12, 2010, 10:43 AM
I support kochman's idea, using the citizen's to work it would be a major drain on potential, and really not worth it in the long run.

On a somewhat related note, I love the historicity of making forests unchoppable until the high middle ages and the economic expansion possible in that era (spoken based on a fairly successful Bulgaria game). I think that similarly allowing marshes to be removed by improvements would be a nice addition in the renaissance.

aprogressivist
May 25, 2010, 05:39 AM
Can you make the improvement negate the health penalty from swamps?

admfischer
May 29, 2010, 01:01 AM
Can you guys find an example of a marsh that has been terraformed.



Northeast China (http://en.wikipedia.org/wiki/Northeast_China).

The Number Pi
May 29, 2010, 06:06 PM
Can you make the improvement negate the health penalty from swamps?

Because this penalty is tied to the feature portion of swamps, and the improvement removes feature part when built, the health penalty is already removed.

azander12
Jun 05, 2010, 08:15 PM
An interesting solution would be to make them workable, with maybe +1 food after the research of Civil Service, and make them clearable with the research of Steam Engine. Many of the world's swamps weren't drained until the discovery of steam-driven pumps.

Baldyr
Jun 06, 2010, 01:18 AM
An interesting solution would be to make them workable, with maybe +1 food after the research of Civil Service, and make them clearable with the research of Steam Engine. Many of the world's swamps weren't drained until the discovery of steam-driven pumps.
This actually sounds very much like what I did myself...

Landstander
Jun 11, 2010, 03:13 PM
Has anyone been to Berlin? It was built on a swamp, and to this day that have big pink pipes around construction sites used to pump out swamp gas!

civ_king
Jun 13, 2010, 03:35 PM
there should be different stages of clearing and removing it should take a VERY long time but it will be sped up dramatically by technology so middle ages will take 20+ turns but by Modern age only 1-2 turns

Olaf_The_Great
Jul 17, 2010, 11:51 AM
Are there actually marshes in Siberia or was it just put there to represent really crappy places to put a city?

Baldyr
Jul 17, 2010, 12:09 PM
There are marshes in Siberia. Actually, the tundra seems largely be frozen marsh. Climate change is supposedly gonna thaw it all up...

civ_king
Jul 17, 2010, 02:14 PM
You are talking about it as if it has started yet, news flash, it has

Baldyr
Jul 17, 2010, 02:35 PM
You are talking about it as if it has started yet, news flash, it has
Nope, not all of it. You'd need a time machine to confirm if all of it will ever thaw. :rolleyes:

civ_king
Jul 18, 2010, 03:59 AM
Nope, not all of it. You'd need a time machine to confirm if all of it will ever thaw. :rolleyes:

starting to≠all of it starting to

computer programming should have taught you that, that and positive feedback

Baldyr
Jul 18, 2010, 05:38 AM
@civ king
Am I sensing some hostility in your last few replies? I sent you a PM instead - let us take this outside if we must.

CHEESE!
Jul 19, 2010, 06:24 PM
My problem isn't that Marshes aren't terraformable, but that you should be able to do something with them. Maybe a cottage that could only grow into a Hamlet or Village?

Baldyr
Jul 19, 2010, 09:13 PM
My problem isn't that Marshes aren't terraformable, but that you should be able to do something with them. Maybe a cottage that could only grow into a Hamlet or Village?
Yeah, I think I did this myself, actually...