90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!

CustomNPC-Plus-1.6-beta

Changelog

1.6 Beta

*Backup before use

THIS IS A BETA so EXPECT SOME BUGS Report Bug

CustomNPC+ Dark Mode

Release V 1.0

CustomNPC+ Java Doc

CNPC+ API Docs

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 effects 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)

⚙️ 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.)

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.

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

Files

CustomNPC-Plus-1.6-beta.jar(10.28 MiB) Primary Download

Details

Licensed ARR
Published 2 years ago
Updated 2 months ago