Axiom Logo

Introduction

Welcome to the Axiom Documentation, an introductory book about the all-in-one tool for editing Minecraft worlds. The goal of Axiom is to help you build terrain, organics and structures faster and to a higher quality. The mod brings innovative new tools and algorithms, while also improving ergonomics by reducing the feedback loop through realtime clientside visualizations.

Who Axiom Is For

Axiom is intended for everyone from novice to professional. The tools are intuitive and easy to approach, while still providing lots of depth through settings for experienced users.

Basic Controls

To access the Builder Mode menu, press Left Alt

To open/close the Editor Mode, press Right Shift

These keybinds can be adjusted in Minecraft's controls menu (Esc > Options > Controls)

Last Documentation Update: 03/06/24

Builder Mode

The Builder Mode is an enhancement of the vanilla Creative mode. It adds several new features that take a lot of the pain away from traditional building and make everything just a bit easier.

Builder Context Menu

Many features for builder mode can be toggled or accessed through the Context Menu. The menu can be opened by holding down Left Alt. See Context Menu for more information.

Builder Context Menu

Builder Tools

To the right of the hotbar, you can find the Builder Tools. These tools are very simple and are intended to ease structural/small scale building where use of the more powerful Editor Mode is too unwieldy.

To start using a Builder Tool, scroll to the 10th slot or press 0. To switch to a different Builder Tool, hold Left Alt and then scroll.

The three main keybinds for the Builder Tools are left-click, right-click and middle-click. Middle-click has similar a functionality to left and right-click but instead of selecting the corners, middle-click is used to select the faces.

When working with a selection, useful information such as offset and size is displayed above the hotbar.

The tools that are currently available in this section are:

There are two flags that apply to all builder tools:

  • Copy Air
    • Toggles the ability to copy air when moving a selection.
  • Copy Entities
    • Toggles the ability to copy entities when moving a selection.

Builder Tools

Context Menu

The features for builder mode are accessed in the builder context menu. By default, holding down left alt opens the menu.

Builder Context Menu

Hotbar Swapper

The Hotbar Swapper is a better version of the vanilla “Saved Hotbars” which are stored in the creative inventory and are loaded using keybinds. The Hotbar Swapper is in the centre of the Context Menu and has 9 saveable hotbars.

To save items to the hotbar swapper, use the scroll wheel while the context menu is open to select the hotbar you would like to save to.

Then close the context menu and fill your hotbar with the items you want. When you’re done, you can scroll to the next hotbar you would like to modify. Another way to modify hotbars would be to click on an item with left-click and drop it into another position with left-click.

Note: Hotbars are not transferred between worlds

Loading saved Hotbars is simple. Just use the scroll wheel in the context menu to select the hotbar you’d like to use. Then close the context menu and the blocks and items you previously saved should be loaded into your hotbar.

Capabilities

Capabilities allow you to change the way you place, destroy and modify blocks. When a capability is enabled, the button will be tinted green. Disabled capabilities are represented as greyed.

Further information on the individual capabilities can be found here.

Create Display Entity

Allows for creating and manipulating display entities. Read more here.

Edit Block Attributes

Provides settings that alter gameplay. Read more here.

Gamemode Switcher

Using these buttons can be slightly faster than messing around with F3+F4 or chat commands.

Pressing Left Alt while in another gamemode will put you into creative mode, this can be useful if you are in spectator mode and want to quickly switch to creative. This can be disabled in the config as autoSwapToCreative.

Flight Speed

The Flight Speed is represented as a vertical slider on the right side of the context menu. The current speed is represented as a percentage above the slider. 100% is normal flight speed and 200% would be two times as fast. The limit is 999%.

To change the flight speed, use left-click on the slider to select a specific speed. Dragging the slider and clicking the plus and minus symbols are other ways you can change the flight speed.

Toolbox

The Toolbox is located under the flight speed slider in the context menu and contains useful settings for building. Listed below are all Toolbox settings alongside their description.

SettingDescription
Show marker entity gizmosToggles visualisation of Marker Entity Gizmos.
Show display entity gizmosToggles visualisation of Display Entitiy Gizmos.
Show key hintsToggles the ability to view currently pressed keys at the bottom right corner of the screen. This can be useful for debugging or tutorials.
Infinite reach limitSets the range for the Infinite Reach capability. The slider ranges from 5 to 100 and is set to infinite by default.
Liquid opacitySets the opacity of water. 100% normal opacity and 0% results in water being invisible.
Minimum BrightnessSets the minimum brightness. 0% is default and 100% removes all shadows.
Type replaceThe Type Replace toggle affects the Replace capability. Replacing blocks with multiple variants such as stairs and slabs with another multi-variant block will change that block to the variant regardless of what block it is.
Flight directionFlight Direction changes the way you fly in creative mode. The vanilla flight mode is 'Horizontal' and the Axiom version is called 'Camera'. The camera mode allows you to fly in all directions using the direction of the camera.
Flight momentumThe flight momentum affects how long it takes to change speeds while flying. A higher momentum means a longer delay until you reach full speed, resulting in a smoother flight.

Clear

This button clears all saved hotbars excluding your current one.

Move

The move tool allows you to alter the position of blocks and entities within a cuboid area.

Creating Selections

To create a selection, start by using left-click to select your first corner and then right-click to select the second. You can use middle-click to select faces instead of the corners. This makes it much easier to select blocks that don't already have edges.

See below for a demonstration. The initial selection is made with a Left & Right click, which is then further expanded to include the whole tree using three middle-clicks.

Moving Selections

Once you're happy with your selection, you can move it by scrolling with the mouse wheel. Now, a hologram will represent the selection you'll be working with. You will also be presented with different controls, using middle-click you can move the selection to the direction you're facing.

Using the scroll wheel, you can nudge the selection by one block. Scrolling up will push the selection away from the player and scrolling down will bring the selection closer to the player, so the direction the player is facing determines the direction the selection is pulled or pushed. The arrows on the faces of your selection will indicate the scroll up direction.

By holding the 'X', 'Y' or 'Z' keys, you can force the selection to move in a single axis. For example, holding the 'X' key while nudging the selection will force it to move on the X axis only.

Modifying Selections

You can further modify a selection by two ways: flip and rotate. These can alter the orentation of the selection in almost any way.

To flip a selection, use Ctrl + F. This will flip the selection depending on the direction you're facing. The arrow on the side of your selection will indicate the direction your selection will be flipped.

To rotate a selection, use Ctrl + R. This will rotate the selection clockwise on the X and Z axis. For example, a selection facing north will be face east after rotating it.

With a selection, you're still able to expand the selection with middle-click. Using left or right-click also works to set a corner again.

Below is another demonstration, covering the two modifiers mentioned above.

Confirming Selections

After you're happy with your movement and modifications, use right-click to confirm the selection, placing the blocks shown in your selction.

If you're not happy with the result, use Ctrl + Z to undo the placement. If you can't make up your mind, you can use Ctrl + Y to redo your undo.

Clone

The clone tool allows you to copy a cuboid area and paste it elsewhere multiple times.

Creating Selections

To create a selection, start by using left-click to select your first corner and then right-click to select the second. You can use middle-click to select faces instead of the corners. This makes it much easier to select blocks that don't already have edges.

Moving Selections

Once you're happy with your selection, you can move it by scrolling with the mouse wheel. Now, a hologram will represent the selection you'll be working with. You will also be presented with different controls, using middle-click you can move the selection to the direction you're facing.

Using the scroll wheel, you can nudge the selection by one block. Scrolling up will push the selection away from the player and scrolling down will bring the selection closer to the player, so the direction the player is facing determines the direction the selection is pulled or pushed. The arrows on the faces of your selection will indicate the scroll up direction.

By holding the 'X', 'Y' or 'Z' keys, you can force the selection to move in a single axis. For example, holding the 'X' key while nudging the selection will force it to move on the X axis only.

Modifying Selections

You can further modify a selection by two ways: flip and rotate. These can alter the orentation of the selection in almost any way.

To flip a selection, use Ctrl + F. This will flip the selection depending on the direction you're facing. The arrow on the side of your selection will indicate the direction your selection will be flipped.

To rotate a selection, use Ctrl + R. This will rotate the selection clockwise on the X and Z axis. For example, a selection facing north will be face east after rotating it.

With a selection, you're still able to expand the selection with middle-click. Using left or right-click also works to set a corner again.

Confirming Selections

After you're happy with your movement and modifications, use right-click to confirm the selection, then use left-click to finish the selection. If you want to create multiple copies, move the selection using your scroll wheel instead of finishing the selection.

If you're not happy with the result, use Ctrl + Z to undo the placement. If you can't make up your mind, you can use Ctrl + Y to redo your undo.

Stack

Stack allows you to copy blocks and entities in a row or grid pattern.

Creating Selections

To create a selection, start by using left-click to select your first corner and then right-click to select the second. You can use middle-click to select faces instead of the corners. This makes it much easier to select blocks that don't already have edges.

See below for a demonstration. The initial selection is made with a Left & Right click, which is then further expanded to include the whole tree using three middle-clicks.

Stacking

Once you're happy with your selection, you can stack it by scrolling with the mouse wheel. Now, a hologram will represent the stack you'll be working with. You will also be presented with different controls.

Using the scroll wheel, you can nudge the selection by one step. Scrolling up will stack the selection away from the player and scrolling down will bring the selection closer to the player, so the direction the player is facing determines the direction the selection is stacked. The arrows on the faces of your selection will indicate the stack direction.

By holding the 'X', 'Y' or 'Z' keys, you can force the selection to stack in a single axis. For example, holding the 'X' key while nudging the selection will force it to stack on the X axis only.

Confirming Selections

After you're happy with your movement and modifications, use right-click to confirm the selection, placing the blocks shown in your selction.

If you're not happy with the result, use Ctrl + Z to undo the placement. If you can't make up your mind, you can use Ctrl + Y to redo your undo.

The video below demonstrates how stack can be used on multiple axes.

Smear

Stretches blocks between two points.

Creating Selections

To create a selection, start by using left-click to select your first corner and then right-click to select the second. You can use middle-click to select faces instead of the corners. This makes it much easier to select blocks that don't already have edges.

See below for a demonstration. The initial selection is made with a Left & Right click, which is then further expanded to include the whole tree using three middle-clicks.

Smearing Selections

Once you're happy with your selection, you can smear it by scrolling with the mouse wheel. Now, a hologram will represent the selection you'll be working with. You will also be presented with different controls, using middle-click you can smear the selection to the direction you're facing.

Using the scroll wheel, you can nudge the selection by one block. Scrolling up will push the selection away from the player and scrolling down will bring the selection closer to the player, so the direction the player is facing determines the direction the selection is pulled or pushed. The arrows on the faces of your selection will indicate the scroll up direction.

By holding the 'X', 'Y' or 'Z' keys, you can force the selection to smear in a single axis. For example, holding the 'X' key while nudging the selection will force it to smear on the X axis only.

Smearing Properties

The path between the origin point and your selection must not include any solid blocks. Solid blocks in the path of your smear will cut it off.

This means it's best to use a 3D object for a 3D stretch, a 2D object for a 2D stretch and so on. This ensures the stretch looks best for your application.

Below is a demonstration of the smear tool. The player builds a roof by smearing two rows of blocks.

Extrude

Extrude is a unique builder tool as it doesn't use a selection. Extrude simply extrudes and shrinks a face of the same block.

To extrude a face, use right-click. To shrink a face, use left-click.

If you're not happy with the result, use Ctrl + Z to undo the placement. If you can't make up your mind, you can use Ctrl + Y to redo your undo.

Below is a video showcasing the extrude tool.

Erase

Erase allows for removing a cuboid selection, or 128 connected blocks of the same type.

Creating Selections

To create a selection, start by using left-click to select your first corner and then right-click to select the second. You can use middle-click to select faces instead of the corners. This makes it much easier to select blocks that don't already have edges.

With a selection, you're still able to expand the selection with middle-click. Using left or right-click also works to set a corner again.

Confirming Selections

After you're happy with your selection, use the del or backspace key on your keyboard to remove the selected area.

If you're not happy with the result, use Ctrl + Z to undo the deletion. If you can't make up your mind, you can use Ctrl + Y to redo your undo.

Erase Connected

