CNPCExtended
Modby AsianDoesMC
Cnpc and Mcef integration that lets you display HTML browsers to players, this mod also adds client side queries like getting the players sound,graphics,video settings,. this mod also adds global scripts and npc datas that preloads into new worlds
Type
Mod
CurseForge Downloads
5,863
CurseForge ID
1480941
Last Updated
Jun 25, 2026
Description
CNPCExtended — Supercharge Your CustomNPCs
The missing toolkit for CustomNPCs. HTML browser GUIs, client-side queries, global script management, NPC data preloading, and a full server-to-client bridge -- all in one mod.
Minecraft 1.20.1 - Forge 47+ - Requires CustomNPCs Unofficial + MCEF
What Is This?
CNPCExtended adds everything CustomNPCs doesn't have out of the box. Query player settings from the server, open full HTML interfaces powered by an embedded Chromium browser, auto-deploy scripts and NPC data across all your worlds, and bridge your CNPC scripts with the client side -- no separate client mod needed.
This isn't just a GUI mod. It's a complete extension framework for CNPC.
See It In Action
Features
HTML GUI System
- Open HTML GUIs from any CNPC script -- NPC, Player, Block, or Item scripts
- Bidirectional events -- HTML sends events to the server, server pushes data back in real-time
- Real Minecraft item overlays -- render actual ItemStacks with enchant glint, durability bars, and hover tooltips on top of your HTML
- Full CSS/JS support -- animations, flexbox, grid, Canvas, SVG -- it's a real browser
- Target any player -- open GUIs on other players, not just the one who triggered the script
Client Bridge Queries
Read player client settings from the server -- no client mods needed beyond MCEF:
- Video settings -- FOV, render distance, graphics mode, GUI scale, framerate limit
- Sound settings -- master volume, music, weather, ambient, hostile, player volumes
- Keybinds -- all vanilla key mappings
- Resource packs -- list of active packs
- Screen info -- resolution, scaled width/height
Global Scripts and NPC Data (NEW in v1.1)
Pre-configure every new world automatically:
- Global player scripts -- place .js and .html files in a config folder, they auto-copy into every new world and register as CNPC player scripts
- Global NPC data -- pre-load clones, dialogs, quests, and linked NPCs from a template into every new world
- /cnpcext commands -- sync, force-sync, and check preload status in-game
- Forge config -- all features toggleable via cnpcextended-common.toml
Quick Example
NPC Script (server-side):
function interact(e) { var cnpcext = e.API.getIWorld(0).getTempdata().get("cnpcext") cnpcext.openHtmlGui(e, "shop.html", 0, 0, { shopName: "Adventurer's Shop", items: [{name: "Sword", price: 100}, {name: "Shield", price: 50}] }) } function htmlGuiEvent(e) { if (e.eventName === "buy") { e.player.giveItem(e.data.get("itemId"), 1) e.bridge.sendToBrowser(e.player.getMCEntity(), "purchased", {success: true}) } }Documentation
Full Documentation and API Reference
Covers installation, quick start guide, complete API reference, item overlays, client queries, event flow diagrams, and copy-paste examples.
Requirements
Mod Side Purpose CustomNPCs Unofficial Server Script engine + NPC system MCEF Client Embedded Chromium browser CNPCExtended Both This mod -- bridges scripts with HTMLSecurity
- HTML files loaded from server's world folder only -- no external URLs
- Path traversal blocked -- scripts can't escape the scripts folder
- Event names validated with strict regex
- Client queries are read-only -- server cannot change client settings
Built for modpack creators, RPG server owners, and anyone who wants their NPCs to do more.
Similar Mods
Nether Skeletons
A MOD Which Adds Nether Skeletons
City Modernities
💵 Adds Cash through the form of Dollars to the game! 💰
Create: Radars Unofficial Port
An unofficial port of Create: Radars to 1.21.1 neoforge. Compatible with Sable.
Re:Zero Experience
Magic, Authorities, Divine Protections, Characters and more, all in one ReZero mod
Saddle
Makes saddles craftable.
Invisible Player Armor
Can hide player's armor, each part. プレイヤーの防具を各箇所ごとに非表示にできます。