Captain-Chaos / WorldPainter

WorldPainter is an interactive graphical map generator for the indie game Minecraft.
http://www.worldpainter.net/
GNU General Public License v3.0
341 stars 58 forks source link

Feature request: Custom terrain to include "degrees" option #339

Open Dannypan opened 9 months ago

Dannypan commented 9 months ago

It is painstaking to paint by degrees at the moment. If you have to change one thing, then you need to redo all of the terrain painting because the degrees have changed.

An option to have a custom terrain which would apply the terrain based on degrees would be a serious time saver. It would only need to be applied on export.

Assuming this is possible, it would be even better if we could add existing custom terrains to this terrain layer. For example:

Base terrain: Grass Over 20 degrees: Dirt Over 35 degrees: Stone Over 50 degrees: Custom terrain of tuff and smooth basalt blobs Over 75: Diamond block (very cool)

This would allow for massive flexibility and creativity in designing maps while saving time both in painting layers and editing areas that already have terrain on them.

Dannypan commented 9 months ago

I already expect this to be unworkable with custom cave layers (not the floor dimension) so perhaps these super custom terrains only work in "dimensions", like the surface or a cave floor dimension, and cannot be selected for custom cave layers.

IR0NSIGHT commented 9 months ago

i think having a from..to degrees filter that is not exclusive with either above or below would do 90% of the job.

Also my AdvancedOperator.js https://github.com/IR0NSIGHT/WorldPainterOperator script pretty much achieves exactly what you want, but its a bit clunky to handle. In my opinion, there is no easy to build and clean option that pairs a terrain with a filter permanently. They should stay separated, and instead it should be easier to apply a terrain with a certain filter.

Dannypan commented 9 months ago

This would be a layer that applies terrain on export, so you can freely edit terrain without having to repaint or use the script any time you need to alter the land.