All versions
0.1.1
Release
Enemy Lock-On 0.1.12 months ago 10
Compatibility
Minecraft: Java Edition
26.2
Platform
Fabric
Supported environments
Client-side
Required content
Any compatible version
Changes
Enemy Lock-On v0.1.1 Stable Release
Initial Stable Release
LEFT Arrow→ cycle to the previous nearby target.RIGHT Arrow→ cycle to the next nearby target.- Targets are ordered by their actual 3D distance from the player.
- Cycling wraps around in both directions.
- Cycling still respects:
- Maximum Target Distance
- Entity-type filters
- Line-of-sight setting
- Dead/removed/spectator filtering
Lock-On Controls
- Press
<by default to activate normal lock-on.- Normal lock-on searches around the crosshair using the configured detection rules.
- It remains active while a valid target is available.
- With Auto Retarget enabled, it can continue onto another suitable target when the current one is lost.
- Added a separate Persistent Lock-On toggle using
ALT + <by default. - Both lock-on controls are registered separately in Minecraft's keybind settings and can be rebound.
Persistent Lock-On
- Added a configurable Persistent Lock-On mode.
- Press
ALT + <to toggle Persistent Lock-On on or off. - Persistent Lock-On can also be completely enabled or disabled from the Enemy Lock-On configuration.
- When Persistent Lock-On is enabled, the normal
Targetting entityHUD message is replaced with:Targetting toggled on
- Persistent Lock-On automatically acquires the nearest valid entity that follows the configured targeting rules.
- Persistent Lock-On remains enabled even when there are currently no valid entities nearby.
- The mod continues searching while the mode remains toggled on.
- As soon as an eligible entity becomes available, it is automatically acquired.
- When the current target dies, Persistent Lock-On automatically searches for the next nearest valid entity.
- Persistent Lock-On only stops when:
- The player presses
ALT + <again. - Persistent Lock-On is disabled through the configuration.
- The player leaves the active world.
- The player presses
Target Marker
- Added a visible white square lock-on marker to the currently targeted entity.
- The marker is positioned at the exact geometric center of the entity's hitbox:
- X-axis midpoint
- Y-axis midpoint
- Z-axis midpoint
- Camera lock-on now tracks this same exact entity-center point.
- The marker follows the entity using interpolated render-frame positioning instead of being limited to 20 TPS movement.
- The target marker itself has no additional movement smoothing, allowing it to visually follow the entity directly while the camera performs its configured smoothing.
- The marker is rendered as a HUD overlay and therefore remains visible through solid blocks and walls.
Crosshair & Lock Animations
- The normal Minecraft crosshair now smoothly fades out when an entity is acquired.
- At the same time, the target square smoothly fades in over the locked entity.
- While fully locked:
- The normal crosshair remains hidden.
- The square marker becomes the primary visual lock-on indicator.
- When the target dies:
- The square begins fading out.
- The square transitions from white to red as it disappears.
- The normal Minecraft crosshair simultaneously fades back in.
- Persistent and automatic retargeting briefly allow the death animation to complete before visually acquiring the next target.
- When another entity is acquired:
- The new white square fades back in.
- The normal crosshair fades out again.
Locking Through Walls
- Existing lock-ons now remain active through solid walls by default.
- A target moving behind a wall no longer automatically breaks the current lock.
- The target square remains visible through the obstruction while the camera continues tracking the entity.
- Added a new configurable Break Lock When Obstructed option.
- Off by default.
- When Off, existing targets remain locked through solid walls.
- When On, losing line of sight immediately invalidates the current target.
- Require Line of Sight now specifically controls target acquisition.
- When enabled, entities behind walls cannot be newly acquired.
- Once an entity has already been locked, it can remain locked through a wall unless Break Lock When Obstructed is enabled.
Targeting Overhaul
- Completely reworked target tracking to update at the rendered frame rate rather than being limited to Minecraft's 20 TPS.
- Added interpolated entity tracking for significantly smoother movement.
- Camera smoothing now uses real frame timing for more consistent behavior across different frame rates.
- Detection Radius now operates as a proper 3D radius, including entities above and below the player.
- Vertical and horizontal detection angles are treated consistently.
- Default Detection Radius increased to
24. - Default Maximum Target Distance increased to
24 blocks. - Existing configs using the original untouched default values automatically migrate to the new defaults without replacing customized values.
Bow & Crossbow Compensation
- Added automatic projectile-drop compensation for bows and crossbows.
- Bow compensation is enabled by default.
- Crossbow compensation is enabled by default.
- Aim elevation adapts based on:
- Target distance
- Target height difference
- Projectile gravity
- Projectile drag
- Bow compensation is designed around fully charged shots.
- The farther away the target is, the more elevation can automatically be applied.
- Projectile compensation remains compatible with the target marker.
- The square always represents the entity's real center.
- The camera may intentionally aim above the marker when projectile-drop compensation is required.
HUD
- Added the persistent
Targetting entitystatus while normal lock-on is active. - Persistent Lock-On instead displays:
Targetting toggled on
- Status text remains horizontally centered above the bottom HUD.
- Its vertical position adapts to compatible modded status-bar HUD elements.
- The target square and crosshair transitions operate independently of the status text.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:LHLHcfms:4nioN8Hk"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:LHLHcfms:4nioN8Hk"
}

