FS#4754 - Scenario Editor: rivers with desert

Attached to Project: OpenTTD
Opened by Ingo von Borstel (planetmaker) - Wednesday, 31 August 2011, 12:15 GMT
Last edited by andythenorth (andythenorth) - Sunday, 20 August 2017, 18:23 GMT
Type Feature Request
Category Core
Status With patch
Assigned To frosch (frosch)
Operating System All
Severity Very Low
Priority Normal
Reported Version trunk
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No


In the scenario the interaction between rivers and desert tool are not optimal:

a) drawing a river on desert creates grass tiles around it (ok)
b) drawing desert over a river kills removes the river and makes the tile desert (this is IMHO a real bug and should not work this way. Houses etc. aren't removed either)
c) drawing desert next to a river removes the transition (this is somewhat inconsistent, but can be argued ok)

Expected behaviour could be:
ad b) drawing desert over a river tile could sets the tile to full desert, too, thus creating rivers which show desert shores. Alternatively putting a river tile to desert could simply have no effect / not be allowed.
ad c) Apply the usual transition rule. Assuming river tiles are always grass tiles, drawing desert next to a river should make the tile a grass-desert transition tile. If rivers can be deserts, it should depend on what type the river tile is.
This task depends upon

Comment by Ingo von Borstel (planetmaker) - Wednesday, 31 August 2011, 12:17 GMT
Comment by Ingo von Borstel (planetmaker) - Wednesday, 31 August 2011, 12:18 GMT
as visible in the screenshot: a similar argument could apply to coasts, too which are always grass, thus a transition tile could follow towards desert. Or one could allow desert shores
Comment by frosch (frosch) - Wednesday, 31 August 2011, 16:52 GMT
Half-desert tiles are technically non-desert tiles next to desert tiles.
As such c) makes no sense to me. Just do not put desert next to rivers.
Same applies to coasts.

Wrt. d): Converting coast to non-desert when being flooded would thus also reqruite to convert neighboured tiles to non-desert.

e) Converting desert to non-desert in game when flooding the desert would be irreversible. So likely not a good idea.

f) It might be possible to make tile also show half-desert when they are next to water/coast. This would also react to flooding in game. However it will likely look weird during flooding, when tiles change to half-desert shortly before being flooded. :p
Comment by frosch (frosch) - Friday, 02 September 2011, 20:11 GMT
Attached diff changes the behaviour of half desert: Desert tiles are now half-desert if a neighboured tile is non-desert or sea/coast.
That is, flooding changes neighboured tiles to half-desert.
Rivers do not do the same, that is up to the scenario editor user.

Somewhat important change: Half-desert tiles are now in the DESERT zone, not in the NORMAL zone.
1) This might break NewGRFs doing the computation themelf.
2) This might slow the game as there are usually a lot more DESERT tiles than NORMAL tiles.
3) This might actually look better as stuff that tests for non-DESERT is now not in half-desert. (Stuff checking for DESERT is rare.)
Comment by andythenorth (andythenorth) - Sunday, 20 August 2017, 18:33 GMT
FWIW, houses are removed with the desert tool (in 1.7.1) it seems to act as 'clear area' for the things I tried.

Patch applied ok and works as expected in SE. Can't comment on potential performance issues.

This would likely break at least FIRS assumptions about desert. Not in a serious way, but likely to affect location checks and maybe some graphics; I would be prepared to resolve those issues. Can't comment on other NewGRFs.