Just to elaborate on
@SerLoras 's helpful tutorial above (I meant to write one up a while ago, but haven't had the time):
I've found that using the same vertical offset for all the trees in the schemset doesn't work in general. I'm not sure exactly how the placement logic works, but sometimes I've had issues where an offset that works for one tree doesn't work at all for another tree of similar height.
Because of this, I usually prefer to add trees to the schemset incrementally. You should be able to create an empty schemset just by doing //schset create Oak.
If you have an existing schemset, and know the vertical offset you want, you can add another schematic to it by doing "//schset append Oak OakM1@**^10". Note that I'm using the specific schematic OakM1 here, without the wildcard.
Make sure you get the vertical offset correct before you add to the schemset. You can remove schematics from the schemset, but you have to use the exact schematic string as when you added it, including any rotation and offset information, i.e. "//schset remove Oak OakM1@**^10". You probably won't remember the exact rotation/offset information you used, which makes this a bit annoying and error-prone.
You can play around with offsets by just using the normal schembrush with a fixed schematic (and not a schemset). That is, "//schbr OakM1@**^10". Try a few different offsets, paste a few trees, and see what offset works. Then append that schematic+offset to the schemset. Repeat for all of the schematics you want to add to the schemset.