Перейти к содержимому
Mineforgian

EasyPlaceFix

Litematica Easy Place Fix is a small Fabric client-side addon for Litematica that corrects block orientation when using Easy Place mode on multiplayer servers

18K загрузок17 подписчиковApache-2.0fabric

Обновлён 27 июня 2026 г. · опубликован 27 февраля 2026 г.

What It Is

EasyPlaceFix is a client-side Fabric mod for Litematica that improves Easy Place in multiplayer and makes block placement much more reliable on servers.

It is useful when default Easy Place:

  • places blocks with incorrect orientation;
  • struggles with interactive or complex blocks;
  • performs extra unwanted clicks;
  • becomes unreliable under latency or server delay.

What It Adds

EasyPlaceFix extends normal Easy Place with:

  • more accurate block orientation during placement;
  • better reliability on multiplayer servers;
  • improved handling for blocks that need follow-up interactions;
  • fewer duplicate actions and less desync;
  • extra settings and hotkeys for fine-tuning behavior;
  • built-in logic that makes a separate TickPrediction install unnecessary.

Features

The mod includes dedicated handling for many directional and interactive blocks, including:

  • stairs;
  • trapdoors;
  • signs and hanging signs;
  • shelves and lecterns;
  • crafters;
  • observers;
  • pistons;
  • rails;
  • skulls, banners, wall-mounted blocks;
  • multiface blocks and other blocks that need custom hit results, extra clicks, or careful state handling.

The mod also:

  • adds its own Easy Fix tab to the Litematica config GUI;
  • checks block state before retrying placement;
  • uses delayed interactions where needed for better stability;
  • handles difficult multiplayer edge cases more safely.

Settings

The mod adds its own settings to Litematica:

  • enableFix: enables the EasyPlaceFix replacement logic;
  • loosenMode: allows looser item matching if the exact item is not found;
  • nbtIgnore: searches items without strict NBT matching;
  • AllowInteraction: allows normal interaction with selected containers and interactive blocks;
  • observerDetect: prevents observer placement in cases where the required target block in the schematic is not yet matched;
  • clientRotationRevert: restores the client view rotation after the temporary placement rotation.

It also adds separate hotkeys for:

  • loosenMode;
  • nbtIgnore;
  • AllowInteraction.

loosenMode uses:

  • config/loosenMode.json

Installation

Required:

Important:

  • this is a client-side mod;
  • a separate TickPrediction install is no longer required;
  • for multiplayer, use Easy Place protocol: SLAB_ONLY.

Compatibility

  • Minecraft 1.21.11
  • Java 17
  • Fabric Loader 0.18.4
  • Current project mod version: 0.5.8

Версии

ВерсияКаналИграЗагрузчикиДатаСкачать
0.6.0Релиз26.2fabric27 июня 2026 г..jar (244 КБ)
0.5.9Релиз26.1.1, 26.1.2fabric19 апреля 2026 г..jar (230 КБ)
0.5.8Релиз1.21.11fabric6 марта 2026 г..jar (215 КБ)
0.5.7Релиз1.21.11fabric27 февраля 2026 г..jar (215 КБ)

Ченджлог

0.6.0Релиз26.2 · 27 июня 2026 г.

EasyPlaceFix 0.6.0

Version 0.6.0 ports the mod to Minecraft 26.2 and updates compatibility with the current Litematica/MaLiLib branch.

Changes

  • Ported the mod to Minecraft 26.2.
  • Updated compatibility with:
    • Litematica 0.27.1
    • MaLiLib 0.28.2
    • Fabric API 0.145.4+26.2
    • Java 25
  • Adapted internal mixins to current client mappings and API changes.
  • Added an internal Tuple compatibility class to keep placement logic working correctly on Minecraft 26.2.

Compatibility

  • Minecraft 26.2
  • Java 25
  • Fabric Loader 0.19.0+

Note

This is a client-side mod. For multiplayer stability, set Easy Place protocol to SLAB_ONLY.

0.5.9Релиз26.1.1, 26.1.2 · 19 апреля 2026 г.

EasyPlaceFix 0.5.9

