Tags
Creators
Details
Licensed ARR
Published 4 months ago
Updated last month
All versions
1.0.0-beta.9
Beta
Villager Retaliation! 1.0.0-beta.94 months ago 102
Compatibility
Minecraft: Java Edition
1.21.1
Platform
NeoForge
Supported environments
Client and server
Required content
Changes
Added
- Story sharing: villagers can now react to discovered structures and biomes with profession-specific
Share a Storydialogue - Datapack-driven story discovery via
story_structuresandstory_biomes - Built-in vanilla structure/biome story data, including separate baby
share_storylines - Story sharing progress advancements:
Once Upon a TimeStory KeeperVillage ChroniclerLegend Trader
- Shared story target tracking, location-aware cooldowns, and duplicate-prevention logic
- Cartographer map report dialogue: discover a map target, return to the cartographer, and report it
- Story hint discovery/report dialogue with HUD notifications for found rumored places
- New dialogue/report flows:
gift_advice_followupgear_reportrecruitment_followupcombat_survival_reportvillage_defense_reportapologycured_recognitionvillage_event_reportshare_story
- First-village-interaction dialogue support
- Village event dialogue for sandstorms and snowstorms
- Cured-villager memory, including dialogue placeholders for the cured villager’s name
- Recruitment memory tracking: villagers remember follow distance, biome, safe/injured dismissal, betrayal, boat trips, swimming, and ocean crossings
- Gift advice can now be unreliable based on reputation, with follow-up dialogue after the player tests the advice
- Villagers can keep liked/loved gifts as keepsakes or store them in persistent inventory
- Villagers can borrow usable combat weapons from their inventory during retaliation
- Gift return/stolen gift tracking, reputation penalties, gifted-item tooltips, and the
Changed My Mindadvancement - High-reputation gift return dialogue using new
gift_givenlines - Emerald blocks, emerald ore, and deepslate emerald ore gift preferences
- Ambient world-text indicators for villager conversations
- Vanilla chat/command input support while the villager interaction UI is open
- Config options for separating villager chat messages and speaker groups
- Optional health and armor display in the reputation debug overlay
- Combat config toggles for hostile mob targeting, retaliation, standing ground, creeper fleeing, and weapon pickup
- VillageMembership system for village-aware reputation, gossip, events, and advancement checks
- Initial wiki documentation for dialogue, notifications, gifts, story discovery, JSON references, pack development, villager names, and resource-pack models
Improved
- Dialogue content expanded heavily across professions, moods, events, recruitment memories, apologies, survival reports, village defense, and story sharing
- Dialogue files can now be split into nested profession files such as
professions/farmer/share_stories.json - Profession-specific dialogue/message selection now has better priority handling
- Villager display names are resolved more reliably in dialogue and synced to clients when custom names exist
- Gift knowledge is persisted when villagers learn whether a gift was liked or disliked
- Chat formatting was refined with cleaner villager speaker labels and configurable spacing
- Story hint placement now tracks structure IDs and handles unreliable vertical hints more safely
- Village defense, cured-villager events, and other memories are scoped more cleanly to village context
- Debug/readme documentation expanded for pack makers and translators
Performance And Reliability
- Added resource warmup/clear hooks for dialogue, gifts, notifications, story resources, and villager names
- Added cache and throttling for bell searches, dangerous structure scans, discovery scans, client cache pruning, and reputation/combat checks
- Batched discovery reporting to reduce repeated saved-data and structure lookups
- Added reputation snapshots to avoid repeated reputation/level calculation
- Refactored shared JSON parsing into common helpers for safer datapack loading
- Improved villager inventory persistence, death drops, and borrowed weapon return handling
- Restricted unsafe main-hand inventory access to prevent duplicate drops or unintended item removal
- Fixed cleanup paths for villagers leaving the level during combat/survival tracking
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:2ArcBjmC:JE9ysHJw"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:2ArcBjmC:JE9ysHJw"
}