To remove the nearest 128 blocks of the same type, use right-click while facing at the block you'd like to remove. The use of Ctrl + Z and Ctrl + Y still applies.

Below is a demonstration of both methods.

Setup Symmetry

Setup Symmetry allows you to position and configure a 'symmetry node'. Once the node is set, you can start placing blocks with symmetry.

Setting The Symmetry Node

Use right-click while looking at the symmetry point you'd like to set. The symmetry point is represented as a small cube. The colour of the cube represents its state. Grey signifies the symmetry is disabled, and yellow signifies that symmetry is enabled.

The symmetry node can be placed on the face, vertex and edges of blocks.

Symmetry Modifiers

To enable symmetry, you'll need to use either the flip or rotation modifier.

  • To use the flip modifier, use Ctrl + F. For example, to flip on the X axis, face the X axis and use the flip modifier. This works on all three axes.

  • To use the rotation modifier, use Ctrl + R. Unlike flip, this only works on one axis.

You can use these keybinds at any point as long as the symmetry node is set.

The flip modifier can use more than one axis at a time and you can combine both the flip and rotate modifiers simultaneously.

The node can be removed at any time by pressing the del or backspace keys. The node can also be temporarily disabled by removing all modifiers.

Below is a demonstration of the symmetry tool.

Tip: Nodes will be removed if the player is outside the 256 block radius.

Video Demo

Display Entities

Display Entities were added to Minecraft in 1.19.41, introducing the ability to display blocks, items and text in the form of entities. This means you can essentially create structures at any scale. However, they are hard to use, especially for players inexperienced with commands.

Axiom takes advantage of this difficulty and has a feature for precise display entity editing.

In the Context Menu, the "Create Display Entity" button will open a menu similar to the creative inventory. Use the tabs to switch between item, block and text displays.

The tables below cover the settings for the Create Display Entity menu.

Item Display

SettingDescription
ItemThis represents the item that will be displayed. Clicking the icon will display all items in a grid. The CustomModelData filter only displays custom blocks.
Item DisplayThis setting is similar to Blockbench's display options2. This determines how the item will be displayed.
Additional SettingsRefer to Additional Settings.

Block Display

SettingDescription
BlockThis represents the block that will be displayed. Clicking the stone icon will display all blocks in a grid.
Additional SettingsRefer to Additional Settings.

Text Display

SettingDescription
TextThe black box provides space to enter text for the text display.
Background ColorThe background colour determines the colour surrounding the text. The colour fomat for the background colour is ARGB in Hexadecimal.
Line WidthThe line width determines the amount of space required to start a new line.
AlignmentThe alignment determines the offset relative to the gizmo.
ShadowAdds a shadow effect to the text.
Additional SettingsRefer to Additional Settings

Additional Settings

The Additional Settings submenu provides further options for the display entity. However, these are much more advanced and are generally used for mapmaking.

After pressing "done", the display entity will be spawned at the player position with the selected settings.

Display Entity Manipulation

Left-clicking the white node at the centre of the Display Entity will display a Gizmo. Using the gizmo, you can move, rotate and scale the Display Entity in any direction.

Keybinds

There are many key combinations that can be used while the gizmo is active. Listed below are all key combinations alongside their description.

KeyDescription
Right ClickMoves the Display Entity to the block you're facing. However, while looking at the white cube on the gizmo, it opens the Editing Menu for the selected display entity.
ScrollNudges the display by the default step size3.
ControlUsed alongside Left Click to increase the step size. The movement step is changed to 1 block, the rotation step is set to 15 degrees and the scale is set to affect all axes rather than one.
ShiftLowers the step size for movement and scale to 0.0001 blocks and sets the rotation step size to 1 degree.
Control + CCopies the display entity to the clipboard. This can be pasted using Control + V.
Delete / BackspaceDeletes the selected Display Entity.
Control + ZUndo the previous edit.
Control + YRedo the undone edit.
Middle-ClickCopies the Display Entity to an item. This works the same as spawn eggs and can be snapped to different rotation steps by using control or shift while placing.

Editing Menu

The Editing Menu has many useful features. Listed below are all features with a description.

ModifierDescription
Edit PropertiesOpens the original menu to set the display entity properties.
Edit TransformationOpens a menu to manually enter precise translation, rotation and scale.
Reset TranslationResets the offset set in the Edit Transformation menu.
Reset RotationResets the rotation to 0 on all angles.
Reset ScaleResets all scale values to 1.
Gizmo ModeSwitches between local and global gizmos.
DuplicateDuplicates the Display Entity in the same position.
GroupingPressing this button will reveal the grouping settings. Changing the range slider will affect the area of grouping. The "Group with nearby in range" will group all Display Entities within the provided range. The "Ungroup children" button ungroups all display entities that have previously been grouped.
RemoveDeletes the Display Entity.
Copy Summon CommandCopies the display entity to the clipboard. This can be pasted using Control + V.
Copy CoordinatesCopies the exact coordinates to the clipboard.
Copy Transform CommandCopies the transformation to the clipboard as a command.

Notes

1

Display Entities are a vanilla Minecraft feature.

2

Blockbench uses display settings for different perspecives of a model.

3

The default step size is 1/16th of a block (0.0625).

Marker Entities

Similar to Display Enities

Marker Entities are a vanilla minecraft1 feature which was added in 1.17. Essentially, they are entities that have little to no behaviour. Axiom takes advantage of this and provides a Gizmo to control the marker.

Right-clicking the marker gizmo will open a menu, allowing you to input custom NBT for the marker.

Using Ctrl+C while the gizmo is active, will copy the marker data to the clipboard. Using Ctrl+V will paste the copied marker into the world.

Notes

Edit Block Attributes

The Edit Block Attributes menu can be used to configure multiple settings that alter gameplay.

SettingDescription
Show Collision MeshCreates a red outline for every block with a transparent hitbox like barriers or fences.
Show Light BlocksAdds a texture1 for light blocks and enables interactions with them.
Show Structure Void BlocksAdds a texture2 for structure void blocks.
Expand Hitboxes to Full CubeSets all hitboxes to a full block. Affects blocks like slabs or buttons.
Make Fluid Hitboxes SolidAllows you to break individual blocks of water with your fist.
Prevent InteractionsStops the player from opening containers or interacting with blocks while holding a block.

Notes

1

Light Block Texture

2

Structure Void Texture

Capabilities

This chapter covers Capabilities, toggleable features which can enhance your building workflow.

The Capabilities that are currently available are:

  • Bulldozer (break blocks fast)
  • Replace Mode (replace blocks in the world)
  • Force Place (bypass block placement restrictions)
  • No Updates (prevent block updates when placing/breaking)
  • Tinker (various useful interactions when right-clicking with an empty hand)
  • Infinite Reach (removes the reach limit)
  • Fast Place (place blocks fast)
  • Angel Placement (place blocks mid-air)
  • No Clip (move through blocks while flying)

Capabilities can be toggled using the left side of the Context Menu

Additionally, keybinds can be associated with capabilities to quickly toggle them. By default, only the Replace Mode has a keybind (R), but more can be added in the vanilla controls menu (Esc > Options > Controls)

Gameplay

Using Ctrl + C while looking at a block will copy its exact nbt state.

When searching in the creative inventory, pressing enter will add the first listed block to your current hotbar slot.

Tinker

The Tinker capability has various features related to right-clicking with your fist on blocks. Tinker often can be used in place of the debug stick, being slighty faster compared to the debug stick's clunky interface but sometimes lacking the ability to change some non-visual properties.

Aiming at specific parts of a block can change the effect of the tinker. This lets you quickly change full blocks into stairs, stairs into slabs and vice versa. It also lets you easily adjust walls/fences to create states that Minecraft normally doesn’t allow.

Tinker interactions can be negated while the capability is toggled on by either having a non-empty hand or by holding down the sneak or ‘shift’ button.

BlockTinker Property Effect
WallsCycle axis and cycle none, low, tall
FencesCycle axis
Chorus PlantCycle axis and toggle up / down
Iron BarsCycle axis
PistonCycle facing and switches Extended / Retracted
FurnaceCycle facing and toggle lit
Carved Pumpkin/Jack o'LanternCycle facing and switches Carved / Jack o'Lantern
BarrelCycle facing
Iron Trapdoor/DoorCycle open
Brewing StandCycle bottles
Glazed TerracottaCycle facing
FarmlandCycle moisture
ScaffoldingToggle bottom
Amethyst ClusterCycles stages
LecternToggles book
Cave VinesToggles berries
Bamboo StalkToggles leaves
CauldronCycles fluid level
ComposterCycles compost level
BeehiveCycles honey level
CakeCycles bites
LanternToggles hanging
Fence GateToggles lowered and cycles facing
Player HeadCycles rotation
BannerCycles rotation
Attached Melon/Pumpkin StemCycles facing
RailsCycles rotation
BellCycles facing
Bamboo BlockCycle facing and toggles stripped
ChestCycle facing
End Portal FrameCycle facing and toggles eye
ObserverCycle facing and toggle powered
SnowCycle layer
Turtle EggCycle eggs
Suspicious Sand/GravelSwitch Suspicious Sand and Suspicious Gravel
Grass Block / Dirt PathSwitch Grass Block and Dirt Path
AzaleaSwitch flowering
Water / LaveCycle level
Any block with 'age' propertyCycles age
Any block with 'lit' propertyToggles lit
Any block with 'powered' propertyToggles powered

Additionally:

  • Right-clicking with Moss Block on cobblestone/stone converts the block into its mossy variant
  • Right-clicking with Shears on removes the mossy variant
  • Right-clicking on a pot with a plant replaces the plant inside the pot
  • Any block with a slab or stair variant can be tinkered

No Updates

The No Updates capability ‘freezes’ blocks and adjacent blocks in their current state and prevents shape and neighbour updates when breaking or placing blocks nearby.

This is useful when working with "non-vanilla" states of stairs/fences/walls/etc. which would normally revert to their vanilla state when breaking/placing blocks near them.

Force Place

The Force Place capability bypasses normal placement restrictions.

  • Blocks which normally need to be attached to solid blocks can be placed in mid air
  • Blocks can be placed inside entities (including yourself)
  • Plant blocks no longer need to be placed on farmland
  • Blocks can be placed regardless of light level
  • And much more!

Force Place is best used in combination with No Updates in order to ensure illegally placed blocks don't break when updated. You may also need to disable random updates with /gamerule randomTickSpeed 0

Replace Mode

The Replace Mode capability allows you to right-click to replace the targeted block with the held block. This allows you to easily replace a large amount of blocks by holding the right-mouse button.

Additionally, when you replace a block, the newly placed block will inherit the properties of the old block.

A basic demonstration of Replace Mode can be found below

Type Replace

Type Replace can be toggled on through the Options Toolbox in the Alt Menu. Turning this on allows you to hold a base material block (eg. Spruce Planks) to replace stairs/slabs/walls/fences/etc. with their spruce variant

A demonstration of Type Replace can be found below

Bulldozer

The Bulldozer capability allows you to break blocks very quickly after an initial warmup period by simply holding down the left mouse button. The warmup period is intended to prevent accidental mass destruction.

Editor Mode

The Editor Mode includes a large variety of tools and operations for large-scale world manipulation, painting, terraforming and sculpting. The Editor UI has been designed specially for this purpose, combining camera controls from conventional 3D software with powerful tools tailored for Minecraft building. The layout of the Editor UI can be customized by rearranging and docking the windows to your liking.

The Editor UI can be opened/closed by pressing Right Shift (not Left Shift).

Most of the keybinds in the Editor UI are similar to other editing programs, namely:

  • Cut: Ctrl+X
  • Copy: Ctrl+C
  • Paste: Ctrl+V
  • Undo: Ctrl+Z
  • Redo: Ctrl+Y

The default camera controls are:

  • Rotate: Left Click
  • Arcball Camera: Ctrl + Left Click
  • Pan Camera: Ctrl + Right Click

The Flight Speed can be changed using the slider at the bottom right corner of the Editor UI.

Keybinds can be found in the Main Menu Bar titled 'Keybinds'.

If you'd prefer a default key layout reminiscent of Blender, use Load Default > Blender-like.

Selections

A Selection is a set of highlighted blocks that affect the functionality of other systems.

