TVPT / VoxelGunsmith

Equipping VoxelSniper. The API for the popular Long Range Terraforming plugin VoxelSniper.
MIT License
20 stars 3 forks source link

Stencil & Stencil Lists #17

Open mickare opened 8 years ago

mickare commented 8 years ago

Should not need further explaining than the title

It is/was the best command to create huge forests and landscapes.

Old commands:

Stencil:

Stencil Lists:

mickare commented 8 years ago

Can you add the label "enhancement"?

mickare commented 8 years ago

Needed for easy upgrade:

Deamon5550 commented 8 years ago

Other things to consider:

mickare commented 8 years ago

MCEdit-Schematic File Format

Reference link to WorldEdit's git

Stencils

In generall wouldn't it be consequent to do the transformation as a mask / effect? So also other masks & effects apply to the stencil?

Like a new transformation masks (parameters):

Inter-plugin compatibility

Stencil Lists

Deamon5550 commented 8 years ago

Yeah thats a good point, having the stencil brush work a lot like a shape (but not quite) might be good so that we can simply have the a rotation mask apply to the stencil. I'd need to modify the current way masks work to hand them a 'view' of the world rather than them looking at the world directly. Since we can then pass a view into a schematic to them in place of the world.

Interoperability with worldedit / other plugins which use schematics is moot since we would be changing away from the stencil format (its crap anyway) to using the schematic format by default.

mickare commented 8 years ago

I did recently a lot with netty and before with world edit.

Why not building something like a brush pipeline?

E.g.: (World+Position)-> Shape -> Shape -> Mask -> Mask -> Effect -> Effect -> (turning point, other direction out)

Each layer has the methods ingoing & outgoing of a modificatable work object and they pass it through the pipeline. On their way through the pipeline they get modified, ignored, etc.

Deamon5550 commented 8 years ago

That is essentially how it works right now see BrushChain.java