Tags
Creators
Details
All versions
8.0.11
Release
v8.0.113 months ago 18
Compatibility
Minecraft: Java Edition
1.21.1
Platform
NeoForge
Supported environments
Client and server
Changes
Fairy Lights 8.0.11 - Stability, Colors, Placement
Critical Fixes
Server Watchdog Hang on Chunk Unload
- Guarded
HangingLightsConnection.removeLight()withworld.isLoaded(pos)so unload no longer triggers blocking chunk loads / deadlocks. - Soft-teardown on fastener remove (
noDrop()before connection teardown) to avoid item rain and world mutation during unload.
Placement Tether / Player Fling
- Aborting a place (e.g. hotbar switch) now fully tears down the connection instead of only stripping the player’s incoming map entry.
PlayerFasteneris ticked fromServerEventHandlerand stored via NeoForge data attachments (replacing the fragileWeakHashMap).
Visual / Item Fixes
Invisible Black / Gray (and EMI icons)
- Normalize dye/string/item tints to opaque ARGB for Minecraft 1.21 ItemColor.
- Sync
COLORfrom connection logic on pickup; restorefl_backup_colorfor pennant patterns; opaque seasonal/ClientProxy fallbacks.
Light Block Toggle
- Migrated dead
LightBlock.use()touseItemOn/useWithoutItemand sync BEonwithLIT.
Recipes / Data
- Restored
color_changing_lightrecipe (was a width-0 stub) and wire"colors"through crafting +ColorChangingBehavior. - Fixed
light_twinklecrafting to persist thetwinklecomponent; tooltip/name helpers read components correctly. - Fixed malformed NeoForge tag JSON for
#c:ingots/ironand#c:nuggets/gold.
Performance
- Stop per-tick
sendBlockUpdatedfor dynamic catenaries (only sync when explicitly dirty). - Strip hot-path info logging (letter/pennant/tinsel/JEI).
Other
- Pick-block (
getCloneItemStack) updated for NeoForge 1.21.1. - Fastener renderer provides infinite render bounds so long connections cull correctly.
settings.gradleNeoForge plugin repo URL uses/releases.
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:BC84wYkA:N0yELNQ7"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:BC84wYkA:N0yELNQ7"
}