There are many selection tools in Axiom that you can use to make selections. Each of these tools feature several options to further fine-tune what and how you might want to select something. See Selection Tools for more info.

With a selection, you can constrain the brush strokes of Tools.

Operations rely on selections to affect blocks within a region.

Finally, to clear a selection, use 'Select -> Clear' or press the Enter key

Below are a few keybinds that can be used to move and copy selections.

  • Ctrl+C
  • Ctrl+X
    • Cuts the selection, allowing you to move it anywhere you'd like using the Gizmo
  • Ctrl+J
    • Duplicates the selection, similar to cut, but doesn't remove the blocks in the process.

Gizmos

Gizmos are a common UI element which allows positioning within the 3D world.

Gizmo With All Elements

Gizmo Properties

A gizmo can contain the following elements:

  • Axis Arrows These coloured arrows correspond to XYZ coordinates. The red, green and blue arrows allow the gizmo to be dragged along the X, Y and Z axis respectively.
  • Center Node The center node can be dragged to move the gizmo on all 3 axis. While dragging, the gizmo will maintain the same distance to the camera.
  • Plane Nodes The
  • Rotation Rings The three Rotation rings allow you to perform rotations on objects. The red, green and blue rings allow the gizmo to be rotated on the X, Y and Z axis respectively.
  • Scale Nodes The Scale nodes are used for Display Entities. Dragging one of the three Scale Nodes will stretch along the X, Y and Z axis respectively.
  • Global Gizmos When a gizmo is set to global, the Axis Arrows, Centre Node and Rotation Rings are locked to the world's rotation.
  • Local Gizmos A local gizmo is when the Axis Arrows, Centre Node and Rotation Rings are locked to the gizmo's rotation.

Gizmo Controls

Builder Mode Gizmo Controls

When using Display Entities or Marker Entities, a gizmo is used to move and modify the entity. There are multiple keys you can use to alter how the gizmo is used to modify the entity. To select a gizmo, use left-click on the Center Node.

KeyDescription
Right-ClickUsed to adjust any of the gizmo elements such as the Axis Arrows.
Left-ClickRelocates the entity to the block the player is facing.
ScrollNudges the entity along the axis you're facing. Holding the Center Node while scrolling will push and pull the entity relative to the player.
ControlWhile adjusting gizmo elements, the movement snapping size is increased to one block and the rotation snapping is set to 15 degrees. When using control while adjusting the scale nodes, all three axis will be scaled simultaneously.
ShiftRemoves all snapping when adjusting gizmo elements.
Control + CCopies the entity data to the clipboard.
Delete / BackspacePermanently removes the selected entity.
Control + VPastes the entity in the clipboard.

Editor Mode Gizmo Controls

The Editor utilises gizmos for many features such as Selections and the Path Tool. However, each tool or feature may have a different gizmo type depending on its usage. This means one tool could have less gizmo features than another.

Tip: You can use the arrow keys to nudge gizmos on the X and Z axis.

Tool Presets

Tool Presets allow for easy saving and loading of tool settings and configurations. Tool presets are saved in the Axiom configuration at .minecraft/config/axiom/tool_presets as NBT format.

While the drop-down is open, you can search for presets by typing.

Saving Presets

To save presets, first set the configuration of the tool you'd like to save. Clicking the plus icon next to the presets drop-down will display a text field. Here you can name the preset. After clicking save, your preset will appear in the drop-down.

Tools That Use Presets

Placement

Placements can be repositioned and rotated using the Gizmo.

Once the placement is in the correct position, you can use Enter or Ctrl+V to confirm it. To cancel a placement, use the Delete or Backspace key.

Tip: The placement can be rotated clockwise along the X and Z axis by using Ctrl+R. Placements can be flipped in the direction of your mouse vector by using Ctrl+F.

Placement Options

OptionDescription
Keep ExistingStops the placement from overriding pre-existing blocks
Paste AirEnables air to override pre-existing blocks
Merge BlocksMerges new blocks with existing blocks based on the block shape.
Unlock RotationAllows the placement to be rotated at any angle rather than 90 degree steps.
Rotate/ScaleOpens the Rotate/Scale window.
Snap to groundRepositions the placement down to the nearest solid surface.
Paste CopyPlaces a copy of the placement without cancelling the placement.
Paste and SelectPlaces the object and selects it, allowing for further modification.

Rotate and Scale

The Rotate/Scale window allows for rotating and resizing by any amount. This window contains a drop-down with for multiple functions. Below are all options with a description.

OptionDescription
Nearest NeighbourNearest Neighbour has 6 translation inputs, one for each rotation axis and one for each scale axis. However the output may contain more artifacts than using the other translation types.
RotSpriteRotSprite has 3 translation inputs, there is one input for each rotation axis.
Scale2xScale2x has no inputs. It scales your placement by two times its size.
Scale3xScale3x has no inputs. It scales your placement by three times its size.

Common UI Elements

The following UI elements consistently appear throughout the Editor Mode.

Sliders

Sliders are used for almost every feature in axiom. However, Every slider can have any numerical value inputted by using Ctrl+Click on the slider.

Block Icons

Block Icons can be used quickly set what blocks are used in certain tools. Dragging a block with Middle-Click into a block icon such as the Active Block or Tool Masks. You can even drag one block icon into another using Left-Click.

Lua Code Editor

The Lua code editor is used for Mask Scripting and the Script Brush. The code editor includes a line count and tab indenting alongside some custom functions and variables.

Main Menu Bar

The main menu bar gives users access to crucial functionality of the mod. Here you can find menu items for accessing windows, manipulating selections, performing operations and viewing helpful information.

Tool Masks

Clear and open the tool mask editing window. See Tool Masks

Window

The Windows submenu lets the user toggle Windows. If you ever close a window and want it back, this submenu allows you to re-enable it. With this window, you can also save and restore a default layout.

To store a layout, pressing the 'Store Current Layout as Default' will save your current window layout. To restore the saved layout, press the 'Restore Default Layout' button. You can export and import layouts to and from your clipboard.

Keybinds

The Keybinds button opens a window to edit and set keybinds for tools and operations.

Help

The Help submenu contains useful information and configuration options.

The dropdown contains links to information and resources. The style editor can be accessed through this window, allowing you to change and import custom colours for the Editor UI.

File

The 'File' drop-down provides many useful features regarding loading and saving files to use within Axiom.

Import Schematic

When pressed, a file explorer window will be opened. Here you can select a schematic to import into Axiom. Both .schem and .schematic are supported, however only one schematic can be loaded at a time.

After you've opened a schematic in your file explorer, it will be loaded into your Clipboard.

Export Schematic

The Export Schematic option allows you to export a schematic using your clipboard. Once you have something in your clipboard, you'll be able to export it as a schematic.

For users with a Commercial License, you'll be able to export to any version from 1.7 to 1.19.

Open Reference Image

Opens a file explorer window for you to select an image to be loaded into Axiom. Once opened, you can drag and resize the image window to wherever you want.

Right-Clicking on an image window will display some options to adjust the reference image.

  • Close Window removes the image.
  • Set Filtering: Nearest "smoothes" out sharp pixels to reduce the blocky look.
  • Set Filtering: Linear stops it from smoothing out pixels, leaving the sharp edges.
  • Show In Game UI makes it so the image is always shown. When disabled, the image is hidden when outside of the Editor.
  • Borderless removes the outer padding and resizing tab.

Load Bedrock Packs

This is a Commercial License feature.

The 'Load Bedrock Packs' option allows you to replace existing models with Bedrock Edition models.

This would be most used by Bedrock Marketplace creators who would want to see their models on Java.

Save Selection as CSV

Exports a Selection to a Comma-Seperated Value (CSV) format.

Save Clipboard as JSON Model

To export to a JSON model, an object is required in your Clipboard to use as the model.

Saving will reformat the Clipboard into JSON suitable to be used as a custom model. Non-exposed faces are culled for optimization.

Now, you can apply the model using the 'custommodeldata' tag in a resource pack.

The scale is determined by the largest local coordinate. For example, if the clipboard scale is 10 x 20 x 10, the model scale will be 20.

When the resource pack is enabled, axiom will detect these custom models as a Display Entity.

Edit

FunctionDefault ShortcutDescription
UndoCtrl+ZReverses the most recent action
RedoCtrl+YReverses the most recent undo
CutCtrl+XRemoves the selection and stores it in the clipboard
CopyCtrl+CCopies the selected item to the Clipboard
Save BlueprintCtrl+PSaves the clipboard as a Blueprint for later use

Select

The Select submenu lets users perform a variety of functions to modify Selections.

FunctionDescription
ClearClears the current selection
ExpandExpands the current selection by a specified number of blocks
ShrinkShrinks the current selection by a specified number of blocks
DistortDistorts the current selection with simplex noise by a specified radius and distance. Radius is the scale of the noise and the distance is the amount it gets distorted by.
SmoothApplies a Gaussian blur on the selection to smooth out the selection. StdDev is the intensity of the smoothing operation and the threshold is the 'cut-off' of how much input weight is needed to affect the output.
Bounding BoxCreates a cuboid selection around the furthest points of the selection, encapsulating the entire selection.

View

The View submenu lets you configure options related to viewing and rendering certain elements in the Editor Menu.

New View

Creates a new View located at the current position.

Show Selection

Toggles the rendering of Selections.

Show Biomes

Toggles the visualisation of biomes. Each biome is represented with its own colour.

Be aware that biomes in Minecraft are defined in a 4x4x4 grid. However, to make biomes feel more natural, vanilla warps the biomes visually. The biome overlay shows the "real" position of biomes, while biome blending and the f3 screen show the "warped" position of biomes.

The default shortcut for this view is Ctrl+B.

Show Key Presses

This shows your keyboard and mouse inputs in the bottom-right corner of the screen. This can be useful for making tutorials or debugging problems.

UI Scale

This slider ranges from 0.5 to 2. This lets you change the size of all graphical elements in the editor mode.

Min Brightness

The 'Min Brightness' slider ranges from 0 to 1. This lets you change how dark unlit places look in your world. A value of 1 means all blocks are fully lit, this functions similar to night vision.

Fluid Opacity

The 'Fluid Opacity' slider ranges from 0 to 1. This lets you change the opacity of water to alter its visibility. A value of 0 will result in water being invisible.

Lava and modded fluids are not affected due to performance concerns.

Operations

The Operations submenu contains various useful 'operations' to modify blocks within Selections.

IMPORTANT: Operations only affect Selections.

Fill

The 'Fill' operation fills the selected area of blocks with a specified block. A small Window will open, allowing you to choose which block by clicking the block icon. This will open the 'Select Block' Window.

The default keybind for this operation is Ctrl+F.

Fill Nearest

The 'Fill Nearest' operation doesn't use a specified block. Rather, it uses the nearest block that isn't air for each block within the selection.

Replace

The 'Replace' operation is similar to 'Fill'. However, instead of filling every block in the selection, you can replace a specific block with another.

The default keybind for this operation is Ctrl+R. Note that this shortcut is overridden when a Placement is active.

Set Biome

The 'Set Biome' Operation sets the biome within the selection with a specified biome.

Autoshade

The 'Autoshade' operation shades your selection using a sun angle, either at the player position or at a set value. Different blocks can be set for the appropriate shading.

The Autoshade Window has many options to control how blocks are lit.

OptionDescription
SunWhen enabled, lighting is used to shade blocks. When disabled, blocks are shaded with Ambient Occlusion.
FromThe 'From' drop-down controls how the selection is lit. The different lighting modes include: Player Position, Custom Positions and Sun Angle. When the Player Position is selected, the light source is centred to the player position. With Custom Positions, you can set multiple fixed light sources. Pressing 'Add Position' will add a new light source at your current position. Each source is marked with a yellow 'sun' and the intensity can be changed to alter how bright the light source is. The Sun Angle creates a 'sun' light source at a set angle. This is similar to a 'spot' light source, however, sun light sources affect everything at the same angle.
Ambient OcclusionAmbient Occlusion determines how exposed the block is to the light source. The less exposed a block is, the darker it'll be shaded.
Global IlluminationGlobal Illumination is the effect of light 'bouncing' off multiple objects. Increasing this slider will result in more 'bounces'.
DitherAdds a blending effect to reduce the sharp texture changes.
Palette OptionsThe 'Palette Options' section is used to determine what blocks are used when shading. When the 'Type' drop-down is set to Automatic, blocks will be chosen depending on the surface. You will be provided with a set of toggles to filder out blocks you don't want. When the 'Type' drop-down is set to Custom, You'll be able to input your own blocks. The list is ordered from dark to light and you can influence the amount of a specific block by using the slider adjacent to the block icon.

