Skip to content

v0.2.13

Latest

Choose a tag to compare

@castledking castledking released this 29 Jul 21:21

Axion v0.2.13 adds two new capabilities to the hotbar, reworks how Move
visualises its source region on 26.x, and improves preview rendering across
every supported range.

Compatibility Notice

The Axion network protocol stays at version 12, so v0.2.13 negotiates with
v0.2.11+ counterparts. Updating the Fabric mod and Paper plugin together is
still recommended.

Highlights

Move Source Glass Ghosts (26.1.2 / 26.2)

  • Move now replaces each non-air cell in the source region with light grey
    stained glass, rendered as a textured ghost through the GPU preview pipeline.
    The glass shell lets terrain behind and around the departing blocks show
    through while clearly marking what is leaving.
  • The ghost shell is computed via surface topology — only boundary cells are
    rendered, keeping the interior transparent.
  • 1.21.11 and below keep the existing overlay fallback. The new glass path
    requires 26.2's depth-aware translucent pipeline and 26.1.2 shares the
    same rendering backend.

Phantom Capability

  • Added Phantom mode, a new toggle in the Alt hotbar menu (bound to a
    configurable key, default unbound). When active, the player walks over
    tripwires, pressure plates, sculk sensors, and redstone ore without
    triggering them, and cobwebs no longer slow movement.
  • Backed by PhantomService and five targeted mixins that suppress activation
    on AbstractPressurePlateBlock, TripwireBlock, SculkSensorBlock,
    RedstoneOreBlock, and CobwebBlock.
  • Includes Chinese (zh_cn) localisation.

No Updates Capability (Placeholder)

  • Added No Updates to the hotbar capability list as a placeholder entry
    with a "Not yet implemented" tooltip. The slot is reserved for a future
    feature that will suppress block updates from Axion operations.

Preview Side Culling and Visualisation

  • The scrolling preview now culls non-visible sides. A PreviewOcclusionPolicy
    evaluates whether each neighbour should be reported as air to the tessellator:
    identical translucent blocks remain in the occlusion group so vanilla glass
    face-culling removes their shared face, while opaque neighbours block faces
    normally and non-opaque non-group neighbours are treated as air.
  • ChunkMeshTessellator cross-section neighbour lookups now read adjacent
    16×16 section arrays to determine interior cells correctly across chunk
    boundaries, and a cell below a non-opaque block (e.g. tall grass) is no
    longer falsely classified as interior.
  • PreviewStateHalo retains only surface cells plus their immediate six
    neighbours, avoiding unnecessary expansion of deep interior states.
  • Selection filled boxes (PulsingCuboidRenderer) now cull back faces based on
    camera position, leaving only the walls actually facing the viewer for a
    cleaner look similar to other modern building tools.
  • The scrolling repeat preview renders a single global aggregate outline across
    all committed segments plus the active segment, eliminating internal face
    bleed that occurred with per-segment outlines.
  • PreviewTranslucencySortPolicy provides camera-dependent ordering for 26.x
    GPU meshes, accounting for preview translation delta so scrolling the preview
    does not break translucency sorting.

Preview Identity and Scene Depth

  • PreviewBlockIdentityPolicy normalises server-obfuscated block identities in
    preview rendering while preserving captured air/non-air occupancy. The move-
    source glass replacement tag is explicitly exempted from normalisation.
  • MoveSourceRenderState and MoveSourceRenderInvalidator suppress vanilla
    chunk baking at the source origin during a Move preview, preventing visual
    double-exposure of the departing blocks.
  • Added PreservedSceneDepth handlers for 26.x that copy the world depth
    buffer before the hand is cleared, enabling the late preview pass on 26.2's
    submit-node rendering path.

Build and Toolchain

  • gradle.properties now documents that build-axion.sh overrides version
    properties per range.
  • Added ClientThreadCleanupScheduler for thread-boundary-safe cleanup of
    render resources.
  • New unit tests covering PreviewOcclusionPolicy, PreviewSectionTransform,
    PreviewBlockIdentityPolicy, and PreviewVisualPolicy.

Known Issues

  • "No Updates" capability is listed in the hotbar UI but has no backend
    implementation yet. Activating it is a no-op.

Release Artifacts

Each supported range has a Fabric mod jar and matching Paper plugin jar:

  • 1.21 - 1.21.1
  • 1.21.2 - 1.21.3
  • 1.21.4
  • 1.21.5
  • 1.21.6 - 1.21.8
  • 1.21.9 - 1.21.11
  • 26.1 - 26.1.2
  • 26.2

Download the latest Axion jars from https://castled.codes/axion/dl.

Support