Tags
Creators
Details
Licensed LGPL-3.0-only
Published last year
Updated 3 weeks ago
All versions
0.0.3
Release
0.0.33 weeks ago 52
Compatibility
Minecraft: Java Edition
1.7.10
Platform
Forge
Supported environments
Client and server
Required content
Any compatible version
Changes
0.0.3
Fixed
- Fixed entity preview crashes caused by fake/non-server worlds in packet sync code.
- Fixed config GUI crash with newer GTNHLib versions.
- Fixed emissive eye rendering artifacts (including non-uniform transparency/"square" clipping cases).
- Fixed multiple natural spawn logic bugs:
- player-nearby cap now checks around each player (not world origin),
- per-player failed checks no longer abort the whole spawn cycle,
- biome/dimension whitelist-blacklist matching now behaves correctly,
- each dimension now has an independent spawn cooldown and cycle state,
- cover, light, and biome restrictions are checked at the candidate spawn position,
- naturally spawned Eyes now receive normal spawn initialization,
- spawn timing is reset correctly after early exits.
- Fixed spawn-cycle warning timing to use the configured millisecond threshold.
- Fixed collision behavior so fully hidden/dormant Eyes do not trigger collision disappear effects.
- Fixed biome-list initialization crashing when biome filters were configured and wiping the dimension lookup table.
- Fixed the player gaze test being dependent on world coordinates and occasionally detecting intersections behind the player.
- Fixed disappearance, aggression, and configured mob AI logic running on the client as well as the server.
- Fixed entity state synchronization flooding clients with full-NBT packets every tick. Eye brightness, aggression, scale, and target state now use vanilla tracked entity data.
- Fixed packet handlers touching client state from the network thread; jumpscares are now scheduled on the client thread.
- Fixed configured mobs dealing bonus damage to every target instead of only Eyes, and fixed fleeing behavior being registered as a targeting task.
- Fixed aggression speed interpolation and made
tickBetweenAttackscontrol all Eye attack goals. - Fixed horizontal obstacle routing using the vertical axis as a compass direction.
- Fixed
blinkDuration = -1and very short blink durations causing invalid animation calculations. - Fixed Halloween spawn scaling being cached for the whole session and not activating on October 31.
- Fixed jumpscare rendering and timing:
- animation progress now advances once per client tick,
- framebuffer projection and GL state are restored safely after rendering,
- jumpscares render correctly at all GUI scales.
Changed
- Reworked eye glow rendering and tuning:
- default
eye_glow_passesis now1, - default
eye_glow_strengthis now2.
- default
- Dynamic light handling now uses a shared client+server approximation path to keep visuals and AI behavior aligned.
- Added cave-friendly spawning: vertical candidate sampling is centered around player height and searches nearby valid Y levels.
- Reworked stalking movement:
- Eyes strongly prefer reaching the player's eye level before closing the distance,
- Eyes route toward a staging point behind the player and only attack from the rear,
- turning to watch an Eye immediately stops its residual movement,
- obstacle routing prefers lateral detours instead of climbing above the player.
- Replaced asymmetric upward acceleration and downward damping with bidirectional altitude steering controlled by
fly. - Blinking is now a client-local visual animation instead of synchronized server state.
- Adjusted default spawn list behavior:
biomeListIsWhitelistdefault is nowfalse,dimensionListIsWhitelistdefault is nowfalse.
- Updated release automation and CurseForge metadata so artifacts are marked for both client and server use.
- Expanded the shared development runtime and excluded client-only Angelica, ModularUI2, and Baubles Expanded from dedicated-server launches.
- Updated the bundled license and attribution material to the complete LGPL-3.0 text.
Added
- Added internal dynamic light approximation system (
DynamicLightApproximation) inspired by Angelica luminance/falloff rules. - Added config toggle
enableDynamicLightApproximationto fully disable the dynamic light handler. - Added artificial light sensitivity configs:
eyeArtificialLightSensitivityOpenSkyeyeArtificialLightSensitivityCovered
- Added Catalogue Vintage integration.
- Added explicit localization aliases so the Eyes entity name resolves as
Eyesfor common key formats (includingeyesintheshadows.Eyes). - Added automated 67minecraft publishing alongside CurseForge, Modrinth, GitHub, and Maven releases.
Supplementary resources
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:2vIC4MEH:K1flE4uh"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:2vIC4MEH:K1flE4uh"
}