You can save and load Presets for the Autoshade operation in the 'Presets' section.

To confirm the Autoshade, press the 'Autoshade' button at the bottom of the window.

Drain

Removes all water in your selection. This operation also removes the 'waterlogged' property from blocks.

Waterlog

Replaces all air blocks with water and replaces all water-loggable blocks with their waterlogged variant.

Smoothsnow

Adds a layer of snow between one and eight layers above existing terrain. No blocks are replaced as existing terrain is prioritised.

The operation attempts to generate snow as smooth as possible.

Simulate Gravity

The 'Simulate Gravity' operation processes simulates the effect of gravity to all blocks, regardless of whether they normally float or not.

Trigger Updates

The 'Trigger Updates' operation removes any blocks that are incorrectly positioned.

For example, a floating sign within the selection will be removed.

Hollow

Fills the inside of the selected object with air, leaving the a shell of the original object.

The 'Hollow' operation also considers transparent/non-solid blocks so having an exterior that includes glass will be accounted for.

Fill Gaps

The 'Fill Gaps' does the opposite of the 'Hollow' operation, empty space within an object is filled with your active block.

Again, transparent and non-solid blocks are considered.

Generate Colour Field

The 'Generate Colour Field' operation Generates a colour field using the CIELAB colour space within a selection.

A colour field (colour space) is a way to organise colours. CIELAB was chosen as it utilises XYZ coordinates to represent LAB. LAB represents three components of the colour space:

L - (Lightness)

  • Brightness is mapped to positive X
  • Darkness is mapped to negative X

A - (Red/Green)

  • Red is mapped to positive Y
  • Green is mapped to negative Y

B - (Yellow/Blue)

  • Yellow is mapped to positive Z
  • Blue is mapped to negative Z

All blocks within the colour field used are full, non-transparent blocks to reduce overlapping.

If two blocks are similar enough, Axiom will attempt to place them in the same position. However, Axiom prevents this by offsetting blocks until there is no overlap. This means there's little chance for blocks to be excluded.

Analyze

Displays each block type within a selection ordered by the count of each block. A total for both the count and distribution is shown in the last row.

Animated Rebuild

The 'Animated Rebuild' option allows for creating cinematics of a build being built block-by-block.

IMPORTANT: Animated Rebuild should be used with caution, as it may permanently break your structure.

Below are all settings in the Animated Rebuild window. All settings for refer to the delay between block placement.

Delay SettingDescription
Start DelayThe time until the first block is placed.1
Max DelayDetermines the maximum delay for all delays.
Air Block DelayThe time it takes to place an air block within your selection.
Same Block DelayThe time taken to place the same adjacent block (excluding air).
Different Block DelayThe time it takes to place different adjacent blocks.
Random Extra DelayA random delay added to each block delay. The extra delay is randomised for each block placed.
Horizontal MultiplierMuliplies the delay with the provided value for all blocks placed with an offset on the Y axis.
Vertical MultiplierMuliplies the delay with the provided value for all blocks placed with an offset on the X or Z axis.

By default, the starting point for the Animated Rebuild operation is located at the centre of the selection. To Change this, place a structure block at the position you'd like the rebuild to start. You can place multiple structure blocks to have more than one starting point.

Pressing 'Do Animated Rebuild' will start the animation. To cancel mid-animation, press Ctrl+Z to revert to the original structure.

Notes

1

For versions 3.1.0 and below, a bug caused 'Start Delay' to be measured in ticks rather than seconds.

Windows

Windows are the main part of the Editor Mode. Allowing for any layout, Windows are extremely versatile and customisable.

All Windows are built around the main view as it's the only window that cannot be removed.

Opening New Windows

To open a closed window, use the Main Menu Bar and find the Windows category. In there, you will find a list of each Window and its toggle.

When enabling a window, it will appear in the centre of the screen as slightly transparent. This is due to the window being undocked.

Window Layouts

Windows can be laid out in multiple ways on the screen. To adjust a window's position, simply drag the topmost part of the window and drag it to where you would like it to be.

Tip: Undocked windows can be minimised by clicking the triangle next to the window title.

Docking

To dock a window, drag the window and hover it over one of the eight blue shapes that appear. You can either dock using pre-existing windows or add a new position.

To undock a window, drag it by the title and it will undock.

Other Windows

Themes

Themes can be used to further customise the Editor UI with custom colours. To edit the current theme, click Style Editor under Help in the Main Menu Bar. Themes can be imported and exported from the clipboard.

Select Block

The select block window is essentially the creative inventory for the Editor Mode. You can either search by block name or block ID.

Clipboard and Placements

Clipboard

A selection can be copied to the clipboard using Ctrl+C.

With blocks in your clipboard, you can paste back into the world by hovering over the desired location using your cursor position and pressing Ctrl+V. Pasting like this will initiate a Placement.

The clipboard can be cleared by right-clicking the icon and choosing the 'clear' option.

Rotation and Scaling

While the placement is initiated and the Gizmo is visible, some options will appear on your View window1.

Tip: Left-clicking the 'Empty' clipboard icon opens up the Blueprint Browser.

Tip: You can set the Cut function save to the clipboard in the Keybinds Menu.

Notes

1

For versions 3.0.0 and below, the options will appear inside the clipboard window.

Views

Views are a system for keeping track of multiple named locations in your world, giving you the ability to swap between locations (even across dimensions) easily.

A new view can be created in the View submenu or by clicking on the ‘+’ button next to the ‘Main’ view above the game window in the Axiom Editor UI.

Views will keep track of your last position and teleport you back to that location when you switch back to the view. If you want to make sure the view stays at the correct location, you can turn on Pin World and Pin Location options. Pinning the location will make it so that you always teleport back to the pinned spot when you switch to the view.

Tip: If a location is pinned, you can teleport to the pinned location simply by clicking the view tab again, even if the tab is already selected

Blueprints

Blueprints are a system for saving and loading prefabricated assets. They are similar to schematics, but with a different structure optimized for searching and viewing.

Creating a Blueprint

A Blueprint can be created by having content in your clipboard and pressing Ctrl+P. This brings up the Create Blueprint menu. In here you can do a few things, you can name your blueprint, add authors, tags and rotate your blueprint to generate a thumbnail to easily recognize it later.

Authors, tags and names are all ways by which you can easily look up blueprints later. For example by searching the tag ‘tree’ or ‘structure’ you can find all blueprints that include that tag. There are a couple dozen default tags that Axiom ships with in order to cover a wide array of possible blueprints but if those don’t quite cover your needs you can always create your own tag by clicking the ‘+’, entering the name and clicking the ‘Create Tag’ button inside the ‘Add Tag’ menu.

When you save a blueprint a file system dialog opens up native to your operating system. This confirms the name you want to give to the blueprint and lets to save it as a .bp file on your local computer. This means that you can easily create blueprints in one world or server and then use them in another world without having to deal with messy import or export schemas. The files themselves are stored in your .minecraft folder under .minecraft/config/axiom/blueprints

Tip: Use tab to navigate the create blueprint window faster.

Sharing Blueprints

The blueprint files themselves can be sent to others who can then also use them in Axiom if they place the files in the designated file location. The blueprint folder supports nested directories as well, meaning that you can for example, put all your trees in one folder under the blueprints folder.

Blueprint Browser

Once you have blueprints, you can view them in the Blueprint Browser.

You can open the Blueprint Browser by clicking on the big button in the Clipboard window, or by using Main Menu Bar > Windows > Blueprint Browser

You'll be able to see thumbnails for all of your blueprints, as well as perform searches or filter by tags. Clicking a blueprint will 'open' it load into your clipboard.

Tip: You can go back and refresh by clicking the appropriate button next to the seach box.

Multiplayer

On multiplayer, blueprints can be saved to and downloaded from the server rather than saving to your device. This means everyone on the server can use your saved blueprint.

Active Block

Some tools use the block specified in the Active Block window. This includes most of the painting and drawing tools.

Blocks in the Editor UI can be drag-dropped on different locations to various effects:

  • Into other UI elements (eg. tool mask) to quickly copy the block over
  • Into the main viewport to fill the targeted selection (similar to Ctrl+F)
  • Into the main viewport to flood replace the targeted block with the dropped block

The Active Block can be quickly set using 'pick block', which is bound to middle-click by default.

Tip: You can use middle-click to copy blocks from the world to your active block

History

The History window shows you an overview of how many and what operations you just performed. It serves as a visual aid to assist in performing undo (Ctrl+Z) and redo (Ctrl+Y) operations.

Tip: You can left-click history elements to rewind to that point, or right-click to point your camera towards the center of the edit.

Tool Masks

Tool Masks empower users to set up rules for tools, applying their effects only when certain conditions are met. Leveraging boolean logic, Tool Masks allow users to specify block conditions across a variety of scenarios, such as affecting only blocks with air above them or a particular type of block beneath. These rule configurations, known as 'Rule Blocks', can be easily arranged in the tool menu via a drag-and-drop interface, providing a user-friendly alternative to scripting languages. The configuration of your mask is displayed as a string at the top of the menu for easy copying, sharing, and saving. The mask logic generates a boolean output, signifying either 'true' or 'false'.

The conditions fall into two main categories: Logic and Masks.

Logic conditions

Combining these logic conditions allows for a broad range of expressions in masks, enabling you to select almost all blocks meeting specific criteria.

LogicDescription
ORThe OR condition enables any rules within this block to take effect. For example, when selecting multiple blocks to mask, select blocks that match grass_block OR stone.
ANDThe AND condition requires all rules within this block to apply. For instance, if you want to select a block that has air above and dirt below it. However, conflicting rules won't function in the same ANY block, meaning you can't have two block = masks or two above = masks simultaneously. But, it's possible to nest another AND block inside.
NOTThe NOT condition reverses the rule outcomes, making them true only when the original conditions are not met. For example, setting the rule above = air within a NOT block selects all blocks that do not have air above them.
OFFSETThe OFFSET condition allows coordinate input to apply a mask for a nearby block relative to the current block. For example, using offset(0,-1,0){ surface } will mask block 1 block above the surface.

Masks

Masks are conditions that depend on the target's state or the surrounding blocks' state.

MaskDescription
BlockThe Block mask returns true when the target matches the specified block or block state.
AboveThe Above condition is true when the block directly above the target block matches the specified block or block state.
BelowThe Below condition is true when the block directly below the target block matches the specified block or block state.
NearThe Near condition is true when any of the blocks in the set radius surrounding the target match the specified block or block state.
NeighbourThe Neighbor condition returns true when any of the six blocks directly adjacent (up, down, north, south, east, west) to the target match the specified block or block state which allows the mask to check the immediate vicinity of the target block.
AdjacentThe Adjacent condition returns true when any of the four horizontally touching blocks match the specified block or block state.
YThe Y mask returns true when the target aligns with the given condition relating to the block's Y coordinate level. There are several conditions for the Y mask which can be modified by clicking on the = sign.
AngleThe Angle mask utilises two inputs. The Angle input is used to mask a specific angle and the Range input is how many angles are used originating from the Angle input. For example, an angle of 90 and a range of 10 would cover all angles from 80 to 100.
In SelectionThe In Selection condition returns true when the target block is within the user-defined selection area.
Can See SkyThe Can See Sky condition returns true if the target block has direct access to the sky.
SurfaceThe Surface mask returns true if the block is adjacent to air or liquids.

Scripting

Similar to the Script Brush, the mask scripting allows users to input custom scripts using Lua. However, the rule of returning a boolean value still applies.

Custom Variables

VariablesDescriptionExample
x,y,zThese three variables represent the XYZ coordinates.if y==5
blocksCan be used to retrieve the blockstate1 ID for a block.blocks.stone

Custom Functions

