List of Schematic Brushes

Thamus_Knoward

Shadowbinder
2. We need to be able to define a distance spread for the blocks we are replacing with the schems. I can't for the life of me figure out how #surfacespread works, but I'm sure that would do the trick.

I ended up finding a solution to this issue using the WorldEdit //generate command with the following invocation:

Code:
//generate -o stone round(x%(VAR+random()))+round(z%(VAR+random()))==0

The '-o' flag uses the map's coordinate system as a reference (instead of the selection specific coordinate system from -1 .. 1 //generate would use without it).
If a modulo ('%') b = 0 then that a is divisible by b without rest, this helps me define a regular grid with an even distance between points, VAR = b is therefore the variable that determines the density of points along a grid in our selection.
Now, we jitter the points a little by allowing VAR to fluctuate randomly on the x- and z-Axis by the number between 0 and 1 returned by 'random()'

So this gives us the following output for VAR= [2,3,4,5,10,1.2] from left to right!
1841

This, frankly, is good enough for me now, since I wanted to only do this for a monoculture forest. Of course, this could be improved upon! As evident from the left-most panel, there are some nasty artifacts resulting from choosing a rigid grid before jittering. With several trees and thus differing minimal distances, another method would have to be found, one that takes a buffer parameter for each type of tree.

I gotta say, Iwan's solution up top using Perlin noise looks super convincing too (I have no idea how to get there though. nudge nudge wink wink @Iwan )

EDIT: Trying out a bunch of commands today I found that
Code:
//generate stone sin(random()*6*pi*x)+sin(random()*6*pi*z)>0.95
gave some mad patterns too! I can recommend playing around with these commands and the parameters if you want to expand your WE horizon!
Here's the expression syntax conserved for posterity: https://archive.is/JWqhP
 
Last edited:

Iwan

Boldtown
Staff member
nudge nudge wink wink @Iwan )
  • 1) Generate a density/probability mask
    //generate 35:5 perlin(11111111, sin(random() * x), y, sin(random() * z), .35, 2, .0001)<.5
  • 2) Scatter single blocks, the mask defines where those blocks are more likely or less likely to occur.
    //gmask >35:5
    //generate 35:13 perlin(randint(10000), sin(random() * x), y, sin(random() * z), 50, 12, .1)<.15
perlin(seed, x, y, z, frequency, octaves, persistence)
 
Last edited:
  • Like
Reactions: Luk

Thamus_Knoward

Shadowbinder
Thanks for the guide @SerLoras !! That should be pinned imo its super important!

I've created the sets WillowSFreshPoll, WillowSOnePoll, and WillowSTwoPoll. First is freshly pollarded willows, second and third are one and two years after pollarding respectively. Added pics to the wikia! https://westeroscraft.fandom.com/wiki/SchemSets

Changed the willow leaves to palm leaves since their shape fits the shape of Salix Viminalis better, which is a tree that is frequently pollarded. I also added a coppiced variant WillowSCopp.
 

Thamus_Knoward

Shadowbinder
Here's the completed prototype of a specific single species forest at a low density. In this case the forest type is a cultivated, middle-european wetland forest, typically found around old meanders. It's called Driesch where I'm from and used as pasture for cattle and a source of decent timber. In real life the planted poplars were owned by the peasants from the surrounding villages and marked with paint accordingly:

