Browse the contents
What would you like to make?
Fill out a scene
Already have trees, rocks or houses? Fill an area quickly, without touching nodes.
Start with the brush →Build some terrain
Build hills, terraces and slopes, with stone appearing automatically on steep ground. Start with four nodes.
Start modeling →Place assets with nodes
Tried both? Let nodes position a row of lamps or a ring of trees.
Combine the two →Get ready and find the four tools
Open VoxelWeave in the game and know when to use the brush or modeling tool.
Fabric client
Provides the editor, ghost previews and undo
Get it from VoxelUtopia’s official channels
Put Axiom and VoxelWeave in your client’s mods folder and start the game. Enter a world, then press Right Shift to open Axiom. Look for the VoxelWeave icons on the toolbar; hover over an icon to see its name.
Choose a tree or building, set the count and spacing, then place a batch in one stroke.
Plant some trees →Connect heights, points and materials into a reusable, adjustable program.
Make your first mountain →Manage your BPs, groups and clusters, or browse the server library.
Explore the library →Describe what you want and let a model draft a node graph. The other three tools work without a model.
See how to connect →Brush or modeling: what changes?
Brush
- You provide
- An asset: single, group or cluster
- What it does
- Places a batch of assets within a radius and spacing
- Right-click
- Paint : places the stroke immediately
- Good for
- Forests, rubble, scattered cottages
Modeling
- You provide
- A node graph
- What it does
- Computes terrain or a batch of placements
- Right-click
- Pin the ghost ; press Enter to place it
- Good for
- Terrain, coloring, regular layouts
Installed but cannot find the tools?
Check that both Axiom and VoxelWeave are enabled. Right Shift is Axiom’s default key; use your own binding if you changed it. The node panel can dock on the left or expand for editing.
Moving from SchematicStudio
Exit the game and remove the old SchematicStudio mod from mods before adding VoxelWeave. Keeping both prevents startup. Keep your personal assets, settings and worlds.
First stroke: plant a forest
Plant eight trees and learn to undo the stroke. Just the brush, no nodes needed.
- Choose an asset. Brush → Personal → Group →
官方预设_原版树林 (Vanilla Forest). It contains vanilla-generated oak, birch, spruce, acacia and cherry trees. - Set the parameters. Radius
30, spacing12, count8, distributionUniform. Start small so you can see what is happening. - Check the ghost. Point at loaded ground. The trees follow your cursor as ghosts; the world has not changed yet.
- Right-click to paint. Wait for one stroke to finish before starting the next. Each stroke uses a new random seed, so successive strokes look different.
- Undo. Use Axiom’s undo, usually Ctrl + Z , to remove the whole stroke. If nothing happens, click empty space in the node graph; a text field may have keyboard focus.
Why eight requested trees can become five
This top-down simulation shows the radius as a dashed circle and spacing around each point. Reduce the radius or increase spacing to see the placement count change.
| Parameter | What it controls | Common misunderstanding |
|---|---|---|
| Radius 1~512 | The area where trees can be placed | Does not resize the trees |
| Spacing 1~256 | Minimum distance between planting points | Measured root to root; canopies can overlap |
| Count 1~256 | Maximum trees per stroke | An upper limit; fewer appear if there is no room |
| Distribution | Grid, uniform, center, edge, ring, clusters | Center and edge also have a strength setting |
Only need one? Switch to Single. It places one asset at a time, so count and spacing are hidden.
Ghosts follow your cursor. Right-click places all eight trees; undo removes them together.
Build your own group
Make a group with more oaks than birches, save it, and paint with it next time.
VoxelWeave saves four kinds of content. Singles store blocks, groups and clusters store asset-selection recipes, and programs store entire modeling graphs.
One tree or cottage is one BP.
More oak, less birch, with processing such as rotation and grounding.
Forest group + shrub group + rock group.
Saves connections and parameters for reopening in Modeling. It cannot currently be embedded as a node in another graph.
Build it
- Select Single in the left node list and add two different trees. You can also right-click empty graph space to open the add menu.
- Add a Group, connect each tree to a separate group input, then connect the group to Output.
- Select the group and adjust member weights.
300and100mean the first appears more often, not an exact three-to-one ratio in every stroke. - If needed, add processing nodes on the path to Output (see below).
- Click Save to Personal. To share, choose Save to Server (Public); see Save and share 。
| Processing node | When to use it |
|---|---|
| Random Rotation, Random Mirror | Keep trees from all facing the same way |
| Grounding | For uneven ground. Large assets may not touch the ground at every block. |
| Keep Existing Blocks | Avoid replacing existing blocks |
| Extend Foundation | Extend supports downward when placed on slopes |
Only nodes connected to Output participate. Disconnected nodes do nothing.
After several strokes, oaks should outnumber birches. Original library assets stay unchanged; the group stores only the recipe.
Your first mountain
Build a terraced mountain with four nodes, learning the preview, pin and placement steps.
Try it here first. Each Next step connects another node so you can see the result take shape.
Now try it in the game
- Load the preset. Open Modeling. In the program menu, choose Official Presets (Personal Only) → “Example 1 · Terraced Hills”. Its four nodes are already connected.
- Choose a location. Point at the ground and right-click to pin the ghost.
- Adjust the terraces. Select Terrace Height. Change its step from 3 to 1, then 4. Larger values make stronger terraces.
- Adjust the relief. In Height Noise, change one setting at a time: amplitude controls height variation, scale controls hill width, and base height lifts everything.
- Adjust position and size. Fine-tune the anchor with X/Y/Z, choosing the center or a corner in the menu. Width X, depth Z and height Y are independent; proportions are not locked.
- Place it. Once the ghost has updated, press Enter or click Apply. To undo, use Ctrl + Z。
Right-click paints in Brush, but only pins the location in Modeling. Check the instructions on the left when switching tools.
Size versus sampling resolution?
Size sets the generated dimensions; resolution sets sampling density, not building size. Tune a small area before increasing width and depth. Higher resolution adds detail and work; reduce size or resolution if the budget is exceeded.
Terrace Height is not Surface Stairs
Terrace Height changes the terrain silhouette; Surface Stairs replaces suitable surface blocks with stairs. See Slabs, stairs and surface layers for details.
Changing parameters updates the ghost, not the world. Blocks appear only after you press Enter.
Change the shape
Learn what six processing options do, so you can predict the result before changing a setting.
Keep the mountain and change only its processing node. Select a node, adjust parameters and compare with the original. Slider ranges match the game. These simplified algorithms show the same tendencies, not identical terrain.
Height Noise
Terrace Height
Choose Thermal Erosion: 16 iterations, threshold 1, transport 50. Raise only iterations to 32 and watch slopes soften. Set transport to 0 to stop the change. This moves height down slopes, not flowing water. Add Terrace Height afterward if you want terraces back.
Match port types: height to height, material to material. Different types need a conversion node.
The mountain keeps its overall shape while the slopes and terraces change.
Color by slope and height
Make sandstone terrain with stone on steep slopes, then switch to height bands.
Try the mountain below. You control where stone is selected. Transition areas mix sandstone and stone blocks by proportion, rather than blending their colors, just as in the game.
Wire it up in the game
- Connect Continuous Height Noise to Continuous Field Terrain to create the shape. Also connect the same field to World Slope Weight to compute slope.
- Add two Block Material nodes: sandstone (A) and stone (B). Connect A, B and the slope weight to Weighted Material Mix.
- Connect the terrain and mixed material to Apply Material, then Output.
- Set minimum slope 30, maximum 90, feather 5. Above 30° selects stone, below 25° stays sandstone, and the interval between mixes both.
Switch to height bands
Replace World Slope Weight with World Height Weight on the same field. With Y min 78, max 86, feather 4, 78–86 is stone, 74–78 and 86–90 are mixed, and the rest is sandstone. This selects a band, not “higher means more B”. To cover the summit, set max Y above it.
These are world coordinates. Moving the terrain vertically changes where the band crosses it. Entering 78 in the UI means 78 blocks.
Make the transition more distinct
Insert Weight Remap before the material mix. The input range selects part of the original weights; the output range sets their strength: 0% selects A, 100% selects B. Invert Weight swaps them.
Drag sliders or enter exact values; confirm with Enter or by leaving the field. Right-click a parameter to copy, paste or reset its default.
Mask or weight?
Masks answer yes or no; weights express a 0–100% material preference. Use masks to cut areas or filter points, weights for soft material transitions. Mask to Weight converts an existing mask for mixing materials.
How do legacy heights connect to continuous fields?
Legacy heights describe relative shapes from 1–16, scaled to the output size; continuous fields use world units. Ports cannot connect directly. Use Legacy Height to Field for world weights, or Quantize Field to Legacy Height to return to terraces or thermal erosion, losing some continuous detail. Continuous terrain is also rounded to blocks, so tiny changes may not alter its shape.
Steep slopes are stone, flat ground sandstone, with mixed blocks between. If everything has one material, adjust thresholds to the terrain’s actual range.
Slabs, stairs and surface layers
Add half-block steps at the edges and a surface layer different from the interior.
Shape first, material second. Slabs and stairs change geometry; Surface Paint changes only material. This cutaway exposes the interior.
Stone Sandstone (surface)
| Node | Effect | Where to look |
|---|---|---|
| Surface Slabs | Replaces top blocks with bottom slabs. High Edges Only affects the edges; All Top Faces affects every top block. | Look from the side for half-block steps |
| Surface Stairs | Places straight stairs based on neighboring height differences, measured in half blocks. | Check the shape and orientation along the slope |
| Shave, Raise, Refine | Remove small peaks, fill small pits, or combine both and tidy the stairs. | Check whether the slope looks smoother |
| Surface Paint | Changes material, not height. Depth 1–4 counts surface layers; Whole Column runs from top to bottom. | Look from the side or in section; depth is hidden from above |
Six block families support slabs and stairs: stone, sandstone, cobblestone, stone bricks, bricks and oak planks. The grass palette uses stone for refined areas. These nodes accept terrain plans, not tree or house instance plans.
Use a small area while experimenting. Small previews are solid; large ones may show only surfaces. Place the result and inspect front and sides before judging the interior.
After Surface Paint, slabs and stairs keep their shape; only their surface material changes.
Place assets on node-generated points
Arrange a group of trees in a ring, then a row, without changing the assets.
Modeling placements answer two questions: what to place (asset source) and where to place it (point set). Instantiate joins them, placing once per point. Try changing the asset and the points independently below.
- Add Asset Source and choose a single, group or cluster from a personal or server library.
- Add a point node: Grid, Path or Ring for regular layouts; Brush Distribution for brush-like controls.
- Connect the source and points to Instantiate, then Output. For several different sources, build separate branches and join them with Merge Instance Plans.
- Adjust point parameters and watch the ghost. Moving or spreading points changes positions, not asset sizes.
- Save the program to keep connections, parameters and asset references.
If the layout cannot fit, the game rejects the values, explains why and keeps the previous ones. Reduce count or spacing. Brush Distribution accepts center points and an area mask; all centers share one count limit.
Changing points preserves the assets; changing assets preserves the positions.
Save and share
Save a program and understand what publishing to a server means.
| Content | What is saved | Where to use it |
|---|---|---|
| Single BP | Block structures such as trees or houses | Readable by VoxelWeave and Axiom’s local blueprint library |
| Groups and clusters | Members, weights and processing recipes | VoxelWeave brushes or Asset Source in Modeling |
| Program | Modeling nodes, connections, parameters and references | VoxelWeave Modeling |
Save locally
Use Save to Personal in Brush, or Save Program in Modeling. Files go in the Axiom blueprint directory’s VoxelWeave folder, normally at config/axiom/blueprints/VoxelWeave . It is created on first use. If you moved Axiom’s blueprint folder, use its actual location.
- Saving again updates the current program and keeps older versions in history.
- A new program with the same name asks which one to overwrite or lets you save a numbered copy.
- Right-click a program in the list to rename or delete it. Deleted files move to
VoxelWeave/.trash/modelsinstead of being erased immediately.
Sharing local BPs with Axiom
- Put native BP files in the local blueprint library’s
VoxelWeavesubfolder, then refresh both libraries. - Check that the single previews and places correctly before using it in a group or program.
- Convert SCH files to BP through Import / Convert in the asset library. Keep the originals and check blocks and orientation afterward.
Axiom cannot read groups, clusters or programs even in the same folder as BPs. To turn a program’s result into BP, place it in the world, then select and save it with Axiom.
Uploading to the server means publishing
On a server with the matching plugin, choose Save to Server (Public). Before doing so, know these three things:
Personal BPs used by a group or cluster are published too. Official presets are personal-only; replace them with your own BPs before publishing.
After withdrawal, other players can no longer fetch or use that server reference.
Everyone, including the author, edits a working copy after referencing it; the published original stays unchanged.
Browse the server library by type or search asset names, player names or UUIDs. Reference a result in your brush or program to continue building.
Leave the world and return. The saved program remains in your personal list with its connections and parameters intact.
Let AI help with your first draft
Everything before this works without it. You do not need a model to use VoxelWeave.
Be specific: “Make low terraced hills, sandstone on flat areas and stone on steep slopes.” You can edit the resulting draft like any hand-built graph. You still confirm placement yourself.
Enter your model endpoint in the AI panel. No separate app is needed; settings stay on your computer.
Configure API → Already using Codex, Harness or another agent?Connect the game through MCP and describe your task in your usual agent window.
Connect MCP →Configure the API in the game
- Enter an editable single-player world or a paired server. In the AI panel, fill endpoint, model and key. Use the full Chat Completions endpoint, usually ending in
/chat/completions. - Save the API settings, then describe the desired size, materials and shape.
- Click Review Payload and inspect what will be sent. Then confirm sending; the provider may charge for the request.
- When the draft arrives, click Accept to add it to Modeling. If it uses assets, bind the desired source locally first.
- Inspect the ghost, adjust parameters, then place with Enter Place it.
Request failed with 401, 404 or 429
For 401/403, check key permissions; for 404, endpoint and model name; for 429, your provider quota. For invalid draft JSON, request a simpler graph and add one node at a time.
Connect an external agent over MCP
- Enter a world and click MCP On in the AI panel. Enable Allow Agent to Edit Local Graph/Preview for direct editing; otherwise it can only submit drafts for review.
- Copy the MCP address. Add an HTTP server in your agent’s MCP settings with that URL and authorization header. Keep the token out of chats and game servers.
- Ask the agent to read the current world and graph first, then describe your goal. You can copy the request below.
- Return to the game, inspect and adjust the ghost, then press Enter or click Apply.
Read my current world and modeling graph first. Help me make broad, low terraced hills, with sandstone on gentle ground and stone on steep slopes. Show a ghost preview first so I can adjust it.
Cannot reconnect after restarting the game?
Restart MCP and copy its settings again. The port and token may change each time; update them in your agent too.
Does it work on servers?
Yes, with the matching plugin and pairing. An agent can prepare actions such as player commands, but you review and confirm them in the AI panel. Commands run as you, with your permissions, not console access. This does not expose every FAWE or Axiom feature.
How large can an AI draft be?
A draft supports up to 16 nodes and 24 connections. For a more complex result, ask for the main structure first, then extend it manually.
Find a node
Start with common nodes and wire a simple chain. Later, browse the game’s categories or search for what you want to do.
Common nodes
No results. Try a purpose rather than a node name.
Graph mouse controls and shortcuts
Concepts that are easy to mix up
| These two concepts | Difference | Which to use |
|---|---|---|
| Brush / Modeling | Brush right-click places immediately; Modeling right-click pins the ghost and Enter places it. | Use Brush to scatter assets; Modeling for computed shapes and layouts. |
| Single / Group / Cluster / Program | Singles hold blocks; groups and clusters select assets; programs hold modeling graphs. | Only single BPs can be read directly by Axiom. |
| Asset Source / Point Set | The asset says what; the points say where. | Use both, joined by Instantiate. |
| Legacy Height / Continuous World Height | Legacy height is relative, 1–16; continuous fields use world units. | Legacy heights for terraces and erosion; continuous fields for world-Y or slope coloring. Connect through conversions. |
| Mask / Continuous Weight | Masks are yes/no; weights range from 0% to 100%. | Masks cut areas and filter points; weights blend materials. |
| Terrace Height / Surface Stairs | The first changes the silhouette; the second replaces surface blocks with stairs. | Shape the terrain first, then refine its surface. |
When something goes wrong
Game fails to start
Remove any old SchematicStudio installed alongside VoxelWeave. Check Minecraft and Axiom versions match. If it still fails, keep the startup log and crash report.
Fewer placements than requested
Count is a limit. Increase radius or reduce spacing, and check whether the mask excludes most of the area.
No ghost preview
Check connections to Output and access to the asset, then retry smaller. Server assets also need downloading and parsing. If it persists, record the asset, source, settings and error instead of repeatedly placing.
Enter does nothing after changing Y
Finish typing, click the canvas and try Apply. Read the panel message: world height checks use the model’s full occupied range, not just center Y. World borders and server permissions also apply.
Everything becomes one material
Check whether all heights lie outside or inside the selected band, and whether you used a world field or legacy height. Try two distinct materials with thresholds inside the actual terrain range.
The ghost looks hollow
Large previews draw surfaces or simplified outlines. Place a small sample and inspect the sides and inside before assuming blocks are missing.
Blueprint import fails
Each blueprint supports up to 262,144 blocks and a 64 MiB file. Split larger ones before importing.
Some nodes do not work on the server
Test personal assets and local modeling in single-player first. Server assets and FAWE, ezEdits or Arceon nodes depend on installed plugins and permissions. Include the server and asset source when reporting problems.