Functions
DescriptionExample
getBlock(x,y,z)Returns the block ID at the given position (x,y,z).if getBlock(x,y,z)==blocks.stone
getBlockState(x,y,z)Returns the blockstate1 ID at a given position.if getBlockstate(x,y,z)==withBlockProperty(blocks.chain,"axis=x")
getHighestBlockYAt(x,z)Returns the Y value of the highest block on the XZ coordinates.if getHighestBlockYAt(x,z)==20
getSimplexNoise(x,y,z,"seed")Returns a value between 0 and 1, representing the Simplex noise for the provided coordinates.if getSimplexNoise(x,y,z,42)=>0.5
getVoroniEdgeNoise(x,y,z,"seed")Returns a value between 0 and 1, representing the Voroni Edge noise for the provided coordinates.if getVoroniEdgeNoise(x,y,z,01134)=>0.5
isSolid(block)Returns true if the block is solid, false if not.if isSolid(getBlock(x,y,z))
isBlockTagged(block,"tag")Returns true if the block has the provided tag, false if not.if isBlockTagged(getBlock(x,y,z),"wooden_fences")
withBlockProperty(block,"property=value")Used to return or set a block with a block property.withBlockProperty(blocks.oak_slab,"waterlogged=true")
getBlockProperty(block,"property")Returns the value of the provided block property.if getBlockProperty(blocks.oak_slab,"waterlogged")==true
setBlock(x,y,z,block)Set an additional block at a given position.setBlock(x,y,z,blocks.stone)

Video Demo

Target Info

The Target Info window shows information of the block targeted by your mouse in the Editor UI.

The window contains:

  • The block you’re hovering over.
  • The position of that block in the world.
  • The biome at that position.
  • The distance from your camera to that position.

World Properties

The World Properties window lets you change certain properties and vanilla behavior about the world. This is freely accessed in single player worlds but permissions need to be granted on multiplayer due to the significant impact that these might have for those sharing a world with others. See below for the various world properties you can adjust.

Time

The Time submenu lets you change things about the time in the world. You can freeze the time in the world, use the slider for a specific time or use a preconfigured time by pressing the designated buttons.

Player

The Player submenu lets you adjust properties relating to the player entity:

  • Player Invulnerability Toggles the Invulnerability Command.
  • Trample Farmland Disabling this property prevents farmland from being trampled.
  • Mob Spawning This property corresponds to the vanilla "doMobSpawning" gamerule.

Blocks

The Blocks submenu lets you adjust properties relating to blocks in the world

  • Block Drops Disabling this property will prevent all drops from blocks, including items when breaking inventory blocks like chests.
  • Block Gravity Disabling this property will prevent gravity-affected blocks like sand and gravel from falling.
  • Fire Tick This property corresponds to the vanilla "doFireTick" gamerule.
  • Random Tick Speed is a slider which corresponds to the vanilla "randomTickSpeed" gamerule. Setting this to 0 will disable random ticking.

Palette

The palette window is very useful for saving blocks in groups to be used in the future.

The top part of the window shows the 16 previously used blocks. Clicking on one of these blocks will set it as your Active Block.

Creating Presets

The lower part is used to display your saved palettes. Right clicking on this lower half and pressing "Add new category" will present a window to name your new palette category.

After naming your palette, a dropdown with your title with a stone block inside will appear. With the drop-down open, right clicking the stone block will display an option to add a new block or remove that block.

Right clicking on the dropdown when closed will display some options related to the category. Through this you can add to, rename or delete the category.

You can also add to the category by dragging and dropping blocks from the Recently Used blocks.

Using Presets in Other Tools

Tools that paint more than one block type like the Noise Painter support dragging and dropping presets into them.

Tip: Dragging and dropping palettes on a block or selection will replace it with random blocks from the palette.

Tool Options

The Tool Options Window is used for Tools to change their properties. Tool properties are essential for using the Editor Mode.

This window contains sections for each type of option as well as Tool Presets.

Common Options

OptionDescription
ShapeDetermines the shape of your brush.
RadiusDetermines the size of your brush.
Mask SurfaceEnsures the tool only affects solid blocks adjacent to a non-solid block.
Replace Solid BlocksEnsures the tool only replaces solid blocks.
Extend to GroundEnsures the final placement is connected to the ground by stretching each block down until it collides with a solid block.

Tools

Axiom presents a rich set of tools for real-time, precise manipulation of your Minecraft world. These tools are readily accessible in the top layer of the 'Tool' window. Additionally, the 'Tool Options' window offers further configuration possibilities. Each tool comes with its unique settings that can dramatically change its functionality and impact. We encourage exploration and experimentation as it can lead to unanticipated yet fascinating or beneficial applications of these tools.

Note: By ctrl clicking on a slider, you can manually input a value that exceeds the default parameter limits. Use this feature with caution.

Brushes

Most tools used to manipulate the world use a format known as ‘brushes’. Brushes let the user click and drag in the world with a predefined shape in order to gather blocks to include in the brush’s path. You can select the shape of the brush in the dropdown menu. The default shape is a sphere.

You can choose from a sphere, a cube or an octahedron.

Selection Tools

This section covers selection tools and their options. An option that is generic to all selection tools a concept known as boolean operations. The default option is ‘add’

Boolean OperationDescription
AddAdds the selected area to the current selection
SubtractSubtracts the selected area from the current selection
ReplaceReplaces the current selection with the selected area
IntersectSelects only the area that overlaps with the current selection

Note: At very large scales non-cuboid selections become less performant due to the complexity in keeping track of the entire region. If you need to perform an operation on a very large area it is recommended to use a cuboid selection and encompass the entire build.

Magic Select

The Magic Select tool is a powerful selection tool which improves the building process immensely if used correctly. With a single click on a block type, the Magic Selection tool swiftly selects all adjacent blocks of the same type, streamlining the selection process.

The tool features the following options: The Compare option mode lets you select the types of blocks that it can select adjacent to the original block. The default mode is ‘Block’

Compare TypeDescription
BlockAll blocks of the same type including all blockstates.
BlockStateAll blocks of the exact same blockstate as the target block.
SolidAny block that you cannot pass through. For example stone, glass panes, etc. Not flowers, water, etc.
AnyAll blocks directly adjacent including non solid blocks except for air. This causes it to ‘stop’ once it reaches air.

The Limit option is a slider which can be configured to set how many blocks it should select in total. The magic select algorithm works by expanding outwards from the centre block to form an octahedron. Increasing the limit simply lets you select more blocks. The default limit is set to 100,000 blocks but can be set to any arbitrary limit.

The Range option is a slider which lets you set how far the algorithm should look for any adjacent blocks. This lets the tool ‘jump the gap’ between two blocks. The range simply represents how far it can look before cutting off. For example a bushy tree might have two or more blocks of air between it’s leaves and logs. This lets you select all the leaves that are on the tree regardless of the fact that there are air blocks between two branches with leaves.

The Surface Only option is a toggle which makes the tool only select the blocks on the surface of the selection or, equivalently, all blocks adjacent to air or the ‘outside’.

Tip: You can drag-click across multiple block types to select more than one block type.

Box Select

The Box Select tool allows you to create cuboid selections. To start, click and drag between two points. The selection can be further refined by repositioning the 3 Gizmos.

If you want to select between two known coordinates instead, these coordinates can be entered into the tool's options.

Freehand Select

The Freehand Select tool allows you select spheres, cuboids and octahedrons with a brush stroke. It's rather basic, but it can be helpful to select strange parts of a build that might be difficult to select otherwise.

Lasso Select

The lasso select is very unique, it allows the user to draw out a shape on screen to determine the selection.

To draw the selection, use right-click and draw out the looped shape. After releasing right-click, the drawn outline will be cast to the blocks within your view. You can set the depth of the selection by adjusting the Depth slider.

Enabling the 'Include Non-Solid' will allow the selection to include blocks such as short grass.

Utility Tools

Utility tools assist builders for measuring and scaling builds appropriately.

Ruler Tool

The Ruler Tool is designed to measure the distance between two or more points in a world. You can add points to the world by right-clicking. Once you have selected two or more points, a line appears between the most recent point and the one before it. The rounded Euclidean distance, or straight line distance, is shown in the centre of this line. You can keep adding more points as needed.

When you check the tool options, you'll find more information about these points. What's shown depends on whether you've chosen two or more points.

Here's the information you'll see:

  • Total Length (Euclidean): This is the straight-line distance from the first point to the last one, as if a bird flew directly there, not caring about the blocks in between.
  • Total Length (Manhattan): This is the sum of the horizontal, vertical, and depth distances. In Minecraft terms, it's like how a player would travel: one block up, down, left, right, forward, or backward at a time.
  • Minimum: The coordinates of the earliest point in the sequence of points.
  • Maximum: The coordinates of the latest point in the sequence of points.
  • Bounding Size: The size of the box needed to draw around all the points.
  • Yaw (Only visible with two points): The yaw of the line between two points.
  • Pitch (Only visible with two points): The pitch of the line between two points.

Tip: Ruler measurements are permanantely visible even outside the editor, so make sure to remove them once you're done.

Painting Tools

Painting tools enable you to 'paint' over blocks, i.e., replace existing blocks in the world based on the chosen tool, rather than adding new ones. Axiom offers a range of painting tools, each with unique configurations for fine-tuned block editing.

Painter

The Painter is the most basic painting tool. It allows you to paint blocks with a single type using a brush stroke.

The Mask Surface option allows only painting blocks which are adjacent to a non-solid block.

The Copy Properties option appears when the Active Block has a block that has more than one variant. This could include stairs or slabs. When enabled, it replacing existing slabs, stairs, etc to the active block. This is similar to the Type Replace found in the Replace Capability.

The Mode drop-down allows switching between Active Block, Clipboard and Gradient. The active block mode paints with your active block. The clipboard mode paints using your clipboard in a repeating grid pattern. The gradient mode is similar to The Gradient Painter but instead paints the gradient around the centre of the brush. The merge strokes option for the gradient mode stops the painter from overriding blocks that are in the gradient.

Noise Painter

The Noise Painter is a very versatile painting tool which enables the user to use procedural noises for painting in the world. There is a large variety of noises which can be picked from and configured. Each of which having unique options and patterns useful in different scenarios.

The first unique option is the toggle for the ‘3D’ setting. This allows the noise to be calculated in 3D, allowing for the painting of the sides of surfaces instead of just the top.

Next, we have the scale option, which adjusts the size of the noise relative to the block grid. A larger scale means that the noise pattern is spread over a larger area of blocks.

Finally, the Anisotropic option enables control of scale on each axis individually, allowing for a stretched effect.

Noises

There are a few shared settings across the different noises. The common options between these noises are listed below, with specific settings for each noise described in their respective sections.

  • Octaves: This setting determines the number of layers of noise that are used. More octaves result in more detail and complexity but comes with a higher computational cost. Lacunarity and Gain can only be configured when you have more than one octave for your noise.
  • Lacunarity: This influences the ‘frequency’ of each octave. A higher value increases the frequency, leading to smaller features in the noise pattern.
  • Gain: This controls the amplitude of each octave. A higher value will increase the influence of each successive octave. A lower value will make effect of the octavation more subtle.
  • Seed: The seed value is used to initialize the noise generation algorithm, providing a starting point. Different seeds produce different noise patterns, but the same seed will always produce the same pattern. Keeping the same seed is useful for when you want to continue a pattern rather than starting a new one.
  • Jitter: This value controls how uniform the cellular noise appears by limiting how much the seed points can move off their starting grid arrangement.
    A value of 0.0 will return a perfectly uniform grid pattern, 1.0 returns a minimally uniform pattern.
    Applicable only to the cellular noise types Voronoi Edges, Worley, and Metaballs.

Simplex

Simplex noise generates a smooth, continuous pattern that often resembles a hilly or wavy terrain when visualized.

Simplex noise is an improved version of Perlin noise.

Worley

Worley noise, also known as cellular noise, creates a pattern that looks like irregular cells or Voronoi diagrams, with each 'cell' having a distinct point of intensity and fading out towards its borders.

  • W1: This is the weight of the distance of the closest voronoi point.
  • W2: This is the weight of the distance of the second closest voronoi point.
  • W3: This is the weight of the distance of the third closest voronoi point.

The interplay between W1, W2, and W3 values significantly affects the Worley noise outcome. For example, if W1 is high and W2 and W3 are low, the pattern will have clearly defined, irregular cells. But if W1, W2, and W3 are all high, the pattern will be more complex and interconnected, as it's influenced by multiple nearby points.

