Unofficial site, not affiliated with modrinth.com.What is this?
Моды/CustomNPC+
CustomNPC+

CustomNPC+

CustomNPC+ is a Minecraft mod that allows you to add custom NPCs to your world. It is developed for creative and storytelling players who want to make their Minecraft worlds more in-depth and unique.

127.1K
87
  • CustomNPC+ 1.11.1

    release14 марта 2026 г.
    • Script Editor Fixes + Styling Changes
    • Improved FONT for Script Editor
    • Auto Complete / Script Syntax Bugs
    • Fix Sound Selection GUI Reset
    • Accept Quest / Marks Data Crash on Client
    • Base Fullscreen Directory Fix for New Worlds Fix
    • Global API / Object Caching Optimizations
    • Profile Shared Quests Syncing
  • CustomNPC+ 1.11

    release12 марта 2026 г.

    CustomNPC+ 1.11 Changelog

    Ability System

    • Phase-based abilities (Wind-up, Active, Dazed) with configurable cooldowns, targeting, range, interrupts, invulnerability, and magic damage
    • Melee: Slam, Heavy Hit, Cutter
    • Energy Projectiles: Orb, Disc, Beam, Laser Shot with variant system, homing, hit types (Single/Pierce/Multi), size interpolation, explosions
    • Barriers: Dome, Wall, Shield with HP, reflection, damage absorption
    • Defensive: Guard, Counter, Dodge
    • Movement: Charge, Dash, Teleport
    • AOE: Shockwave, Sweeper, Vortex
    • Hazards & Traps: Persistent zones and proximity triggers with visual presets
    • Effect: Healing, buffs, debuffs with target filtering (Allies/Enemies/All)
    • Custom Ability: Blank-slate type with full script hooks and toggle modes
    • Burst system, chained ability combos with concurrency, telegraph system (6 shapes)
    • Per-phase animations and sound events
    • Ability conditions: HP Threshold, Hit Count, Has Item, Quest Completed, Has Effect
    • 12-slot player ability hotbar with HUD editor
    • Full scripting API for ability and energy projectile lifecycle events
    • Ability Extender system for custom hooks
    • Live preview in editor
    • Commands: /kam ability list|types|prebuilts|info|delete|reload|give|remove|giveChain|removeChain|player

    Auction House

    • Global marketplace with bidding, buyout, and snipe protection
    • Built-in currency system (configurable, profile-persistent, Vault support)
    • Listing fees, sales tax, minimum prices
    • My Trades panel with claim management (20-day expiry)
    • Search/sort, notifications (online + offline summary)
    • Trade slots (default 8, expandable via permissions)
    • Item blacklist (by item, wildcard, mod, NBT; soulbound always blocked)
    • Auctioneer NPC role
    • Admin GUI and logging
    • Cancelable scripting events: Create, Bid, Buyout, Cancel, Claim

    Script Editor

    • Full code editor with syntax highlighting, autocomplete, error detection, and hover tooltips
    • Go to Line, Search/Replace, Go to Definition, Fullscreen
    • Undo/Redo, Duplicate Line, Comment Toggle, Rename, Move Lines
    • Line numbers, smooth scrolling, indent guides, brace matching, smart brackets

    Java Scripting

    • Write scripts in Java via Janino compiler with automatic hook resolution
    • Per-tab language selector (mix Java and JavaScript)
    • External .java file support

    Client-Side Scripting

    • Server-controlled client script execution with auto-sync (off by default)

    Addon API Support

    • Ship .d.ts type definitions for automatic script editor autocomplete
    • Patch support for extending CNPC+ types, hot reload

    Traders

    • Stock system: Global or Per-Player modes with configurable restock timers
    • Currency trades (items + coins)
    • Client-side balance preview

    Cloner

    • Folder and subfolder organization for all categories
    • Full-width directory browser, improved tabs, tag-based filtering

    Animations

    • Data store for passing data across events/frames
    • Consumer-based task system
    • Expanded scripting API

    Animated Textures

    • Frame-based animation for items, effect icons, ability hotbar, scripted GUIs

    NPC API

    • IHitboxData (width/height scaling), ITintData (hurt tint, persistent tints)
    • Scriptable behavior: sprint, swim, doors, fire reactions, tactical chance, walking range
    • ISound (volume, pitch, repeat, position)
    • Skin overlay getColor()/setColor(), knockback API
    • Six overlays in singleplayer, script error reporting to console

    NPC Combat & Behavior

    • Attack speed enforcement, passive faction protection
    • Improved track speed, invalid texture fallback

    Other Changes

    • Player Dialog Events match NPC Dialog Events
    • Linked Item attack speed and scripting API
    • Right-click cycling on multi-option buttons
    • Legacy quest import (1.6.4), fullscreen/pannable GUIs, unified menu background
    • Textfield CTRL shortcuts, java.lang.reflect banned in scripts
    • Entity packet loss fix (invisible NPCs)
    • Natural spawn GUI, runtime control, and despawn improvements

    Bug Fixes

    • Script config sync, Bukkit integration
    • Quest cooldown for MC/RL Custom timers, quest/dialog saving and categories
    • Bard music restart on dialog open
    • Spawner yaw, biome spawn persistence, NPC invisibility
    • Track speed, set speed edge cases, spawn data, block waypoints, job spawner
    • Hitbox scaling and collision
    • Animation offsets, lookup failures, syncing, resync on teleport, registration names, double loading
    • Mount movement jitter, dismount edge cases
  • CustomNPC+ 1.10.3

    release3 января 2026 г.

    🛠️ CustomNPC+ 1.10.3 🛠️

    Mounts Role

    I've added a new role to NPCs to allow Mount Access, directional and fly handling for Mounts. Right now there is a new keybind currently named Special Key. This will have more functionality and perhaps a better name in the future. However, on Flying Mounts this key is the only key that will allow you to DESCEND on a flying mount, because Sneaking will always be directed towards Dismounting

    Attack Speed

    Attack Speed is now fully incorporated in the Linked and Scripted Items. There will be more attack speed handling in the future, that will allow you to bypass the 20 tick limit of hitting speeds to make them slower or faster. Currently, the range will be [1 to 20 ticks].

    Features

    • Ranged Invincibility Toggle
    • getPartyMembers() on IPlayer

    Fixes

    • Various Party Crashes, Desync and Fixes
    • Close on ESC for all Windows
    • Fixes for Player Data Viewer Search Modes
    • Bow Rendering Fixes for Mixin Compatible Mods
    • Better Sync Handling so Bulk data does not need to resend for reconnecting players
    • DBC Addon Inconsistencies and Interaction Fixes
    • Linked Item Translation Fixes
    • Better NPC Hitbox Scaling so large NPCs do not fall through slabs
    • Quest Item Requires now take the Total
    • Quest Cooldowns for Custom MC and Custom RL fixes
    • Bard Music / Dialog Duplication Audio Fixed? (Needs more testing)
    • Console can now send Scripted Commands
    • Follower Role Packet Fixes
  • CustomNPC+ 1.10.2

    release6 октября 2025 г.

    CustomNPC+ 1.10.2

    • Better Party to Client Data Syncing
    • Improved Scripting Performance and Function Lookup Speeds
    • Added the new API Action Manager, which allows you to queue up actions on NPCs, based on Conditions or Ticks. Either in parallel or sequentially.
    • Added new Recipe Script Support for Carpentry and Anvil Recipes. A Pre & Post Event
    • Added Soulbind and Slotbind Attributes to Item Attributes
    • Shift-Click Support in Bank Containers
    • Added all Biome Support to Natural Spawns
    • Added Configs to Determine Script Load Order

    Fixes

    • Animation Data Crash
    • Dialog Close Event will always run now, no matter how GUI closes
    • Profile Slot Data Overwriting
    • Fix Passive Faction Toggle Button
    • Fix Mob Spawner Crash Bug
    • Fixed Player Respawn Event not getting Hooked
    • NPC Paintbrush Crash
    • Sign Model Crash
    • Job Selection Menu corrected to allow selecting all Jobs/Roles again
    • Bard Song Duplication issues
    • Player Data Remove not working
    • NPC Flying 0 Gravity Corrections
  • CustomNPC+ 1.10.1

    release3 июня 2025 г.
    • Fixed Imported Scripts not loading first
    • Fix getTopBlock()
    • Prevent Scripts from Saving Empty when opening and closing too quickly
    • Fixed Negative Values on Magic Interactions
    • Fix Corner Couch Rendering
    • Added Right Click Event for Players
    • Fix CustomGuiClose Event
  • CustomNPC+ 1.10

    release29 мая 2025 г.

    Features :hammer_pick:

    Animation Events

    Synchronize animations across ALL CLIENTS with server-controlled frame timing for precision scripting.

    New Event Types:

    • Started
    • Ended
    • Frame Enter
    • Frame Exit

    Utilize Animation ID and Animation Frame to trigger events on NPCs, Players, or All NPCs.

    Profiles

    Player Profile Support is now integrated for CNPC+ and DBC Addon. They can be disabled within the configs of CNPC+. Profiles are similar to a form of Character Slot, that allows players to create profiles that save CNPC+ information (quests, dialogs, etc) and if DBC Addon is installed all the subsequent DBC Data / Information.

    Permissions for Profile Management:

    • customnpcs.profile.admin – Admin-level commands and tweaking
    • customnpcs.profile.create
    • customnpcs.profile.delete
    • customnpcs.profile.rename
    • customnpcs.profile.change
    • customnpcs.profile.max.NUMBER – Set the maximum number of slots allowed per player

    Switch profiles via the /profile command or the in-game GUI (Profile Inventory).   Profiles support automatic backups (configurable in the Main Config) and can be rolled back using: /profile rollback PLAYER filename

    Profile / Quest Changes

    • Quest Cooldowns: Automatically adjust to the maximum allotted time when switching between MC and RL components.
    • Custom Cooldown Times: New RL Custom and MC Custom options with API support and a GUI component.
    • Quest Profile Options:     - Cooldown: Choose between Sharing (one slot’s cooldown prevents acceptance on all slots) or Individual.   - Completion: Choose between Sharing (completion on one slot marks all as complete) or Individual.

    Model Rework

    Most models have been redesigned by @Artist and @popsiclenate. Legacy models are still available in the Client Config.

    New Tools:

    • Npc Brush :paintbrush:     Set COLORS/HUES for colorable blocks (e.g., Couches, Banners, Lamps).
    • Npc Hammer :hammer:     Modify specific models:   - Adjust chair positions (tucked in or out)   - Change banner variation textures

    Hud Rework 👁️

    The Quest Tracking and Quest Compass now use Marks along with a revamped Hud System that can be tweaked via the CNPC+ Inventory GUI.

    Features:

    • Drag, resize, and manually edit hud components in the Client Config.
    • Option to disable any hud component.
    • Upcoming: Quest Objectives integration into the Compass Hud for setting coordinates on tracked quests.

    Linked Items 🔗

    A new Linked Item System functions similarly to the Scripted Item System but uses its own item type.

    Features:

    • Create Linked Items in the Global Menu under the Linked Tab and script them there.
    • Update all Linked Items by clicking the Version button (triggers the onVersionChange event).
    • Note: Linked Items update visually only after entering a player's inventory.

    Anvil Recipes 🛠️

    The CNPC+ Anvil now has dedicated functionality, distinct from the Carpentry Bench.

    Features:

    • Configure Anvil Recipes in the Global Menu under Recipes by switching to the Anvil System.
    • Customize repair processes for Weapons/Tools with configurable XP and Material Costs.
    • View all Anvil Recipes created by players directly on the Anvil.

    Custom Effects ✨

    Custom Effects can now be added through the Global Effects Menu and applied with the /kam effect command.

    Events:

    • OnAdded
    • OnTick
    • OnRemoved

    Features:

    • Fully scriptable via the GUI.
    • Effects appear on the left side of the CNPC+ Inventory (unless on the Quest Tab).
    • The same command is used in DBC Addon for built-in effects.

    Magic 🧙

    Access the Magic System via the Global Menu to create and configure Magic Elements, enabling dynamic interactions similar to a Pokémon-type system. You can also switch to view Magic Cycles which allows you to configure visual diagrams displaying your Magic System. [ADD SYSTEM TO VIEW FOR PLAYERS]

    Features:

    • Define additional damage or resistances (negative values).
    • Apply Magic Elements to NPCs (via the Advanced Tab) and Players (via the PlayerData GUI in the Global Tab).
    • Damage Splitting:     For instance, an NPC dealing 100 damage with both Fire and Water magic can split the damage (e.g., 70% Fire, 30% Water), resulting in 70 Fire damage and 30 Water damage.
    • Enables interaction boosts and dynamic combat calculations between different magic types.

    Attributes 📊

    Item Attributes are now available via the /kam attribute command! Attributes are a system of stat enhancements that be made to Players by giving their items and armors specific values. This system is also extended upon in DBC Addon allowing Stat buffs to DBC based attributes.

    Commands:

    • List Attributes:     /kam attribute list [page]     (Permission: cnpc.kamkeel.attribute.list)
    • Apply Attribute:     /kam attribute apply <attribute> <value> [magicID]     (Permission: cnpc.kamkeel.attribute.apply)     - Standard example: /kam attribute apply main_attack 5   - Magic example: /kam attribute apply magic_damage 3 101
    • Remove Attribute:     /kam attribute remove <attribute> [magicID]     (Permission: cnpc.kamkeel.attribute.apply)
    • Manage Requirements:     /kam attribute requirement <apply|remove> <requirement> [value]     Example: /kam attribute requirement apply quest_active 2

    Tooltip Details:

    • Base Attributes: Health, Main Attack Damage, Neutral Damage.
    • Modifiers: Percentage boosts (e.g., Main Attack Boost, Neutral Boost).
    • Additional Stats: Critical Chance, Critical Damage.
    • Magic Attributes: Detailed info including Magic Damage, Magic Boost, Magic Defense, Magic Resistance, and their magic IDs.
    • Requirements: Shows any conditions that affect attribute activation.

    For full details, visit the Item Attribute System Wiki.

    Other Changes:

    • Added Faction Passivity for Lowering Memory Usage
    • Allow Custom Trails for NPC Projectiles / Links
    • Fix FakePlayer Crashes
    • Completely remade Packet System
    • getRotation() fix for NPCs
    • Added Soulbind & Slot Bind Requirements to Item Attributes
    • Added NPC Magic Book Item
    • Fix Overlay Crashes
    • Fix Animation Offets
    • Better NPC Advanced Permissions for Traders. Markets, Roles, Dialogs
    • Ranged Attack Modifications (Sound Options now can be set for Per Shot or On First Shot)
    • Machine Gun config in Item Config
    • A BUNCH OF OTHER MINOR CRASH / BUG FIXES

    Scripting

    API: LINK

    Scripted Action Manager

    -- ADD DETAILS to Scripted Action Manager

    Other Scripting:

    • setAimType,  getAimType
    • IAttributeHandler -- For Item Attribute Scripting
    • IMagicHandler / IMagic
    • ICustomEffectHandler 
    • Profile Events, Change, Rename, Switch
    • ILinkedItem
  • CustomNPC+ 1.9.3

    release1 октября 2024 г.

    1.9.3

    Changes

    • Support for DBC Addon
    • Changes to Flying Height API
    • Optimize Render Events for JBRA Client
    • GuiScrollWindow
    • Entity Field to CNPC Natural Spawn Event
    • HTTP Posts are Multithreaded
    • Scroll Wheel works in Scripting Menu and other GUIs
    • Breaking Carpentry Bench shows Plank Textures instead of Lava
    • Reduce Lag on Scripted Items during Right Click Event
    • Improved Barrel Model (To Be Changed)
    • Tint Damage during Hurt Effects
    • Animation Frames can be Copy and Pasted with Keybinds CTRL + V and CTRL + C
    • Script Loading performance Improvements
    • Scripts Save Asynchronously after Editting
    • Allow setLootItem to be set to Null for Empty Item

    Fixes

    • Music Memory leak fixes
    • Entity Null bug on Kill Quests
    • Animation Null bug on Player Models
    • Fixes to Sneaking while Animating
    • Animation GUI now closes correctly with ESC
    • Player Specific Invisible to Client Fixes
    • Soulstoning Animals works again
    • Auto Completed Item Quest Fixes
    • Swing Packet only Sent to Server Side
  • CustomNPC+ 1.9.2

    release9 апреля 2024 г.

    Changes

    • Sync / Save Scripts asynchronously on closing Player / Forge / All Npc Tabs
    • Scripted Block now renders more like a block with shadows [TileEntities do not cast sky shadows]
    • Scripted Block hover selection only shows if Block is Visible and not when not passible
    • Send Swing Event only to Serverside
    • Ping Client to Reload NPC on Url Changes
    • Scroll Bars reset when typing into Search Bars
    • Added Acceptable and NotAcceptable Availability options for Cooldown Detection
    • Added scriptCommand hook
    • Some colored blocks now render in banners correctly
    • Send PlayerData in Chunks to prevent SYNC_END overload
    • Added createNew() IItemStack
    • broadcast() for IWorld
    • has() clone in ServerCloneControllers

    Fixes

    • Better MorePlayerModel+ Handling for Overlays
    • Fix Tint Hurt Damages
    • Fix HasCode() not checking for Loaded Scripts
    • Fix Item Quest on Pickup calculating Quest Reward too quickly
    • Fix setLootItem(null)
    • Casting Fixes for FakePlayer
    • Scripted Block Text Compounds not saving
    • Better Null Crate handling
    • Gui Trade Setup Cutoff
    • Fix setLore clearing item titles and other display objects
    • Banner Items Rendering Above
    • :skullclown: removed another print
    • Fix removeItem() considering ignoreNBT and ignoreDamage properly now
    • Fix set ServerCloneController
    • Fix Sound Selector not visually updating right away after choosing
    • Permission Handler error for isOp on Client Side
  • CustomNPC+ 1.9.1

    release28 марта 2024 г.

    Changes

    • Was in 1.9 -- Added Quest Manual
    • /kam quest objective command for completing objectives for parties and players on quests
    • Added an isOp Permission check for all permissions
    • Add setIsNormalItem() and isNormalItem() to Scripted Items to make items held / render like default MC Items

    Fixes

    • Switching Skin Overlay URLs / Textures maintains Glow / Solid
    • Fix Scripted Block Null on Save
    • Fix Scripted Block Events event.block null
    • Fix GUI Texture Selector cutting off texture paths
    • removed print statement
    • Fixed Scripted Item ghost items when being dropped
    • Fixed DBC Custom Item Models causing Player Animation rendering crash
    • Adding more dialog images with different indexes don't crash
    • Fix Player Animations not rendering when switching dimensions
  • CustomNPC+ 1.9

    release22 марта 2024 г.

    1.9

    MASSIVE RELEASE TONS OF CHANGES.

    NEW

    • Entire Party System!! SEE GITHUB WIKI
    • TEXTURE REVAMP for ALL ITEMS to more Modern Look
    • Client Side Animation Cache
    • Animations now also have an ID
    • /kam animation to play animations on a player via a command
    • Brand new configs in mixins.cfg to disable and enable animation functionality.
    • First Person Animation rendering
    • Timeline Viewer for all Animations Frames [with Color Picker for categorizing]
    • Dialog / Quest / Sound / Texture Selection Revamped with new Dynamic Popup Selection
    • Dialog Test Button for directly testing dialogs from within the GUI
    • Script Syntax Highlighting
    • Quest Log Categories are now SCROLLABLE :closed_book:
    • Factions GUI now displays 2 columns and is fully hideable in the config/CustomNpcPlus/client.cfg
    • Settings Tab
    • Clear Quest Tracking
    • Clear Skin Cache
    • Modify Quest Tracking [Position, Offset, and Scale]
    • For Dialogs with Noise and Gradual Speed - Edit Values
    • Hide Chat Bubbles / Alert Banners / Chat Info Message
    • Party Tab (read party changes)
    • Hoverable Text in all GUI Lists (Now you can see values fully)
    • Code Highlighting in Scripting Menu
    • /kam command [ScriptedCommandName] to run Scripted Commands via a normal comamand
    • New APIs for added content: IParty, IHitBoxData, ITintData, IMark,
    • IRoleFollower
    • Combat Policy API
    • SET/GET Melee Range, Swing Warmup, Knockback, Aggro Range
    • ILine for Attack, Killed and World Lines
    • Better Hotkey Handling Ctrl + X, C, V, Z, Y... etc
    • Mouse Drag selection in Script GUI.
    • Banned Scripting Classes editable in the main.cfg
    • IVillager for modifying Villager Trading
    • IScreenSize for sending Client Screen Size to Server
    • URL Support on **Capes **and Overlays
    • Spawner Job 2 new AI Variations (Spawns on Summoner Death, Kills Spawns when Summoner Dies)
    • Blocks can now be used in Banners / Hanging Banners / Signs
    • /kam is the same as /kamkeel
    • /kam questcat command
    • /kam dialogcat command
    • /kam overlay command
    • /kam config market allows for Market conversion from JSON to DAT filetype similar to /kam config playerdata, The Market Dat feature must also be enabled within the main.cfg
    • 3 New Shield Types: Frost, Mithril, Demonic Full Variations
    • Added Pounce as a Leap option for NPCs. So now you have Jump and Pounce (Pounce is way further)
    • Friendly Fire and Party Configs for enabling / disabling functionality
    • Better naming for CNPC+ related mobs in Entity Selector
    • Enhanced Build Gradle
    • 2 New Tail Types Monkey (Remade to look like DBC's Tail) and Fox Tail
    • Marks from 1.12
    • Tint Modification Settings
    • Hitbox Modification Settings
    • New Permissions (Printed to Console on Start)
    • Multi-Commands broken up by @x
    • Combat Policy System -> See Discord for Details

    FIXES

    • Clicking through Animation Deletion Bug
    • Animations and Armors Desyncing
    • Animations slowing down and speeding up
    • Animations now playing in different dimensions
    • Mouse Scroll working in all scrollable text areas
    • Quest Dialog Selector popping off of screen
    • Trader GUI Setup cutoff
    • Autocomplete Quest Tracking no longer displays an NPC name
    • Top Alignment Dialog Fix
    • Dialog Image Positioning Fix
    • Shift Clicking in Carpentry Bench now updates client inventory
    • getWorld for End and Nether Fix
    • Script Book not hooking Book and Quill
    • getIRoleType returning wrong values
    • npc.updateEntity() to fix dimension ID error for updateClient [fixes existing NPCs]
    • getStoredDataKeys Crash
    • Scripted Particles spawned on summoners player not at proper Y Value
    • Resizing Scripting GUI clears Script
    • Scripted Items being dropped and bobbing in items frames
    • Melee Swing and RangedLaunch Event not being called
    • Custom GUI Item Slots not registering
    • getLeftItem Typo Fix. Both misspelled and correctly spelled are available
    • Inventory Tab Offset Issue
    • Fix Remote Freeze Button not showing the correct option
    • Removed Nashorn Size of Object Dependancy for Java 17 Support
    • Buttons highlighting even when a Sub GUI is pulled up
    • Mouse Overlap Double Clicking buttons
    • World Lines spamming, now has cooldowns
    • Item Giver Job having shared cooldowns (if still broken remake item givers from scratch)
    • HD Textures not loading on NPCs
    • Dispenser Soulstone Crash
    • Kill Projectiles after 1 minute of lifetime
    • Quest Location Crash Fix
    • Scroll Tag Crash
    • 3D Layer Duplicate for Chestplate
    • Spawner Job NPC Bouncing
    • Spawner Job "X" Button
    • DBC Add Bonus Crash
    • Singleplayer Cache not clearing
    • Imgur Redirect Links
  • CustomNPC+ 1.8.6

    release23 июня 2023 г.

    CustomNPC+ 1.8.6

    1.8: Changes 1.8.1: Changes 1.8.2: Changes 1.8.3: Changes 1.8.4: Changes 1.8.5: Changes

    Just a quick bug fix and command overhaul with some new quest and dialog commands that will be extremely useful! Client Cache is now fully tested and in place!

    THE QUEST ROLLBACK BUG IS NOW FULLY FIXED with the new PLAYER DATA CACHE!

    Changes

    • Added /kam as a command alias for /kamkeel
    • Added /kamkeel questCat Command
    • Added prereq, info, and id to quest command
    • Added /kamkeel dialogCat Command
    • Added availability, info, and id` to dialog command
    • NPC Texture Caching (Less URL Requests)
    • Particle Texture Caching (Fixes Particle Flickering)
    • Added Cache Time to client config

    Fixes

    • Fix PlayerData not being removed from Cache
    • Tracked Quest not clearing between worlds/servers
    • DBC Render Error
    • Added noppes command warning (Unsupported)
    • CustomOverlayLabel and Line weird layering bug
    • CNPC+ Logs only PRINT to CustomNPCs Logs (Not Console)
    • Quest/PlayerData Rollback Bug
  • CustomNPC+ 1.8.5

    release4 июня 2023 г.

    CustomNPC+ 1.8.5

    1.8: Changes 1.8.1: Changes 1.8.2: Changes 1.8.3: Changes 1.8.4: Changes

    Changes

    • PlayerData DAT format (Huge Performance Boost for PlayerData loading/saving)
    • Client Image Cache - Added a Client Image cache for Particles, NPC Url Textures, URL Items, etc. There is now a config associated with this in CustomNpcPlus/client.cfg
    • Moved PlayerDataMap.dat location to inside customnpcs folder rather than playerdata folder
    • PlayerData Converter Commands /kamkeel config playerdata

    Fixes

    • Set Engine - Memory Leak/Timing Out
    • Bad PlayerData JSON loading issue with CPU hogging
    • Player Animations DBC render issue
    • Script Saving Issue
    • Fix NullPointer Natural Spawns Crash

    PLAYERDATA DAT FORMAT

    We are introducing a new playerdata format that can extremely benefit larger servers with an active player base. There is no danger in using this format. You can see playerdata loading/saving improvements of upwards of 100x.

    HOW TO CONVERT PLAYERDATA

    I suggest you whitelist your server and only have one player online when converting playerdata. You must have file access. Converting will NOT delete your existing data

    1. Utilize /kamkeel config playerdata dat/json convert - Wait for complete message
    • dat will clone all JSON playerdata and convert them into dat and put them into a new folder.
    • json will clone all DAT playerdata and convert them into json and put them into a new folder.
    1. Stop your server/close your world
    2. Go into customnpcs folder for your world and remove/rename your playerdata folder. You may keep it somewhere else if you'd like.
    3. Rename playerdata_new folder to playerdata
    4. Go into SERVER config - CustomNpcPlus/main.cfg and enable B:"Dat Format for PlayerData"=true. FALSE if you want to go back to using JSON
  • CustomNPC+ 1.8.4

    release1 июня 2023 г.

    CustomNPC+ 1.8.4

    1.8: Changes 1.8.1: Changes 1.8.2: Changes 1.8.3: Changes

    Changes

    • Added functionality to Search in Cloner by typing in the TAG_NAME - Included in Search
    • Improved Dialog Loading Performance
    • Added Search to BankData Menu
    • Made NPC Quick Tags CLOSE on save.
    • ItemToss Event is Cancellable
    • Improved Script Performance

    Fixes

    • Fixed Quest Progress not saving on completion (ATTEMPTED)
    • Fixed Player Animations not moving body parts
    • Removed Duplicate Quest Complete message on Auto Completed Quests
    • QuestData NullPointerCrash on QuestKill
    • Removed Crate FIX to remove Crash
    • ItemSlot CustomGUI Crash
    • ItemSlots not using correct Slot ID
    • Better accuracy for getLookingAtBlock()
    • Fixed an issue where scripts would still run the old version of themselves after being edited.
  • CustomNPC+ 1.8.3

    release17 мая 2023 г.

    -- Removes the majority of multithreaded packet sending due to synchronization issues.

  • CustomNPC+ 1.8.2

    release16 мая 2023 г.

    CustomNPC+ 1.8.2

    1.8: Changes 1.8.1: Changes

    Changes

    • Add support for BUKKIT Permission Handling in Bukkit Plugins for KAMKEEL Commands
    • Fully Multithreaded Packet Sending for better server performance and efficiency
    • Added Regenerate PlayerMap Button

    Fixes

    • Fixed UUIDs not saving on NPCs when spawning a new one via SoulStone/Clone
    • Fixed Recipe Search crash when recipe output is blank
    • Fixed Quest Cooldowns reading incorrect time.
    • Fixed Quests not displaying Completion
    • Null Check to potentially fix fatal error on Crate
    • Fixed Player Animations rendering corruption while holding a 3D Item
    • Fixed Quest Tracking disabling or not updating properly
    • Multithreaded Quest Data MAY fix Quest's not saving on bigger servers
  • CustomNPC+ 1.8.1

    release11 мая 2023 г.

    CustomNPC+ 1.8.1

    1.8: Changes

    Changes

    • Renovated /kamkeel commands with better messages/feedback
    • Improved Tab Completion on /kamkeel commands
    • Added PlayerData Map file for quicker PlayerData GUI Loading/Synchronization
    • Added Mixin Config

    Fixes

    • Fixed Natural Spawning not working
    • Fixed Quests Data not saving correctly into PlayerData
    • Fixed Mixin Crash (Server-Side)
    • Fixed Client Config not correctly saving [Ported Mixin to Mixin Config]
  • CustomNPC+ 1.8

    release9 мая 2023 г.

    CustomNPC+ 1.8

    CNPC+ Changes

    Animations

    Animations can now be utilized through scripts! They can either be made using scripts or made in the fancy new Animation Maker GUI! You can access this via the Global Menu! See API or JavaDoc for how to script Animations! Animations will also be saved as JSONs so you can EXPORT them and SHARE!

    2023-05-09_14 29 44

    Tags

    There are new tags available to be added to NPCs. They can be used to help organize, filter, and sort through NPCs in your Cloner. Tags can be directly applied via the Cloner or they can be applied within the Advanced Tags page within an NPC. Tags can be created via the Global Menu and the colors/hidden properties can be customized there!

    image

    Rotation Menu

    In order to make the new Animation System function as intended. The PUPPET JOB has been completely removed and converted into a ROTATION Menu. You can use this menu to rotate ALL NPCs regardless of their job. Upon updating, your Puppet Jobs should AUTOMATICALLY convert to the new Rotation Menu. Do note, PUPPET scripts will be the only thing to break :(

    image

    Event Scripts

    Similarly to the 1.12 System you can now add multiple event-oriented scripts directly to an NPC. This will not clear any of your current scripts. It is completely optional to use.

    image

    Quality of Life

    • New /kamkeel command (With Better HELP MENU) [/noppes still available]
    • Recipe Menu Search Bar
    • Faster/Efficient Global PlayerData viewer
    • Overhauled Config (Saved in CustomNPC+ Folder)
    • Natural Spawning Dimension CONTROL (Should help with issues within LOTR)
    • Client-Side disable QUEST POP UPS

    API

    • Scripted Item URLs
    • Limbwear API Functions
    • IModelData additions
    • IProjectile API
    • IDBCPlayer Improvements
    • ISound changes

    Fixes

    • Changes to Dialog Quest Logic
    • Fixes to Quest Saving Logic
  • CustomNPC+ 1.7

    release9 мая 2023 г.

    CustomNPC+ 1.7

    The next version of CNPC+ is finally out! It features a bunch of fixes, improvements and quality-of-life changes!

    CNPC+ Changes

    Flying Improvements

    Finally! I am happy to announce that FLYING has BEEN EXTREMELY improved! The AI is not only intelligent but resource efficient! So do not be afraid to SPAM flying NPCs! As always, if you find bugs please report them!

    Saving PlayerData (please backup, just in case)

    Improvements have been MADE to Saving (and will not result in the crazy compression fiasco we had). It has reduced the amount of PlayerData calls and pushed them to a separate Thread to reduce SERVER LAG and improve PERFORMANCE for Large PlayerData files! Thanks to @EverNife

    CNPC+ Logging

    I have decided to implement a clean logging system for servers to use! There are 2 Formats for Logging! (must be enabled in config)

    ALL LOGS are printed to the CustomNPCs Log files. And if on a SERVER, WILL ONLY print to SERVER CUSTOMNPCs LOG FILEs

    Examples ----

    • Player Logging
    [21:51:50][CNPC][SCRIPTER] Kam OPEN NPC Asher (-46, 39, -1103) [World]
    [21:51:50][CNPC][SCRIPTER] Kam SAVED NPC Asher (-46, 39, -1103) [World]
    [21:59:20][CNPC][WAND] Kam OPEN NPC Asher (-46.5, 39.0, -1103.5) [World]
    [21:59:21][CNPC][WAND] Kam CLOSE NPC Asher (-46, 39, -1103) [World]
    
    • Script Logging
    [TICK] NPC Bob (World) (-8301, 90, -7848)
    [INTERACT] NPC Joe (World) (-8301, 90, -5423) | Objects: [EntityPlayer, Kam]
    [DAMAGED] NPC Bill (DIM-1) (-1304, 90, 3021) | Objects: [EntityPlayer, Kam]
    

    Fixes

    Fixed ForgeGradle not downloading in build.gradle Fixed Height off the Ground for Flying Fixed Unused Wing Textures not in selector Fix ScriptingEnabled not actually disabling scripts Fixed Null Tile Entities Crash Various Crashes

    API

    There is NOW an official CNPC+ API This API can be hooked onto by other mods and plugins that you all wish to develop! We will continue to update this API and add even more diverse functionality to it than the original!

    https://github.com/KAMKEEL/CustomNPC-Plus-API

    API Fixes

    All functions that take double values for positions now have functions that take IPos objects as well. IBlock, IPos, IEntity, and IWorld now have readalbe toString functions. NpcAPI: Added getAllInBox(IPos,IPos) function, returns all IPos objects inside the box created by the two positions. Added getPlayer() function Added getChunkLoadingNPCs function Added getCurrentPlayerCount, getMaxPlayers, kickAllPlayers, isHardcore, getFile(path), and getServerOwner functions added IPos: Added crossProduct(IPos), divide(scalar), and to/FromLong functions. IBlock: Added setPosition functions Spawner, Transport, Healer, Guard, Bard jobs and transporter role received more functions. IAnimal, IEntityLiving, and IEntityLivingBase received more functions from their MC counterparts.

  • CustomNPC-Plus-1.6.3

    release5 октября 2022 г.

    1.6.3

    *Backup before use Report Bug

    ⚙️ More Fixes

    • Holding Item Fix
    • Solid Overlays Fix
    • Soulstone Placement Fix
  • CustomNPC-Plus-1.6.2

    release4 октября 2022 г.

    V 1.6.2

    Fixes

    • Fake Player Error #60
    • Add Mixins for Overlay Support [Optifine...., etc]
    • Quest Errors - Tracking, Crashing
    • Microblocks Duplication Glitch
    • Flying Code Processing Improvements (Less Lag)
    • Dialog Cut Off Fix
    • 3D Item Rendering Fix
    • SkinOverlay Transparent (Default)
    • Entity Soulstone Positioning
    • Cloak Damage White Flickering
    • Waypoint Error

    V 1.6.1

    • Fix GlowTexture from OLD NPCs not loading

    V 1.6

    CNPC

    ☑️ 64x64 SELECTED Textures Compatible on ALL Models (Steve, Alex, Steve64)

    There are no more /64-Textures/ for CNPC Entity Textures. All 64x32 have been removed and replaced with 64x64 versions. All NPCs that have "/64-Textures" selected should automatically change. From now on 64x64 Textures WILL work on all Human Model types. 64x32 will work on Steve32 Only. (This only affects the texture selector, not the URL or Username selection)

    ☑️ Solid NPC Overlay

    Button added to NPC Display section. Options: Glow or Solid. Glow is enabled by default for overlays, but the new Solid option will remove the glow and transparency for overlays. (Examples: Scars, Bruises, Blood, etc)

    ☑️ Quest Tracking

    To track or untrack a quest, open the quest tracker and click "Track". Tracked quest objectives will update as objectives are completed on an overlay GUI to the right of the screen.

    ☑️ Additional Visual Dialog Options

    All options are visible from the "visual options" button in the dialog creation menu. These include custom images with a configurable limit, offset and scaling options, gradual & instant rendering options, and much more. Dialog pauses have been added! Adding a number in between brackets ( {10} for example) will delay dialog rendering by that many ticks.

    ☑️ Natural Spawning Options

    Up to 5 NPCs can be added, and different spawning behaviors and heights can be configured now.

    ☑️ NPC Breathing Types

    NPCs can drown in water [Default], in air but not water (like squids), or not drown at all.

    ☑️ Cloak Invisibility

    Cloaks become invisible if the NPC is invisible.

    ☑️ Potion Amplification

    DirectionalButtons to Melee Potion Effects -- (Amplification up to 10) [Will be added to ranged in release of 1.6)

    ☑️ Entity Model Overlays

    Entity Models can now use overlays with any texture selected

    ⚙️ More Fixes

    Flight pathing has been improved. Speed calculations have also been improved, most importantly vertical speed now functioning like it should: increasing the rate at which an NPC climbs/descends heights while flying, and not resulting in wacky speeds now. Try it! Removed MorePlayerModel dependency for parts (again, sorry.) Added config for only operators to view/edit scripts, and for only a list of players with given UUIDs to view or edit scripts. Added a config to allow for scripts to be expanded past the 65k character limit. Every additional increase of the config adds another 65k characters to scripts. Fixed quest tracking not being able to be removed. Fixed concurrent modification crash with PlayerQuestData Knockback Enchantment / Critical not taken into account for Knockback Resistance Fixed NPC Follower Role

    API

    ☑️ Scripted Items

    Found in the creative menu, you can now script your very own custom items! Shift-Right-Click in creative mode with the item in your hand to access its scripts (event hook list on the left side of the GUI). Scripted Items can be held by any entity, have custom textures with URL support, rotate in every axis, be scaled to be smaller/larger, be offset in the entity's hand, have a custom max stack size, have a custom color, have a custom item use action (nothing, block, bow, eat, drink), can have their enchantibility changed, among some other functions. Try it all out, go nuts!

    ☑️ NPC & Player Skin Overlays

    Players can now also use overlay textures, and both NPCs and players support several overlays, denoted by their ID! These overlays are compatible with JinRyuu's Dragon Block C and other custom player renderers. Each individual overlay can have custom textures with URL support, glow, blend with textures below it or not, have custom alpha values, have custom sizes, be offset from the player or NPC, scale its texture up/down, and apply a texutre "speed", making the texture move accross the entity.

    ☑️ Massive Scripted Particle Update

    You can now control several attributes of scripted particles, such as alpha values, size, directory with URL support, texture scale, position, color interpolation, rotation in every axis, whether the particle faces the player, particle animation, and more. Additionally, particles can now be set to spawn in a position in the world, not just on an entity (Now called IParticle instead of ScriptEntityParticle for this reason). Packets to the client are optimized to send only the necessary data to create the desired particle.

    ☑️ Global Data Handlers

    Instead of using an IWorld object for modifying global faction/dialog data, you can now access and modify that data through handler objects gotten through the NpcAPI class:

    var factionHandler = API.getFactions(); //Returns global faction data as an IFactionHandler object.
    var recipeHandler = API.getRecipes(); //Returns global recipe data as an IRecipeHandler object.
    var questHandler = API.getQuests(); //Returns global quest data as an IQuestHandler object.
    var dialogHandler = API.getDialogs(); //Returns global dialog data as an IDialogHandler object.
    var cloneHandler = API.getClones(); //Returns global clone data as an ICloneHandler object.
    var spawnsHandler = API.getNaturalSpawns(); //Returns global natural spawn data as an INaturalSpawnsHandler object.
    var transportHandler = API.getLocations(); //Returns global transport data as an ITransportHandler object.
    

    You can then modify and create data objects for these handlers through their functions (be careful when updating large amounts of data), which are all visible on...

    ☑️ Differing IItemStack Types

    Item stacks are now converted into IItemStacks exclusively through the NpcAPI, which means they can be easily categorized into different types! For now, the only types are:

    - scripted
    - book
    - block
    - armor
    - other (regular IItemStack like in previous versions if it's not any of the other types)
    

    The first four types have their own set of functions available to only that type of IItemStack, and can all use the regular IItemStack functions.

    ⚙️ Additional API Additions

    • ISound: New interface for manipulating sounds, all sounds can be tied to an ID to stop/pause/continue them. Various sound attributes like pitch, volume, and position can be modified.
    • NpcAPI: Added new functions for use with the ISound interface: createSound(), playSound(), pauseSound(), continueSound(), stopSound(), pauseSounds(), continueSounds(), stopSounds(). These functions play to players in all worlds.
    • NpcAPI: Added stopServer() function with a configurable shutdown message.
    • IWorld: Added above ISound functions to manipulate sounds for a world in particular.
    • IPlayer: Added new ISound functions that only affect a player in particular.
    • IWorld & ICloneHandler: Added new spawnClone() function that checks for entity spawn protection.
    • IWorld: Added getEntitiesNear() function with position and range parameters.
    • IWorld: Added rayCastPos() function for when rayCastBlock() returns null.
    • IWorld: Added rayCastEntities() function
    • IEntityLivingBase: Added getLookPos() and getLookingAtEntities()
    • IPlayer: Added isScriptDev() function to determine whether a player is allowed to view and edit scripts.
    • IPlayer: Added functions that use IDialog & IQuest parameters to change quest & dialog data instead of IDs.
    • IPlayer: Added kick() function with a configurable message/kick reason.
    • Added PlayerEvent.AttackEvent & PlayerEvent.AttackedEvent to completely cancel attack events, preventing knockbacks/hits from occuring to or by the player.
    • PlayerEvent.MouseEvent: Added isCtrlPressed, isAltPressed, isMetaPressed, isShiftPressed, and keysDown fields.
    • IParticle: Added general spawn() function, replaced spawnOnEntity and spawnInWorld. Former functions deprecated.

    ⚙️ And TONS of more functions added to pre-existing API classes: View all of them on the Javadoc!

    ⚙️ API Fixes

    • Fixed some timer functions causing crashes instead of exceptions.
    • Fixed scripting text area modification being VERY slow on large scripts (>200k characters)
    • Fixed mouse wheel changes not triggering a mouse event.
    • Fixed image u,v values for custom GUI and overlay textured rectangles.
    • Fixed hover text for custom GUI buttons
    • Fixed images with uneven widths/heights not rendering correctly for scripted particles.

    CustomNPC+ Dark Mode

    Release V 1.0

    CustomNPC+ Java Doc

    CNPC+ API Docs

1

Совместимость

Minecraft: Java Edition

Платформы

Поддерживаемые окружения

Клиент и сервер

Сведения

Лицензия:All Rights Reserved
Опубликован:3 года назад
Обновлён:3 месяца назад
ID проекта:
Главная