Currently Online

Latest Posts

Topic: To all map creators; Terrain menu

einstein13
Avatar
Joined: 2013-07-29, 00:01
Posts: 1118
Ranking
One Elder of Players
Location: Poland
Posted at: 2015-07-28, 20:39

The most perfect idea I have now is to have "tabs" sorted by biome, buildable type (your idea?) and probably trees-like sorting (so "very fertile", "not very vertile", "barren", "acid"). That will give all basic possibilities. But also it can be "tabs created by an editor", so every map editor can make his/her own set of tabs. The last idea is probably most porblematic to implement, but covers all possible cases of people face-smile.png


einstein13
calculations & maps packages: http://wuatek.no-ip.org/~rak/widelands/
backup website files: http://kartezjusz.ddns.net/upload/widelands/

Top Quote
kaputtnik
Avatar
Joined: 2013-02-18, 20:48
Posts: 2182
Ranking
One Elder of Players
Location: Germany
Posted at: 2015-08-05, 19:59

Another try:

The tabs are divided into the four biomes plus two more tabs:

  • "dead"-tab contains all terrains which are formerly described as "dead" (have skull as symbol) + "impassable" and "dry". This tab contains: lava, lavarock1 and 2, swamp and snow from summer. The summer "snow" looks a bit misplaced, but it is "dead" and therefor it should be placed here. "swamp" isn't described with a skull, but it's impassable and dry and not water.
  • "water" tab contains currently all type of water terrains, ice floess and beach terrains. I placed beach here because beach belong to water and should be a good place for ports (if we make them buildable and treeless face-wink.png )

Having this two additional tabs we get rid of some of the little symbols on each terrain which are not understandable. F.e. "water" and "impassable". The symbol for "dry" we could also omit, if we use a new symbol ... more to this a bit later... The tooltips for this new tabs could explain a bit of the contents.

This is an example of the summer- tab, the description of some new things and thoughts are beneath:

new_tab1.jpg

  • Terrains which are good for trees: I've made two new symbol for this. The first row shows "treefriendly" terrains (treefriendly=where trees grow good). In second row the terrains are not as treefriendly as the ones in first row, so they get a smaller tree sign. (hope the tree is understandable). If needed we could also make three symbols for "treefriendly" terrains with different size but i think it is not needed. At all terrains where this symbol is missing, trees wouldn't grow (or very sparse). This is the same cognition as for the other symbols: On terrains with no "house" sign they aren't arable. In the end with this new symbol there is no need for the "dry" symbol anymore (which is not understandable).
  • Sorting of terrains: Just a thought, if this bug is fixed, may we could organize the terrains in a more convenient manner. The example in the mockup above is maybe not the best, but i think the mountain terrains should be in one row. I tried to sort them descending the ability to growing of trees: On terrains in first row trees grow well, at last row they will not grow.
  • I modified the "mountain" symbol a bit (centred)

If you like this, i would create mockups for the other tabs too face-smile.png


Fight simulator for Widelands:
https://wide-fighter.netlify.app/

Top Quote
einstein13
Avatar
Joined: 2013-07-29, 00:01
Posts: 1118
Ranking
One Elder of Players
Location: Poland
Posted at: 2015-08-05, 20:47

This idea seems to be better. You saved most of old biomes plus you have added some sorting.

I can remember that on the greenland there is also beach- passable and barren. I think that those terrains should be on tabs too.

Also I think that mountains should not be in the middle, between buildable terrains.

I don't know the algorithm for adding textures to the tabs (squares representing different terrain types), but I think that you should consider adding terrains with no "blanks" between them, so there should be no space after buildable terrains and mountains.

Generally I like your idea! You saved what is important to me, plus you added some sorting, best for new players face-smile.png


einstein13
calculations & maps packages: http://wuatek.no-ip.org/~rak/widelands/
backup website files: http://kartezjusz.ddns.net/upload/widelands/

Top Quote
kaputtnik
Avatar
Joined: 2013-02-18, 20:48
Posts: 2182
Ranking
One Elder of Players
Location: Germany
Posted at: 2015-08-05, 22:52

More mockups:

Wasteland tab, resorted terrains by growability of trees, no restriction of rows:

Water tab, with beach terrains allow buildings but treeless:


Fight simulator for Widelands:
https://wide-fighter.netlify.app/

Top Quote
einstein13
Avatar
Joined: 2013-07-29, 00:01
Posts: 1118
Ranking
One Elder of Players
Location: Poland
Posted at: 2015-08-06, 03:56

much better face-smile.png

About water: is the beach above the water it belongs to? (winter-winter, summer-summer, etc.?)


einstein13
calculations & maps packages: http://wuatek.no-ip.org/~rak/widelands/
backup website files: http://kartezjusz.ddns.net/upload/widelands/

Top Quote
kaputtnik
Avatar
Joined: 2013-02-18, 20:48
Posts: 2182
Ranking
One Elder of Players
Location: Germany
Posted at: 2015-08-06, 08:22

einstein13 wrote:

About water: is the beach above the water it belongs to? (winter-winter, summer-summer, etc.?)

To the above example i don't know now. Such sorting is doable, but without guarantee that it is forever: If someone creates a new terrain for beach, it would may be inserted after the last beach and so the above sorting get lost. Or the new beach would be inserted at the end of the list (after ice floes).

The Summer tab with no restriction of rows:

"no restriction of rows" means, that there is no possibility to have different numbers of terrains in each row, all terrains could be sorted, but they appear in sequence. See this post for a comparison.


Fight simulator for Widelands:
https://wide-fighter.netlify.app/

