gynt / stronghold-mapeditortools

Map Editor Tool Set for Stronghold and Stronghold Crusader
GNU Affero General Public License v3.0
6 stars 1 forks source link

Additional hights for terrain #12

Open Krarilotus opened 3 years ago

Krarilotus commented 3 years ago

There is huge demand (aka we are hanging out in discord, and trying to find a solution to make the hights manually that are cool and useful and actually working in the map editor) and its really hard to make different hights than the 2 standart hights.

It would be cool to have

If you reuse ingame buttons: (Heroesflorian suggested that) use 'hill' and 'mountain' for these two adjustments, and keep the low plateau, high plateau buttons for setting initial hights where they plateau options diverge from by clicking on hill and mountain buttons

gynt commented 3 years ago

The plateau commands are the trickiest in game code: there is the low and high plateau and these two are quite hard coded in the function.

The "create hill" function is much easier to manipulate. Is there a difference between 1-tile-brush repeated clicking to create a plateau, and the "create plateau" plateau? I would like to know before I try stuff.

Krarilotus commented 3 years ago

@gynt the main difference is, that the 'plateau' brush besides raising/lowing the plateau to a certain hight, also applies ground texture to the terrain modified to be the standart desert texture (ground type). I really dislike this behaviour, as you can simply paint the texture afterwards and you loose say grass and ground texturing previously on tiles afte you use the plateau.

Anothe unique feature is, that the high plateau is the only tool that without any tricks goes to that specific hight. increasign hight of one tile can only go one hight lower than the high plateau tool.

Next unique thing about those tools is, that they apply the whole brush to all tiles visible in the same way, which is different from say hill or mountain brush, that are mostly useless because of their randomness and their behaviour that is too strong to be usefull. They 'destroy' the landscape almost immediately by the exzessive increase of hight to the surrounding tiles, if the brush is slightly bigger.

TheRedDaemon commented 3 years ago

This might only be partially related to this issue, but the tranform terrain tools as a whole seem to be rather specialized in their behaviors. Based on a few tests, "Mountain" and "Hill" seem to not care about the brush size. Additionally, if carefully applied to the same tile a few times on flat land, they create a reproducible, "almost" symmetrical shape ("Mountain" in this case):

MountainTool

The oddity is once again the upper left side (in the picture it is the bottom right, because I turned the view), so maybe it is related to the same thing/miscalculation that is responsible for the missing upper tile of the brushes.

Regarding the plateau tools I also noticed that the currently exposed values do not really have an influence. In the LUA code, the received value "change" is either 4, for the lower, or 8, for the higher plateau. Setting it to anything else actually turns the plateau tools into a terrain tile painter (most of the time sand and rocks). 😄

Edit: I may have missed the fact that there are several "API functions" for the transform tools, which currently map to the same function. That may explain the very different results for "change". My bad. 😅