Version 0.5.9 ports the mod to Minecraft 26.1.1 and the new Litematica/MaLiLib branch and refreshes client-side mod metadata.

Changes

  • Ported the mod to Minecraft 26.1.1.
  • Updated the project to the current Fabric stack for 26.1.1.
  • Updated compatibility with:
  • Litematica 0.27.1
  • MaLiLib 0.28.2
  • Fabric API 0.145.4+26.1.1
  • Java 25
  • Migrated the codebase to the new mappings and API model used by the 26.1 branch.
  • Fixed decorated_pot placement:
  • item lookup now respects item components;
  • Refreshed mod metadata:
  • fixed the client entrypoint;
  • marked the mod as client-only;

Compatibility

  • Minecraft 26.1.1
  • Java 25
  • Fabric Loader 0.19.0+
0.5.8Релиз1.21.11 · 6 марта 2026 г.

EasyPlaceFix 0.5.8

Version 0.5.8 focuses on rotation stability during placement, anti-cheat-friendly placement pacing, and memory stability in long sessions.

Changes

  • Fixed a race condition in LookAt.
  • Reworked LookAt from a mutable enum into an immutable class.
  • Removed shared-state mutation via customize()/NowYaw()/NowPitch(), which could produce incorrect yaw/pitch in rapid chained actions.
  • Added safe variants:
  • LookAt.PlayerYaw
  • LookAt.PlayerPitch
  • LookAt.of(float) for computed angles
  • Updated orientation-sensitive block mixins (rails, signs, hanging signs, wall hanging signs, pistons, observers, barrels, dispensers, doors, shulkers, skulls, etc.) to use the new LookAt model.
  • Added global anti-cheat placement pacing via placementDelay.
  • New config: placementDelay (0..20 ticks, default 0).
  • Applied before per-position cooldown checks.
  • When placementDelay > 0, Easy Place enforces a global pause between placement attempts (ticks * 50ms).
  • This reduces anti-cheat flags on stricter servers.
  • Fixed memory growth in the placement cooldown cache.
  • Added stale-entry pruning in lastPlacementTimeMap (older than 10 seconds) when the cache grows.
  • Kept per-position cooldown threshold logic as RTT + 100ms.
  • Prevents uncontrolled cache growth in long building sessions.

Placement pipeline details

  • Added isGlobalPlacementCooling() check in doEasyPlace before per-position cooldown.
  • Added markGlobalPlacement() when a placement action starts.
  • Removed duplicated manual yawLock/pitchLock writes from the old path; rotation now follows a single safer flow with current-angle reads.

Compatibility

  • Minecraft 1.21.11
  • Java 17
  • Fabric Loader 0.18.4
0.5.7Релиз1.21.11 · 27 февраля 2026 г.

Improvements This release hardens placement logic for complex interactive blocks at high speed, especially when using Easy Place on multiplayer servers.

Main changes

  • Reworked the placementStateOverride flow:

  • replaced the previous one-shot global state with a short-lived override queue;

  • overrides are now scoped to block position and block type;

  • improved resilience against multiple internal getPlacementState() calls during one placement;

  • added a fallback path for rare client desync cases. Trapdoors

  • Fixed the direction inversion issue: trapdoors should no longer be placed mirrored relative to the schematic.

  • Improved high-speed placement stability.

  • Hardened follow-up interaction handling for states that require an extra click (OPEN). Stairs

  • Improved enforcement of facing and half.

  • SHAPE is no longer forced, allowing neighbor-dependent shape updates to resolve naturally on the server.

  • This reduces incorrect placements under high-speed conditions. Lecterns

  • Added dedicated support for correct facing placement.

  • Added interactive handling via ICanUse.

  • Shelf blocks

  • Facing is now enforced more safely without forcing dynamic runtime properties.

  • Internal changes

  • Updated the mixin set.

  • Added new mixins for LecternBlock.

  • The project builds successfully after these changes.

Known limitations

  1. There are still open findings around follow-up interactions for some multi-click blocks.
  2. Generic multiface placement still needs additional work.
  3. If you rely heavily on glow lichen / sculk vein style blocks, separate testing is recommended.

Полная история изменений — на Modrinth.

Комментарии

Загружаем…