0.1.0
Compatibility
Changes
feat: villager dialogue system Replace the vanilla villager trade screen with a server-authoritative dialogue window.
- Right-clicking a villager opens a conversation showing their name, profession and trade level, with Trade and Leave options.
- Trade hands off to the vanilla merchant screen, preserving the reputation-based discount vanilla normally applies.
- Villagers with no offers (nitwits, unemployed, babies) show a greyed-out Trade option rather than an empty trade window.
- Sneak + right-click skips the dialogue and trades directly.
- A villager is marked busy for the duration of a conversation. Sessions are tracked server-side and released on disconnect, death, loss of range, or dimension change.
The server decides when a conversation starts, which options it offers, and whether to act on a choice; every client message is re-validated against the server's own view of the world before being acted on. Client and server code are split by package so a dedicated server never loads a Screen. An access transformer widens Villager#updateSpecialPrices, the one member the trade handoff needs that vanilla keeps private.
Also removes the NeoForge MDK example content (example block, item and tab, sample config, empty mixin config) and adds MIT licensing, a README, a changelog, and a tag-driven release workflow.
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:ccEZGZf7:7xxSwUQy"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ccEZGZf7:7xxSwUQy"
}