Voronoi Edges

This type of noise specifically accentuates the edges or boundaries between the cells formed in Voronoi diagrams, resulting in a grid of interconnected lines or a 'cracked' appearance. This is useful for making things like cracks, stone tiles, etc.

Metaball

Metaball noise creates a pattern that looks like overlapping blobs or spheres, with smooth transitions between these 'blobs'. Similar to the patterns of blobs in lava lamps.

  • Range: Adjusts the radius around each point that influences the noise. A larger range results in larger, more spread-out blobs, resembling a pattern more reminiscent of the aforementioned lava lamp blobs.

White Noise

White noise generates a completely random pattern with no discernible structure, looking like static on an old television screen.

Blocks

The section beneath the noise configuration allows you to specify the blocks used in painting, as well as determine their distribution within the noise pattern. You can adjust the block distribution by setting a threshold between 0 to 1 or specifying a per-block percentage from 0 to 100%. The threshold setting is particularly useful when you're tweaking parameters for complex noises like Worley.

Clicking the '+' sign adds a new block. Clicking on an existing block allows you to select and add different blocks to your noise pattern. You can also drag and drop palettes and active blocks onto the blocks section.

To modify the property of a block, right-click on the block icon and a menu will appear, allowing you to toggle and set different properties.

When one or more blocks with multiple properties is used, a Copy Properties button will appear at the bottom of the block list. This will paint over existing blocks with the same block state, while keeping the noise pattern.

Preview

Lastly, beneath the settings, there are three windows to aid in visualizing the noise pattern, cumulative distribution, and probability density:

  • Noise Preview: As the name suggests, this provides an approximation of how the current noise settings would look, mapped to the voxel grid. It uses a gray-scale representation to depict block presence, with white denoting the primary block and the color darkening as more blocks are added. Black signifies no blocks.
  • Cumulative Distribution and Probability Density Visualizers: These tools are especially useful when you've set the Blocks mode to be threshold-based. They help illustrate how the blocks will be distributed within the noise pattern. The Cumulative Distribution Visualizer provides a graph showing the cumulative percentages of different blocks as the noise threshold increases from 0 to 1. The Probability Density Visualizer gives a sense of how likely each block is to appear at a given noise value. It can help you understand and fine-tune the balance of blocks in your noise pattern.

Biome Painter

The Biome Painter is similar to the Painter tool, except it paints biomes instead of blocks. Biomes in Minecraft are represented by a 4x4x4 cell of blocks stopping at world height. Though biomes are stored in cells, they are altered in the rendering to make their shape irregular.

You can select any biome from the dropdown, including modded biomes sent to the client.

The Fill Vertically option fills the entire span of the world height when enabled, allowing users to quickly paint the entire column.

The Visualize Biome toggle is on by default and shows the 'real' position of biomes in the 4x4x4 grid.

Clentaminator

This tool is only available for versions 2.8.1 and below, the new Script Brush tool contains most of the following features under the Presets drop-down.

The Clentaminator is a set of predefined painting tools that typically have complex set of predefined placement rules which don’t fall under other cateogories. Due to this they often use advanced algorithms to produce interesting patterns but are more specific in which cases they can be used.

The clentaminator lets you configure the brush to define the stroke path, just like other tools. Other than that it has two other options which can be toggled and configured. Terrain and Decorations. They can be mixed and matched to provide a wide range of customization.

Terrain

These clentaminator presets affect solid blocks in your brush stroke

Stone

The Stone Terrain preset is a very simple terrain tool, just setting the base to only stone.

Grass

The Grass Terrain preset naturalizes the terrain by making the top layer grass blocks followed by 3-4 layers of dirt and any terrain below that being set to stone.

Sand

The Sand Terrain preset makes a desert terrain by making the top 4-5 layers sand and blocks below that being set to sandstone.

Dirt Ground

The Dirt Ground Terrain preset uses a wave function collapse algorithm to make a pattern of dirt with mixed in blotches of dry mud and coarse dirt to make a quick and easy floor for things such as forest floors, paths, etc.

Gravel Ground

The Gravel Ground terrain preset uses a wave function collapse algorithm to make a pattern of stone mixed in with blotches of gravel and cobblestone to make a quick and easy rough rocky pattern, useful for mountain gravel slides, paths, etc.

Fertile Ocean Floor

The Fertile Ocean Floor terrain preset uses a mix of layered voronoi as well as cellular noise patterns in order to create a varied look of an ocean, swamp or riverbed floor in ‘fertile’ water areas such as mangroves near oceans, swamps, river deltas/mouths, etc.

Decorations

These clentaminator presets affect non-solid blocks, often intended to be placed on top of existing terrain to help enhance the aesthetics.

Clear

The Clear decoration preset isn’t a ‘nothing’ brush, instead it can be used to clear other decorations found in the natural generation or placed by other clentaminator presets. Useful to create something like a clearing in a forest for example.

Grass

The Grass decoration preset uses a perlin noise to randomly disperse dense plots of grass in a pleasing pattern in order to quickly decorate a plains biome, edges next to paths, etc. When selecting the grass decoration preset two new sub-settings appear:

  • A grassiness slider ranging from 0-1 (uncapped but going above 1 has no effect) to denote how ‘grassy’ an area should be. The closer to 1 the more grass there is.
  • An ‘Allow Tall Grass’ toggle which lets the perlin noise’s most dense areas use tall grass. This creates the appearance that grass gets more dense the further in you go which can be useful for more wild areas.

Script Brush

The Script Brush is a very unique tool, the scripting functionality mixed with useful functions can lead to near-unlimited possibilities. The use of clever logic can lead to things like simple texture generators all the way to structural generators.

Although intimidating at first, once you understand the basic concept of programming and have read this documentation, you'll be ready to make your own scripts!

Key Points

  • The Script Brush is a powerful, yet advanced tool so some knowledge of programming languages similar to Python is recommended.

  • The Script Brush is similar to Mask Scripting.

  • An IDE1 window is used to input your code. It uses a similar language to Python called Lua2.

  • Lua doesn't require line indentation like most languages but Axiom provides a tabbing feature to indent.

  • There is only one built-in library3 and there are currently no others.

The Script must use return blocks.stone or use setBlock(x,y,z,blocks.stone) to modify blocks in the world.

There are many predefined variables and functions that can be used throughout the script to interact with the world. Listed below, are all variables and functions with descriptions and examples.

Custom Variables

VariablesDescriptionExample
x,y,zThese three variables represent the XYZ coordinates.if y==5
blocksCan be used to retrieve the Blockstate ID for a block.blocks.stone

Custom Functions

FunctionsDescriptionExample
getBlock(x,y,z)Returns the Blockstate ID at the given position (x,y,z).getBlock(x,y,z)==blocks.stone
getBlockState(x,y,z)Returns the Blockstate ID property at a given position.getBlockstate(x,y,z)==withBlockProperty(blocks.chain,"axis=x")
getHighestBlockYAt(x,z)Returns the Y value of the highest solid block on the X and Z coordinates.getHighestBlockYAt(x,z)==20
getSimplexNoise(x,y,z,seed)Returns a value between 0 and 1, representing the Simplex noise for the provided coordinates.getSimplexNoise(x,y,z,42)=>0.5
getVoroniEdgeNoise(x,y,z,seed)Returns a value between 0 and 1, representing the Voroni Edge noise for the provided coordinates.getVoroniEdgeNoise(x,y,z,01134)=>0.5
isSolid(Blockstate ID)Returns true if the Blockstate ID is solid, false if not.isSolid(getBlock(x,y,z))
isBlockTagged(Blockstate ID,"tag")Returns true if the Blockstate ID has the provided tag, false if not.isBlockTagged(getBlock(x,y,z),"wooden_fences")
withBlockProperty(Blockstate ID,"property=value")Used to return or set a Blockstate ID with a Blockstate ID property.withBlockProperty(blocks.oak_slab,"waterlogged=true")
getBlockProperty(Blockstate ID,"property")Returns the value of the provided Blockstate ID property.getBlockProperty(blocks.oak_slab,"waterlogged")==true
setBlock(x,y,z,Blockstate ID)Set an additional Blockstate ID at a given position.setBlock(x,y,z,blocks.stone)

Blockstate IDs with and without properties can be used in all functions which use a Blockstate ID

Template Variables

Template Variables are not shown in the help text. Template Variables are used to visually display tool settings, removing the need to edit values within the script itself. Most Template Variables Use a title, this is used to display the usage or function of the specific Template Variable. The default value is used to set the most appropriate value within the range. The min and max variables are used to set the ranges on sliders.

Template VariableDescriptionExample
$once$Runs the script once per click.$once$
$blockState(title,block)$Allows blocks to be input using GUI.$blockState(Block to Paint,stone)$
$int(title,default,min,max)$Creates a slider with whole values.$int(Randomness Multiplier,1,0,2)$
$float(title,default,min,max)$Creates a slider with decimal values.$float(Noise Threshold,0.5,0,1)$
$boolean(title,default(true/false))$Creates a toggle$boolean(Disable Randomness,true)$

Code Examples

These four code examples range from a novice user all the way to a professional in terms of difficulty. Each script provides a description and a breakdown of how the script works. Feel free to copy these and mess around with them.

Novice

This script below is very basic, it replaces oak leaves with birch leaves.

if getBlock(x,y,z)==blocks.oak_leaves then
	return blocks.birch_leaves
end
Novice Code Breakdown
The if check ensures that the current block is oak leaves. Using "getBlock(x,y,z)" targets the active block. 

Then "blocks.oak_leaves" is used to check if the block IDs match.

Finally, the script returns birch leaves, therefore replacing oak leaves.

Advanced

This script places pink petal flowers using simplex noise to control the block property.

multiplier=$float(Multiplier,1,0,2)$
noise=getSimplexNoise(x/8,y/8,z/8)

if getBlock(x,y,z)==blocks.air and isSolid(getBlock(x,y-1,z)) and noise<(0.75*multiplier) then
    return withBlockProperty(blocks.pink_petals,"flower_amount="..math.floor((getSimplexNoise(x/2,y/2,z/2,0)*4)))
end
Advanced Code Breakdown
Firstly, The multiplier and noise variables by utilising the float variable and the simplex noise function.

Then the script checks that the block is air and is above a solid surface while also checking if the noise is within range.

Finally, the block is placed using "withBlockProperty" to set the flower amount property. This uses a modified simplex noise that returns values between 0 and 4.

Expert

The script below generates kelp in water using a maximum height to control the length of kelp.

multiplier=$float(Multiplier,1,0.01,4)$
heightMax=$int(Maximum Height,25,1,50)$

noise=math.random()
length=math.floor(math.random(0,heightMax))

if noise<(multiplier*0.1) and isSolid(getBlock(x,y-length,z)) and getBlock(x,y,z)==blocks.water then
    for block = 0,length do
        if not isSolid(getBlock(x,y-block,z)) then
            setBlock(x,y-block,z,blocks.kelp_plant)
        end
    end
    return blocks.kelp
end
Expert Code Breakdown
Firstly, the script defines all the variables. 

As the script builds the kelp from top to bottom, it checks if the lowest attemptable block is solid.  

Then, for each solid block, the script places a kelp plant.

Once all kelp plant blocks are placed, the script then sets the active block to be the top piece of kelp. 

Professional

This final script creates a curved bowl shape using mathematical formulae. This is one of the most complex types of script brushes in Axiom.

$once$
scale = $int(Scale,30,10,50)$
flatness = $float(Bowl Flatness,0.8,0.1,2.5)$
tolerance = (scale*10)*flatness
block=$blockState(Block)$

function isTolerable(a, b, tol)
    return math.abs(a - b) <= tol
end

for DistX = -scale, scale do
    for DistY = -scale, scale do
        for DistZ = -scale, scale do
            local formulaL = DistX^2 + DistY^2 + (DistZ^1.5)*-(flatness*10)^2
            local formulaR = 0
            if isTolerable(formulaL, formulaR, tolerance) then
                setBlock(x + DistX, y + DistZ, z + DistY, block)
            end
        end
    end
end
Professional Code Breakdown
This script represents the following equation:
(X²+Y²+(Z¹.⁵)(-n)10^2)=0
Where n is the flatness variable. 

The script draws the 3D shape by using a loop for each axis.

Notes

