CNPCExtended
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
介绍
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 HTML |
Security
- 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.
常见问题
CNPCExtended 支持哪些 Minecraft 版本?
CNPCExtended 支持 Minecraft Java 版 1.20.1–1.21.1,共 2 个版本,可用的加载器:Fabric / Forge。下载时注意选择和你游戏版本一致的文件。
CNPCExtended 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。
评论
登录后评论和评分