NPC

Non Player Characters (abbreviated as NPCs) are both passive and interactive mobs that have model similar to villagers. They are exclusive to and

Spawning
Unlike other entities, NPCs do not spawn naturally; they can be spawned using the NPC spawn egg, or by using the command. When spawned, an NPC displays a name hovering over its head. The default name is "NPC" with a color code of, resulting in the name being yellow.

Behavior
NPCs have no AI. They can neither move nor be pushed by other entities. They also cannot take damage nor be affected by potions. Nevertheless, the NPCs can still turn their body and stare at the nearest player if close enough. The NPCs can be pushed by sticky pistons from below or sides with a slime block attached and they can slide on ice when pushed. NPCs can also block minecarts from passing. Minecarts cannot go through NPCs for some reason.

NPCs are invincible, meaning that projectiles pass through them. However, if an NPC falls through the void, they instantly despawn.

Interface
Right-clicking an NPC displays the interface. It can be edited only as long as the player has the world builder permission. The interface allows the player to edit the dialog, name, appearance and advanced settings. When the player doesn't have the world builder permission, it shows only the dialog and buttons.

Customization

 * Name
 * The name of an NPC can be entered in the top text pane titled "Name". The text limit for the name is 32, and the color can be changed by using the color codes as by default the color is yellow (§e).


 * Dialog
 * The dialog box located right below the "Name" and often used as a tool for guiding. The text limit for the dialog is 256, although in some cases it appears as 337.


 * Appearance
 * NPCs appearance are selectable, to change the skin simply just by left clicking on the preferred skin.
 * There are currently 20 skins available for the NPCs and defaults to the yellow-robed NPC.


 * Advanced Settings
 * The advanced NPC settings consists of URL and commands. They are used to create interactive buttons. The current maximum advanced settings that can be added is 6.
 * URL
 * The URL feature allows the player to add a hyperlink button. The URL can be entered at the first input box below the title up to 1024 letters.
 * To change the button name or label can be proceeded by filling the input box titled "Button Name", the current text limit for the label is 16 letters.
 * When added, the button appears only if the player has the world builder permission disabled. The button label defaults to "Learn More" and the color defaults to blue, it can be changed by using the color codes.
 * Command
 * The command feature allows the player to add one or more executable commands in the NPC. The command can be entered at the first input box below the title, unlike the command block multiple commands can be executed in one window. The current maximum letters for the command is 1024. The command(s) get executed when the dialogue with the NPC is closed.
 * The command can be presented either as a button or a direct command. As a button, the button name or label can be changed by filling the input box titled "Button Name", the text limit for the label is 16 letters. It can be executed only if the player has the world builder permission disabled.
 * When not added as a button, the command is executed after the dialogue with the NPC, visible by right clicking the NPC, has closed. In contrariwise, the button is displayed and has a label color defaults to light gray, and can be changed by using the color codes.

Trivia

 * An NPC instantly dies when going below Y=0 and makes player death sounds as it vaporizes.
 * The player can summon an NPC in Bedrock Edition by either using the command "/summon npc" or "/give @s spawn_egg 1 51".
 * The name of an NPC remains visible from a distance, even through walls.
 * Zoglins, withers and vindicators named Johnny attempt to attack NPCs. The NPC remains undamaged, as NPCs are invincible. However, the mobs still continue to attack.