1

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development.

2

Lua is a lightweight programming language designed for embedded use within applications.

3

The Math Library is the only built-in library in the Script Brush.

Gradient Painter

The Gradient Painter tools allows you to paint gradients using multiple blocks.

To use, click on pos1 and you will see a line appear. Click and drag to paint from pos2.

The Mask Surface option allows only painting blocks which are adjacent to a non-solid block.

Planar vs Spherical Gradients

You may select the type of gradient to be either spherical or planar.

Plane vs Sphere in gradient selection

As you can see, for the "Plane" option, the gradient goes from pos1 to pos2 in one direction. For the "Sphere" option, The gradient radiates from pos1 to pos2, with pos2 being the radius, and pos1 being the center(i.e. starting point)

Interpolation

You may select the type of interpolation to be used: Nearest, Linear, and Bezier. See the difference below:

In order from top to bottom: Nearest, Linear, Bezier.

Interpolation

Look up the curves to see how it is calculated specifically but in essence, nearest gives you hard boundaries between each block type. Linear gives a smooth transition as the name implies, and Bezier has a more rapid change in the center, and eases in/out. The effect is more apparent with larger gradients.

Locking

You may select between no locking, locking only pos1, and locking both pos1 and pos2.

No locking makes it so that the start and end points of the gradient change with every stroke

Locking only pos1 makes it so that the starting point of the gradient remains fixed even after you release the mouse button. However pos2 remains unfixed such that the length of the gradient can change freely.

Locking both pos1 and pos2 makes it so that the gradient's start and end points remains fixed, and you can use multiple strokes to cover the same area with the same effect.

To unlock the points select locking to "none".

Clamp to edge

If this option is enabled, the gradient will be applied in such a way that it doesn't extend beyond pos2.

Drawing Tools

Drawing tools are used to sculpt the world, adding or subtracting blocks in a way similar to the sculpting tools found in other 3D software. Each tool uses unique placement algorithms, allowing for varied effects. Axiom provides a wide array of these tools, each one equipped with specialized Tool Options for precise block editing.

Freehand Draw

The Freehand Draw tool is the most basic drawing tool and uses the Active Block to draw. In the Tool Options, you can set the brush radius and shape.

Sculpt Draw

The Sculpt Draw tool is a powerful sculpting tool to change shape your terrain and organics. It uses the direction the surface is facing (the surface normal1) to determine what the peak of the shape should be. Instead of utilizing the active block, the Sculpt Draw tool pulls out existing blocks from the surface. Various settings are available to finetune the tool's sculpting behavior:

  • Radius: Unlike other brush tools, the radius in the Sculpt Draw tool influences not only the size but also the shape of the sculpted form. Larger radii result in more spherical or ovoid forms, while smaller radii create parabolic shapes.
  • Strength: This setting determines the intensity of the sculpted shape. The strength slider, ranging exponentially from 0 to 5, can be overridden for higher values. Given the tool's surface-normal approach, different strengths can yield a wide variety of results. This makes it versatile for creating structures such as overhangs, spiky formations, or naturally eroded patterns that seamlessly integrate with existing structures.
  • Invert: This option toggles between adding to or subtracting from the surface, useful for carving out erosion paths or whittling down organic structures to create natural-looking strokes.
  • Mask Y: When enabled, this setting causes the tool to only add mass along the Y-axis. This results in a more gradual change rather than abrupt protrusions, making it ideal for shaping the top surfaces of structures in a natural manner.
  • Denoise: This option applies a denoising algorithm to smooth the shapes drawn by the Sculpt Draw tool. Generally, it's recommended to keep this setting on to enhance the tool's natural look. However, if you desire a rougher, rockier surface, you can disable this option.
1

The surface normal is a concept from geometry. In simple terms, it's the direction that a particular surface is facing. For example, if you were standing on flat ground in the real world, the surface normal would be straight up. If you were standing on a slope, the surface normal would point out at an angle.

Rock

The Rock tool is a noise-based sculpting tool useful for making rock-like terrain and shapes. It can be used for both individual rocks and boulders as well as making surfaces look more rocky and rough. It uses several parameters that change how rocks form in general as well as in relation to the surface they’re placed on. It uses the active block to determine the palette. Various settings are available to finetune the tool’s sculpting behavior:

Noise Settings

The noise settings lets the user configure how random and rough the rocks created by the sculpting tool should be. There are several settings that can be adjusted to change the noise’s behavior.

The noise radius is a setting that determines the 'scale' of the noise-induced modifications. A larger noise radius implies a broader impact zone, affecting more blocks, which in turn forms bigger, blob-like configurations that are typically more rounded and smoothed out due to the wider distribution of changes. On the other hand, a smaller noise radius, which affects fewer blocks, will result in more refined and jagged alterations, constrained by the voxel grid size.

The ‘Noisiness’ slider affects how ‘noisy’ or random the sculpted blocks will be. A higher level of noisiness yield more random and blobby looking rocks. A lower level of noisiness yields more smooth spherical rocks. Combined with the noise radius and other factors this can impact how rough the rocks’s final appearance will be.

The Noise Field Seed lets you enter a seed should you want to continue a pattern that you previously used or reuse after playing with parameters, by default it is randomized on every stroke.

Smoothing Settings

The smoothing settings affect how much the rocks produced by the previous settings get smoothed out in order to create a more coherent and unified looking rock shape rather than being floating blobs.

The Smoothing Standard Deviation settings let you set the strength of the Gaussian blur applied to the tool. The default ranges from 0 to 5 but can be extended beyond the cap. 0 being equivalent to having no smoothing applied, 2 - the standard setting - being equivalent to having roughly ~4 blocks of range of smoothing and 5 being very smooth with a range of roughly ~10 blocks of smoothing.

The Meld strength is a feature that lets you determine how strongly a rock should be melded or belnded together with the existing blocks of the world. This causes rocks to smooth out more near the edges of the brush in order to ease out the jagged edges that a rock might otherwise have. The default ranges from 0 to 3 but can be extended beyond the cap, 0 having no melding applied and just being placed at the surface, 3 being a strong melding affect. The meld strength is also affected by smoothing, with more smoothing causing ‘melded edges’ to be more finely smoothed into the existing blocks.

Weld

The Weld tool is a tool that uses a Gaussian blur to add on mass to a surface in a way similar to how using a welding machine with filament would add mass to an area. It can be used to make seams between harsh edges or to flare out the land mass from an existing area onto a flat surface in a seamless blend. It uses the Active Block to determine what blocks to place. It is partially configured using the brush settings and has a few more settings that change the algorithm in specific ways.

The Smoothing strength can be adjusted to make smoother welds, a higher smoothing setting means that the tool will need a lower threshold to operate as they constrain each other. Generally a higher smoothing strength will also increase the size of the affected area.

The Smoothing threshold can be adjusted to make it harder for the tool to affect a given area. This makes it possible to constrain the tool in a way that helps to create more natural flares and seams into existing builds.

The Replace Solid Blocks toggles the ability to override other solid blocks with the Active Block.

Melt

The Melt tool is a tool that uses a Gaussian blur to subtract mass from a surface. The best way to describe it is being the opposite of the Weld tool. Rather than flaring out edges or filling in seams it can be used to melt into or carve away at surfaces in a way that blends in with the existing terrain to make things like erosion patterns. It is partially configured using the brush settings and has a few more settings that change the algorithm in specific ways.

The Smoothing strength can be adjusted to make smoother melting paths, a higher smoothing setting means that the tool will need a lower threshold to operate as they constrain each other. Generally a higher smoothing strength will also increase the size of the affected area.

The Smoothing threshold can be adjusted to make it harder for the tool to affect a given area. This makes it possible to constrain the tool in a way that helps to create more natural looking carvings and erosion patterns.

Stamp

The Stamp Tool is a Blueprint placement tool designed for placing muliple, randomly placed blueprints. Listed below are all Tool Options for the Stamp Tool.

OptionDescription
Base ChanceThe base chance is the final factor that determines placement. A base chance of 1 means it will always place the blueprint regarding the Min Spacing.
Min SpacingThe Minimum Spacing is the first factor that determines placement. A minimum spacing of 5 will result in the centre of two blueprints being at least five blocks apart.
Place (Immediate)The immediate option places all blueprints immediately after releasing your brush stroke.
Place (Deferred)The deferred option allows you to place blueprints with multiple strokes. You can also manually offset and rotate the blueprints by using the Gizmo located at the centre of the blueprint. New brush strokes will still apply the placement rules to previously placed blueprints.
Random YawRandomises the placement by rotating the blueprint in a random direction.
Random X/Z FlipRandomises the placement by flipping the blueprint on the X and Z axis.
Keep ExistingWhen enabled, pre-existing blocks are not overridden.
Extend Foundation To GroundIf the bottom surface doesn't reach the ground, it will be duplicated down until it does.

To load blueprints into the Stamp Tool, click the 'Add Blueprint' button. This will open your Blueprint Browser and click on the blueprint you'd like to add. To add multiple blueprints, you can either Dock the Blueprint Browser or use Shift + Click to avoid closing the window.

Blueprints have their own offset and chance. If the Base of your blueprint should be lower, you can edit it here. If you want less or more of a specific blueprint, you can also change that here.

Video Demo

Text

The Text tool lets the user write text with any True Type Font or .ttf file font in the world. It can be configured to have a smaller or larger font scale

Write the desired text into the 'Text' field and right-click to place it in the world with a gizmo.

Shape Tool

The Shape Tool lets you make geometric shapes with your active block. Since these shapes are computed mathematically, they can adjust to any angle and transformation, giving you lots of control over their look. When you 'place' these objects, you can use the gizmo to reposition them and rotate them at any angle.

Each shape lets you tweak its XZ or XYZ dimensions. In addition to controlling rotation using the gizmo, you can also alter the angle sliders for yaw, pitch, and roll in the 'advanced options' dropdown. Plus, there are options for making the shapes hollow, placing only the outer layer.

Category

CategoryDescription
SolidCreates a solid 3D shape.
FlatCreates a flat 2D shape.
ModellingCreates a surface using multiple points.

Shapes

ShapesFlat ShapesModelling Shapes
SphereDiskConvex Hull
CuboidPlaneSmart Surface
OctahedronRegular PolygonTriangle Strip
SupersphereSuperellipseTriangle Fan
CylinderArchimedean Spiral
Tube
Cone
Pyramid
Torus
Dodecahedron
Icosahedron

Options

Option      Description                                                      
Separate XYZWhen enabled, all three scale axes can be modified separately.    
Diameter    This slider controls the size or scale of the selected shape.    
Advanced    Allows you to directly alter the yaw, pitch and roll via sliders.

Modifiers

ModifierDescription                          
Hollow  Generates the shape filled with air  
MetaballApplies a melting effect to the shape

Placement

Placement          Description                                                
Gizmo              Switch between a global or local gizmo
Pivot              Switch between centred gizmo or base gizmo position

Paste

PasteDescription
Keep ExistingDisables the overriding of other blocks when placing the shape.
Paste CopyPlaces a copy of the shape at the current position.

Video Demo

Path Tool

Fluid Tools

Floodfill

The floodfill tool fills a chosen area with the provided amount of blocks to place. The Active Block is the block used to fill an area.

The tool fills an area by equally spreading across and down from the selected starting position. The amount of blocks used can be set using the Limit Slider in the Tool Options, and a visualisation of the floodfill is shown when hovering over the Main View Window.

Using right-click will initiate a floodfill at the position of your cursor.

Fluid Ball

The Fluid Ball tool is a brush which can be used to set sources of either water, lava or snow. With the default settings, the fluid is spread across the terrain, away from the drawn source. On sloped terrain, the fluid's flow is influenced by the slope.

The following tool options control the flow and generation of fluids.

OptionDescription
Fluid TypeSwitch between water, lava or snow using this drop-down.
QualityThe Quality slider determines how 'Smooth' the water flows. Turning this up too much will result in diminishing returns
Flow LengthThe Flow Length slider determines how far water will flow from a source block.
Remove Fluids Without SourcesThe Remove Fluids Without Sources option toggles the requirement of source blocks to create water flow. This can be useful when using the Fluid Ball tool on slopes.
Fill EdgesThe Fill Edges option toggles the filling of corners when in a contained environment. If a source can fill a container, the fluid level will be flattened out to fill the container.

