Tags
Creators
Details
Licensed MIT
Published 9 months ago
Updated 4 months ago
All versions
0.3.0
Release
Hands Off My Block v0.3.0 for NeoForge 1.21.118 months ago 32
Compatibility
Minecraft: Java Edition
1.21.11
Platform
NeoForge
Supported environments
Server-side
Client and server
Changes
Hands Off My Block v0.3.0 for 1.21.11
HandsOffMyBlock Common:
- Probably my biggest mod changelog to date btw
- Edited init logger message
- Fabric and NeoForge startup methods now call the common init() method, which wasn't being used previously and thus the init logger never fired
Villager Bed Reclaim Inconsistency Fix:
- Bed POI refresh now does a full "rebuild" cycle so old/pre-existing beds properly re-register after unmarking, and both halves of a bed are refreshed on unmark, which makes reclaimed beds behave more like a real break/place update.
- When marked, the bed head POI is explicitly released first to avoid stale claim occupancy before blocking the bed.
- When unmarking, nearby villagers get a "nudge" in their pathfinding so they retry claiming/sleeping in unmarked beds sooner.
Context-Based Unmark Reasoning:
- New HandsOffMyServerLevelSetBlockMixin hook that captures destruction reasons before the marked block state changes, and added contextual reasoning for POIs that are unmarked due to it being destroyed (Broken, Burned, Exploded, Pushed, Replaced)
- Updated translations for en_us, mostly for the new context-based reasoning actionbar components listed above
Marked Bell Logic:
- Added the bell to WORKSTATIONS HashSet allowing bells to be marked like any other POI (if this causes any unintended side effects, please make a bug report! More info below...)
- Extended villager invalidation logic to work with bells, nearby villagers now clear MEETING_POINT memory if it points to that marked bell
- Also added a safeguard that continuously drops MEETING_POINT which prevents villagers from reconnecting to marked bells after the initial invalidation pass
- Added bell-compatible particle triggering by updating villagerHasMemoryForBlock() to include MEETING_POINT in Fabric and NeoForge, so marking a bell now counts as a villager-linked POI for angry particle feedback.
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:JDym4AEl:qqWyVbaF"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:JDym4AEl:qqWyVbaF"
}