Code:
//setbiome forest
$${WAIT(1)}$$|
//expand 5 u|
$${WAIT(1)}$$|
//replace $$[PlaceholderLand] wool:white
$${WAIT(2)}$$|
//gmask >[wool:white]
//generate -o [95:13] round(abs(x)%(4+random()))+round(abs(z)%(4+random()))==0
$${WAIT(5)}$$|
//gmask
//replace [95:13]&~[95:13][1][8] air
$${WAIT(1)}$$|
//replace <[95:13] wool:brown
$${WAIT(1)}$$|
//expand 15 n|
//expand 15 w|
$${WAIT(2)}$$|
//replace #offset[7][0][7][95:13] 41
$${WAIT(2)}$$|
//replace 41 20%[#fullcopy[PoplarM1][false][false]],20%[#fullcopy[PoplarM2][false][false]],20%[#fullcopy[PoplarM3][false][false]],10%[#fullcopy[PoplarM4][false][false]],10%[#fullcopy[PoplarM5][false][false]]
$${WAIT(4)}$$|
//replace 41 air
$${WAIT(2)}$$|
//replace [wool:white]&~[wool:brown][1][8] wool:red|
$${WAIT(1)}$$|
//replace [wool:white]&~[wool:red][1][8] wool:red,wool:white|
$${WAIT(1)}$$|
//replace [wool:white]&~[wool:red][1][8] wool:red,wool:white|
$${WAIT(1)}$$|
//rep wool:white #simplex[15][75%wool:white,35%wool:7]|
$${WAIT(1)}$$|
//rep wool:white 95%wool:white,5%wool:yellow|
$${WAIT(1)}$$|
//replace >[[wool:white]&![95]&~[95][1][8]] #simplex[4][50%95:0,35%95:1,15%95:2]|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:0][1][8] 95:0|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:0][1][8] 95:0|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:0][1][8] 95:0|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:1][1][8] 95:1|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:1][1][8] 95:1|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:1][1][8] 95:1|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:1][1][8] 95:1|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:2][1][8] 95:2|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:2][1][8] 95:2|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:1][1][8] 95:2,air|
$${WAIT(1)}$$|
//replace >[wool:white]&![95]&~[95:2][1][8] 95:2,air|
$${WAIT(1)}$$|
//replace >[95:0] #simplex[3][45%95:0,55%air]|
$${WAIT(1)}$$|
//replace >[95:1] #simplex[3][56%95:1,44%air]|
$${WAIT(1)}$$|
//replace >[95:2] #simplex[3][25%95:2,75%air]|
$${WAIT(1)}$$|
//replace >[wool:white]&[air] #simplex[23][25%95:6,75%95:4]|
$${WAIT(1)}$$|
//replace >[wool:4]&[air] [25%95:5,75%air]|
$${WAIT(1)}$$|
//replace wool:red 70%dirt,30%2033:3
$${WAIT(2)}$$|
//replace 35:7 2034:0
$${WAIT(1)}$$|
//replace wool:yellow gravel,dirt
$${WAIT(1)}$$|
//replace 95:6 80%2005:9,20%2059:15
$${WAIT(1)}$$|
//replace wool:white 85%grass,15%dirt
$${WAIT(1)}$$|
//replace 95:4 50%31:1,50%31:2,0.5%2006:5
$${WAIT(1)}$$|
//replace 95:0 18:3
$${WAIT(1)}$$|
//replace 95:1 2205:3
$${WAIT(1)}$$|
//replace 95:2 2205:1
$${WAIT(1)}$$|
//replace 95:5 2155:0
$${WAIT(1)}$$|
//replace wool:brown dirt

I'm planning to expand this script by adding a second type of tree: Salix viminalis, which naturally grows around the water but was planted there to provide kindling and material for making baskets.
 
  • Like
Reactions: Luk and Iwan
Hello! I'd like to ask if there's any way to have a 100%complete schemset list, there are a lot of schems that aren't currently on the list and some that I didn't even knew existed like MediterraneanRock, and OTSentinel, and I'm sure I missed dozens of them since the /schlist is 900 pages long. It would be great to have and know of all the schems that exist and are possible to use and also maybe discard the old ones.
 

Emoticone11

The Dark Lord Sauron
Staff member
You can do /schset list and then check the launcher console to see all of them. BTW, do not use schematics if you don't recognize what they are - I'm pretty sure we have all of Lannisport stored as a schematic (or had at some point).

Ideally, people should just do their due diligence and post here whenever they make a new set...
 
Made some new small Pine trees! I wanted some with more branch exposure rather than having too many leave blocks...
Brush: EverPineS
I also went on to make Birch Forest details, all three brushes share the same details but different foliages.. (Beware that they were intended for autumnal forests in the north, so you may need to rearrange some things if you used in the south).
Brushes:
BirchDetailOak (Contains only oak leaves)
BirchDetailJungle (Contains only Jungle leaves)
BirchDetailMix
 

Attachments

  • Screen Shot 2021-02-27 at 12.55.18 PM.png
    Screen Shot 2021-02-27 at 12.55.18 PM.png
    1.3 MB · Views: 35
  • Screen Shot 2021-02-27 at 12.55.47 PM.png
    Screen Shot 2021-02-27 at 12.55.47 PM.png
    1.7 MB · Views: 35
Hello again!

