1.2
Compatibility
Changes
MyNPC Changelog
Version 1.2
This update focuses on making the custom NPC workflow easier to use for modpack authors, while also improving performance, spawning behavior, and the in-game NPC interaction screens.
Added
- Added a separate creative tab for MyNPC spawn eggs, so large NPC packs no longer flood the vanilla spawn egg tab.
- Added
/mynpc egg <npc_id>with command suggestions, allowing players or pack makers to create NPC spawn eggs without typing the full id. - Added a structure spawn rules list for each NPC. Each rule can target a structure and define minimum count, maximum count, and spawn chance.
- Added compact table editors for custom trades, teleport scroll prices, known structure rules, and structure spawn rules.
- Added item picker buttons next to item id fields in trade editors.
- Added editable before-trade and after-trade text for custom trades and structure-related trades.
- Added a visited checkbox to the structure guide list. When the player reaches a guided structure, the entry is marked as visited.
- Added weighted known-structure rules, allowing some known structures to be more likely than others when random known structures are selected.
Changed
- Updated the mod version to
1.2. - The default built-in NPC display name remains
village_guide, but its internal entity id is nownpc. - Newly created NPC ids now use
npc1,npc2,npc3, and so on. - The NPC manager's Structure page is simplified. It now only shows the known-structure list button plus random known minimum and maximum values.
- The Chat page no longer has a separate "Add Text" button. Use the text list editor to view, edit, add, and delete chat lines.
- Selected NPC buttons in the left NPC list now use the same pressed visual state as selected page tabs.
- NPC nameplates are no longer shown when looking directly at an NPC.
- Natural and spawn-egg NPCs now share the same default NPC setup path.
- Guide NPC combat AI was adjusted to better handle nearby hostile mobs, retaliation, creeper avoidance, and melee spacing.
- GUI list layouts were tightened to reduce overlap and improve readability on smaller screens.
Fixed
- Fixed several editor list layouts where text boxes could visually overlap adjacent columns.
- Fixed item preview boxes covering text field borders.
- Fixed stale or confusing buttons on the Structure and Chat pages.
- Fixed inconsistent default NPC ids when creating or resetting NPC definitions.
- Fixed old structure controls remaining visible after the Structure page redesign.
Notes
- Existing NPC JSON files are not deleted automatically.
- If an old
village_guide.jsonexists, it remains compatible, but new defaults usenpc.json. - This version is for Minecraft
1.20.1with Forge47.x.
Version 1.1
This update rebuilds a large part of the custom NPC workflow and fixes several stability issues found during testing.
Added
- Added a new dynamic NPC manager opened with
H. - Added editable NPC pages for appearance, behavior, known structures, trades, and chat.
- Added support for custom skins and custom sounds from the config asset folders.
- Added searchable structure selection lists with single-select and multi-select behavior.
- Added custom trade editing, scroll trade editing, structure hint text editing, and per-structure prices.
- Added automatic structure detection for structure lists.
- Added random equipment for NPCs, including weapons and armor.
- Added NPC combat behavior:
- Retaliates when attacked.
- Actively attacks nearby hostile mobs.
- Avoids creepers.
- Plays a visible attack swing animation.
Changed
- Default guide NPC settings now come from one shared default template.
- Resetting a custom NPC now restores the same default settings used by the built-in guide NPC, while keeping a unique entity id.
- The built-in guide NPC naturally spawns in villages, with one guide per village area.
- Spawned guides stay near their home structure instead of wandering away freely.
- Right-click interaction still freezes the NPC during GUI use so trades are not interrupted.
- Structure and trade selection screens now place main action buttons at the bottom.
- Right-click inquiry and trade GUIs were redesigned to use clearer text areas, lists, and scrolling.
Fixed
- Fixed custom skins not applying correctly in some cases.
- Fixed custom sounds failing to resolve from the custom asset folder.
- Fixed the game hanging or freezing during world generation from heavy spawn checks.
- Fixed repeated NPC spawning in the same village.
- Fixed NPC GUI staying open after the NPC dies or is removed.
- Fixed reset defaults being different from the built-in default NPC.
- Fixed several UI clipping, overlap, scrolling, and button layout issues.
Notes
- Existing config files are not deleted automatically. If you want the new default
village_guide.json, remove the old one fromconfig/npc_typesand restart the game. - This version is for Minecraft
1.20.1with Forge47.x.
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:CQF4PJYd:kuDq0pxb"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:CQF4PJYd:kuDq0pxb"
}