Top Quote
kaputtnik
Avatar
Joined: 2013-02-18, 20:48
Posts: 2182
Ranking
One Elder of Players
Location: Germany
Posted at: 2015-08-11, 21:41

I tried to implement my idea of the terrain menu in the editor and will show the results. The main idea is to get some hints about "which terrain is good for placing trees" by placing two different icons on the terrains. Terrains which are good soils for trees are marked with a great abstract tree, terrains which ar not as good are marked with a small abstract tree. The second idea is to get rid of not understandable icons (mainly "dry" and "unwalkable").

I used the values and tables from king_of_nowhere. In some cases i am unsure about the values from king_of_nowhere. Especially for terrains which are "less good for trees" i don't know if i really get them...

I also let beach terrains in there "biome" instead of the water tab. The ordering of terrains is like the old, i only put water and dead terrains in a new tab.

Summer tab:

summer.jpg

Wasteland tab:

wasteland.jpg

Winter tab:

winter.jpg

Desert tab:

desert.jpg

Water tab:

water.jpg

Dead tab:

dead.jpg

I've made a branch with following changes:

  • Using new values from king_of_nowhere
  • Changes to the Terrain menu
  • Resorting (adding tabs) in world/terrains/init.lua

Behind the scene i added two values to the "is" variable to place the tree icons in the terrains:

  • fertile_soil: for terrains on which trees grow good
  • good_soil: for terrains on which trees do grow, but not as good as on "fertile_soils"

I am not satisfied with this solution. Placing of the "tree" icons on the terrains should depend on the real values (fertility and humidity), not on an extra value. I tried to figure out some rules for placing the icons based on the values for fertility and humidity but it seems to be very complicated to me. So if someone has an idea for that, it would be great i think face-smile.png

Another reason why i am not satisfied is a dependency of "arable" and "treefriendly" terrain. Currently all terrains which are good for trees are also arable. There is no type of terrain which isn't arable but good for trees. And with my current implementation the latter use case wouldn't work.... face-sad.png


Fight simulator for Widelands:
https://wide-fighter.netlify.app/

Top Quote
GunChleoc
Avatar
Joined: 2013-10-07, 15:56
Posts: 3324
Ranking
One Elder of Players
Location: RenderedRect
Posted at: 2015-08-12, 08:29

I think we still need an "unwalkable" icon - it is important, because on unwalkable terrain, no flags can be built, and no trees cut down.


Busy indexing nil values

Top Quote
einstein13
Avatar
Joined: 2013-07-29, 00:01
Posts: 1118
Ranking
One Elder of Players
Location: Poland
Posted at: 2015-08-12, 10:06

kaputtnik wrote:

Behind the scene i added two values to the "is" variable to place the tree icons in the terrains:

  • fertile_soil: for terrains on which trees grow good
  • good_soil: for terrains on which trees do grow, but not as good as on "fertile_soils"

I am not satisfied with this solution. Placing of the "tree" icons on the terrains should depend on the real values (fertility and humidity), not on an extra value.

I know that I promised you some better solution, but for now I have only one idea: exact one. Copy-paste code from

http://bazaar.launchpad.net/~widelands-dev/widelands/trunk/view/head:/src/logic/terrain_affinity.cc#L77

This part of code returns float number. One-to-one dependent. For more trees it is... a bit complicated face-confused.png


einstein13
calculations & maps packages: http://wuatek.no-ip.org/~rak/widelands/
backup website files: http://kartezjusz.ddns.net/upload/widelands/

Top Quote
king_of_nowhere
Avatar
Joined: 2014-09-15, 18:35
Posts: 1668
Ranking
One Elder of Players
Posted at: 2015-08-12, 12:14

kaputtnik wrote:

I used the values and tables from king_of_nowhere. In some cases i am unsure about the values from king_of_nowhere. Especially for terrains which are "less good for trees" i don't know if i really get them...

I am not satisfied with this solution. Placing of the "tree" icons on the terrains should depend on the real values (fertility and humidity), not on an extra value. I tried to figure out some rules for placing the icons based on the values for fertility and humidity but it seems to be very complicated to me. So if someone has an idea for that, it would be great i think :-)

Not all the terrains can be sorted easily, but a few things can be deduced just from the values. In order to make sure that barren terrains would not accidentallly grow trees from other biomes, I decided on a few limitations on trees, which should be kept if new trees will be implemented:

  • no tree has a preferred fertility lower than 0.4

  • no tree has pickiness lower than 0.6

  • of the three traits: low fertility, low humidity, and low pickiness, a tree can at most have two.

So, if a terrain has a fertillity of 0.2 or below, then it is bad for trees. If it also has a humidity below 0.2, then it will be barren. With fertility below 0.1, it will be barren regardless of humidity. So barren terrains can be easily recognized from the values. Recognizing barren terrains is easy, but there is no straightforward way to recognize those that are mediocre. For example, the summer mountain meadow has values of humidity and fertility close to those of desert steppe, but the second is good for trees, while the first is less so. That's because desert trees are more adapted to low fertility; however, they won't grow on summer mountain meadow because of low temperature. But then, I see no easy way of making the situation clearer. different trees fromm different biomes need to have largely different values in order to be coaxed to grow only on their biome.

Another thing: I'm not sure how good is separating all the beach and water terrains. While all beaches have medium humidity and low fertility, and all water have maximum humidity and minimum fertility, all those terrains have different temperatures. So using desert water with winter terrain may cause temperate trees, or even palms, to grow on the shore. An indication of which beach is linked to which biome should be kept.

EDIT: also, I've seen that my values are not included on the latest windows build. Are they already part of the linux build? Will I get a mention in the development team page when they are?

Edited: 2015-08-12, 12:40

Top Quote