I created three new schems! And made some updates to the rock ones I did!
-Changed Westerlands terrain set blocks for Westerlands Alt
-Changed MarchesRockS to be singular rocks
-Created a new one MarchesRockG for small groups of rocks (the previous MarchesRockS)

The new schematics are the following:

/schbr &SeriTinyOak

/schbr &SeriMaritimePineM

/schbr &SeriMaritimePineThin

Some Notes:
-The tiny oak one can be used anywhere, and has some jungle tall fern and some scrub grass details.
-The Maritime Pine or Pinus Pinaster, ones, in my perspective, correct me if I'm wrong, should and can be used in southern reach that has a biome mix with some degree of mushroom island, and areas like the marches the Arbor and the area south of Oldtown going from the three towers to the torrentine.

This tree is the most common tree in Portugal, specially in mountainous, dry, sandy or rocky areas, you find these a lot in large areas of sandy terrain. This tree can also be found in most of the countries around the Mediterranean I'm fairly certain. Here are some examples:
Thank you for reading!
-Seri
 

Attachments

  • 2021-03-01_22.05.23.png
    2021-03-01_22.05.23.png
    574.3 KB · Views: 24
  • 2021-03-01_22.08.13.png
    2021-03-01_22.08.13.png
    563.1 KB · Views: 25
  • 2021-03-01_22.06.51.png
    2021-03-01_22.06.51.png
    689.5 KB · Views: 25

IMajic

Royal Messenger
Hi all. New schms added.
[I kinda made some schems 2 years ago and never posted them here] But I've updated them today!!

These 4 trees have been used previously in Northern Clans projects in the past.
They work well on -: hills / cliffs / mountains because they are small and don't look huge on a mountain.
(I guess it be nice to have a medium size as to work better into forests - so I might make that soon enough)

= used in North Crownlands/riverlands/north. as Scottish pine and Norwegian spruce thrive in harsher climates
ScotPineS
2021-03-04_00.53.13.png

NorSpruceS

2021-03-04_00-53-54-png.7534



= used in the High Mountains in the North.
SnowScotPineS
2021-03-04_00.53.06.png

SnowNorS
2021-03-04_00.52.56.png



______________________________________________________________________________________________________________________________________________________

I also Updated my JuniperBush.as i found out from Eld was in the process of doing juniper and didn't know I had already made the schem. [my fault]
So for this instance I've reworked the schem and combined both of them into 2 new schems for Juniper.

Big thanks to Eld who did 60% of these Juniper -there is now 25 of these

JuniperBushTall
JuniperBushLow


Juniper is important and used for a variety of things. it grows in all enviroments.
foods [ingrediants -bitter]
alcohol [gin]
medicine - upset stomach, heartburn, bloating, loss of appetite, [U.T.I]
 

Attachments

  • 2021-03-04_00.53.54.png
    2021-03-04_00.53.54.png
    1.4 MB · Views: 283
Last edited:

AerioOndos

Donkey Lord
Staff member
Pronouns
they/them
Are there also going to be variants of waterloving plants aka alders and willows for the neck? Alders particularly are known to grow in fens
 

Jakethesnake8_8

Firemage
Pronouns
he/him
not sure if this is the right place for em, but I made some scripts based on information I found in this article (worth a read). feedback is welcome

heres images of the pastures


already fixed a couple issues, should work on non-flat terrain
 

Attachments

  • Screen Shot 2021-03-22 at 22.02.51.png
    Screen Shot 2021-03-22 at 22.02.51.png
    1.4 MB · Views: 6
  • Cow-Pasture-Script-Final (1).txt
    4.3 KB · Views: 10
  • Sheep-Pasture-Script-Final (1).txt
    3.5 KB · Views: 3
Last edited:

Emoticone11

The Dark Lord Sauron
Staff member
Sorry it took me ages to fix the dappled moss rotation bug, but the terrainset rock schemsets are finally fully useable:

BoulderMoss
BoulderEastern
BoulderIron
BoulderVale
BoulderNorth
BoulderOcean
BoulderRed
BoulderRiver
BoulderWesterlands
BoulderArborDorne
BoulderStormlands
BoulderReach
BoulderRedAlt
BoulderWesterlandsAlt
BoulderArborDorneAlt
BoulderStormlandsAlt
BoulderReachAlt
BoulderGreySandstone
BoulderArborDorneGrassy