Heightmap Tools

Heightmap tools are used to affect areas in a ‘2D’ way. This works by adding or removing height one layer at a time in the same way that heightmap-based tools like World Machine or World Painter do.

Elevation

The Elevation Tool can raise and lower pre-existing terrain. Its main feature is the ability to add custom heightmaps. These modify the elevation depending on the brightness in the image provided.

Tool Options

OptionDescription
Y LimitThis determines the height of the cylindrical shape to affect surfaces.
ModeDetermines how the terrain is affected. Raise, Lower and Flatten are some of the modes.
SmoothingDetermines how smooth the elevation will turn out.
ApplyThis dropdown allows you to switch between a single application and a continuous application.
Rate / AmountThese determine how many blocks are applied at a time.
FalloffThe falloff determines how the elevation is applied around the center.
Load HeightmapSimilar to falloff, heightmaps allow for further modification to the elevation. Pressing "Load Heightmap" will open an explorer window prompting you to choose an image. When using a coloured image, the image will automatically be converted to black and white.

Video Demo

Slope

The Slope tool is a heightmap tool designed to easily create a ramp or slope between two points, with its function differing slightly from other heightmap tools. In order to start a slope you have to click once to set the target position and then you can drag-click from anywhere else to start drawing a slope between those two points.

On the initial click, a triangle appears displaying details such as height disparity, slope angle, and Euclidean distance between the two points. When you hold down the right-click and drag, a grid plane visible around the initial point of the slope shows the slope's exact angle and provides a rough image of what the final slope will look like.

As for configuration, brush settings allow you to manipulate the height and radius. The sharpness function, similar to other heightmap tools, manages the curvature of the slope at points above and below the tool.

Two modes are available: Plane and Cone. Plane mode operates on a flat surface, whereas Cone mode functions within a spherical region centred on the initial point. The cone's orientation changes depending on whether the target point is above or below your current aim.

However, be cautious when creating a large slope as it may induce lag. For very large slopes, it is suggested to handle smaller areas at a time.

Manipulation Tools

The Manipulation tools are a series of tools aimed at changing existing terrain into a more desired shape or form. For example, after having made a mountain or cliff somewhere and then using these tools to help refine their shape by means of smoothing, roughening, distorting, etc. Each tool has a pretty different effect on the world and common to use these tools intermediately between tools that add more mass or sculpt the world more as well as in succession of other manipulation tools in order to get the most desirable outcome.

Smooth

The Smooth tool uses a Gaussian blur to soften terrain. What sets it apart from other smoothing tools is that its algorithm maintains the same total block count within the brush stroke. Instead of adding or removing unnecessary mass, it attempts to spread blocks evenly across the chosen area based on the surroundings. This makes the brush more adaptive and precise, while also offering adjustable settings linked to this behaviour. The tool operates within the chosen area as defined by the brush settings, but remember that the blurring kernel also considers the surroundings of the selection.

The Smooth Strength controls the degree of terrain smoothing. By default, it's set to 2, which provides a pleasant smoothing effect. Lower strength is useful for refining areas with a lot of noise while preserving the overall shape. On the other hand, higher strengths blend and lump blocks together more drastically to achieve the smoothest shape possible.

The Modifiers, are settings related to smoothing behaviour. By default, the tool has a 100% Block Ratio in Stable mode. This means the tool will preserve all blocks (100%) and strive to keep things relatively unchanged during the smoothing process. If you increase the block ratio, it adds more mass, which is equivalent to the total number of selected blocks times the ratio. For instance, a 101% ratio means adding 1% more blocks, while a 99% ratio means removing 1% of blocks. For smaller areas, this allows precise tuning, while larger selections, due to their greater mass, will naturally grow or shrink more based on your settings. The Melt mode biases the removal of blocks and the Grow mode biases the addition of blocks to smooth the area. Combining these with the ratio allows for precise finetuning of the smoothing.

The "Fix edges" option, which is on by default, integrates the edge of the smoothed area with the existing terrain to avoid creating sharp contrasts. This makes the smoothed areas blend seamlessly with the rest of the terrain, preventing jagged edges.

Distort

The Distort tool uses a concept called ‘Domain Distortion’ with a Simplex noise in order to distort a given area. What this does in practice is making areas more bumpy. This can help to make flat areas have more depth and texture or be used to add some bumps and carvings into more refined terrain. It does this inside the brush stroke path which can be defined by the brush settings.

The distortion can be configured further to finetune how you want to distort the terrain. The scale sets the scale of the Simplex noise used to perform the domain distortion. This can be configured to larger sizes should the scale not be large enough. It can also be configured with the seed to use different or random seeds.

The distance of the distortion increases the range in which the noise distorts. A distance of 2 being an average of 2 blocks distance away from the target position. Due to to the fact that the noise is continuous the range can be set to non-full numbers in order to finetune the range, sometimes making larger dents or bumps appear as a result. A high distance will cause it to look more ‘severe’. These distances can be separated per axis by toggling the *Separate Axis button

The smooth edges option blends the edges of the noise into the existing terrain to avoid jagged edges and sharp contrasts from appearing between the distorted areas.

Roughen

The Roughen tool is designed to create rugged or jagged edges in the terrain, essentially serving as the opposite of the smoothing tool. It works by "roughening" or making the terrain less smooth. It’s brush size can be configured to change the affected area.

The way it functions is by analysing how many faces (sides of the blocks) are currently exposed to the air and how many should be exposed after the roughening process. The amount of roughening applied to the terrain is determined by the "roughening ratio", which sets the proportion of change.

The 'Faces' parameter is a slider that ranges from 1 to 4. This determines how many sides (or faces) of a block will be exposed to air after the roughening process. If the value is set to 1, fewer faces will need to be exposed, leading to a more rugged look. On the other hand, if it's set to 4, less faces will need to be exposed, resulting in a highly irregular, rough appearance.

The 'Roughening Ratio' is a separate slider that you can also configure. This determines the intensity or amount of the roughening effect, or how much the terrain will be transformed. A high roughening ratio will cause a drastic change, making the terrain appear substantially more rugged. A lower ratio, on the other hand, will apply a more subtle roughening effect.

Shatter

The Shatter Tool is a tool that uses a Voronoi edges noise to shatter or add cracks to the terrain. The brush size and shape can be configured to change the affected area.

The shatter noise can be configured to have a larger scale, conversely making the cracks appear over a wider area. The width affects how big the cracks between the Voronoi edges are. A larger width means that the cracks will be wider. Toggling the active block changes the brush to use the active block rather than making the cracks with which can be used to make cracks with materials rather than removing mass from the world.

The noise can be configured to work in 3D, meaning the cracks will move in all 3 dimensions or several 1D configurations for each of the Cartesian coordinates. This will make the cracks only appear on that axis. It can also be configured with the seed to use different or random seeds.

Extrude

The Extrude tool is designed to adjust the size of surfaces, either expanding or contracting them. When you click on a surface, the tool affects the entire face, causing it to either shrink or expand, based on the selected mode. It has a preset range limit set at 100,000 by default. This is done for the sake of performance and potential to extend beyond the render distance on large flat surfaces otherwise.

The tool also includes a "block compare" mode, which operates similarly to the block compare modes of the magic select tool. This mode determines which blocks the tool will affect. Options include all blocks, only blocks of the same type, blocks with the same block state, any solid blocks, or every block, providing a great deal of customization.

The Extrude tool also features a "displace" function. When activated, this function causes surfaces that are one block thick to move, rather than creating a copy or addition to them. This can be particularly useful when you want to reposition elements like walls or ceilings without altering their thickness.

The Count slider determines how many layers are placed per click.

Modify

The Modify tool is designed for manipulating selections in various ways.

Overview

Mode            Description                                                        
Revolve          Stretches the selection in a circular structure                    
Translate CopiesClones the selection a set number of times with a custom offset
Rotate Copies    A mix between Revolve and Translate Copies                        
Twist            Twists a selection using an angle and axis                        

Revolve

With your selection active, two circular lines will appear, the red indicates the inner part of the revolve and the green indicates the exterior. The two lines pointing from the cursor position indicate the points where the rotation may start.

The Revolve tool can rotate on all three axes separately and has an option to control the amount of angle the tool uses. An angle of 360 does a full loop and 180 does a half loop.  

The Add Translation button will allow you to offset the end position of the revolve using whole or decimal numbers.

Translate Copies

Similar tostack, Translate Copies allows for offsetting by relative or absolute values. The count controls the amount of copies to be made with the offset.

Relative offsets are multiplied by the size of the selection.

Absolute offsets are not multiplied so they are therefore absolute coordinates.  

Rotate Copies

Like a mix between Revolve and Translate Copies, Rotate Copies rotates a set number of copies around a point set by the cursor. However, changing the Type from Equidistant to Custom Angle will remove the point rotation and rotate based on the set angle offset.

The Add Translation Toggle enables the ability to offset the end copy. An offset of 1 on the Y-axis will create a spiral shape.

Twist

The Twist function twists a selection at an angle alongside an axis.

The axis controls the face direction of the twist and the angle determines how much it should twist.

Advanced

The advanced section covers some of the niche but good-to-know bits of information such as commands and configurations. This can be especially helpful for debugging issues.

Commands

Commands are essential for management and debugging.

/axiomdocs

  • This command provides a link to this documentation.

/axiomenablecheats

  • Forces the world to have cheats enabled, even if they are disabled. This is not available in Multiplayer.

/axiomhandshake

  • Tests the connection by emulating a player join on a server.

/axiomintro

  • Displays the introduction shown when first using the mod.

/axiomtogglecapability

  • Target a capability and toggle it.

/whynoaxiom

  • Returns Axiom's status and information on how to resolve issues.

Axiom Gamerule Commands

These are some extra commands for controlling the world and its properties. These are not available when playing on a paper server.

axiomDoBlockDrops

  • Unlike the doTileDrops gamerule, Axiom's gamerule covers all blocks.

axiomDoBlockGravity

  • When False, all gravity affected blocks like sand will never update regardless of the interaction.

axiomDoTrampleFarmland

  • When False, farmland cannot be trampled by any entity.

axiomPlayerInvulnerability

  • Prevents all forms of death, including void damage and /kill.

Compatible commands

//pos1 and //pos2 can be used in conjunction with WorldEdit. Using these commands will cause Axiom to render a box to visualise your selection.

Configuration

Axiom has its own dedicated configuration located in .minecraft/config/axiom containing 3 folders and 3 files.

The folders are used to store saved Blueprints, Heightmaps and Tool Presets so even if the mod is removed, your assets are saved.

The files contain the more important information such as UI layout and enabled capabilities. Axiom uses a variant of JSON called HOCON (Human-Optimized Config Object Notation).

Below are the three files alongside their descriptions.

.axiominternal.hocon

KeyDescription
completedTutorialsLists the tools that have shown their short tutorial.
customDowngradeSuggestionsLists the downgrades suggested by Axiom.
defaultLayoutStores the UI data for the currently enabled UI layout.
globalScaleA float representing the Editor UI Scale.
lastTranslationCountA value determining the amount of translations.
openEditorWindowTypesA list of open windows in the editor.
rootEditorPaletteThe default block palette for the editor mode.
savedCustomThemeStores the currently active Theme as a string.
showCloseWindowButtonA boolean to toggle the "x" to close windows.
showNon90DegreeRotationWarningA boolean to toggle the warning before applying non-90-degree angles.
showToolMaskOpenWarningA boolean to toggle the warning when using Tool Masks.
shownIntroductionA boolean representing whether the introduction has been completed.

.axiom.hocon

KeyDescription
blockAttributesContains the currently toggled Block Attributes.
blueprintStores the toggle to automatically refresh and a list of all used blueprint tags.
capabilitiesLists all abilities and their state. Also contains the autoSwapToCreative boolean that controls switching to creative when opening the context menu.
keybindsStores in-game keybinds and settings for the Builder Mode and camera movement.
toolKeybindsStores all Editor keybinds for switching tools.
renderingStores booleans representing the toggles in the Toolbox found in the Context Menu.

imgui.ini

This file stores windows and their positions.

This file is generally not meant to be modified, hence why it uses a different file format. However, if you're having an issue with a specific window that you can't recover, you can either edit or delete this file to fix the issue.