Saltar al contenido principal

Creando NPCs

webapp_banner.jpg

Configuración

isEnabled

Establece si un NPC está habilitado.

ClaveValoresPor defecto
isEnabledBooleantrue
Ejemplo
isEnabled: true

name

Establece el nombre visible de un NPC. Soporta Códigos de Color.

ClaveValoresPor defecto
nameStringnone
Ejemplo
name: "&aEnn Peecee"

create_npc_name.jpg


scale

Establece la escala (tamaño) del NPC.

ClaveValoresPor defecto
scaleMultiplier1.0

Al escalar, 1.0 representa el tamaño predeterminado. Para hacer la entidad más grande, aumenta el valor (ej., 1.2). Para hacer la entidad más pequeña, disminuye el valor (ej., 0.8).

Ejemplo
scale: 1.2

role

Establece el rol del NPC, debajo del nombre. Solo visual. Soporta Códigos de Color.

ClaveValoresPor defecto
roleStringnone
Ejemplo
role: "&c<Red Fellow>"

create_npc_role.jpg


profession

Establece la profesión del NPC, que determina su apariencia cuando no se usa un disfraz.

ClaveValoresPor defecto
professionProfessionNITWIT
Ejemplo
profession: NITWIT

create_npc_profession.jpg


greetings

Establece la lista de saludos que el NPC dice cuando un jugador se acerca.

ClaveValoresPor defecto
greetingsString Listnone
Ejemplo
greetings:
- Hi there!
- Good day.

create_npc_greetings.jpg


dialog

Establece el diálogo que el NPC dirá mientras un jugador esté cerca (En el caso del interactionType DIALOG, este sería el diálogo).

ClaveValoresPor defecto
dialogString Listnone
Ejemplo
dialog:
- I like apples!
- Sure is hot.

create_npc_dialog.jpg


farewell

Establece el mensaje de despedida del NPC.

ClaveValoresPor defecto
farewellString Listnone
Ejemplo
farewell:
- Until next time!
- Bye!

create_npc_farewell.jpg


canTalk

Establece si el NPC puede hablar.

ClaveValoresPor defecto
canTalkBooleantrue
Ejemplo
canTalk: true

activationRadius

Establece el radio en el que un NPC puede detectar a un jugador acercándose.

ClaveValoresPor defecto
activationRadiusDouble3.0
Ejemplo
activationRadius: 3.0

interactionType

Establece el tipo de interacción que hará el NPC.

ClaveValoresPor defecto
interactionTypeSpecial [1]none
Ejemplo
interactionType: TELEPORT_BACK

noPreviousLocationMessage

Cuando un NPC Teletransportador no tiene una ubicación anterior a la que pueda teletransportar a un jugador, mostrará este mensaje. Acepta Códigos de Color

ClaveValoresPor defecto
noPreviousLocationMessageStringnone
Ejemplo
noPreviousLocationMessage: '&8[EliteMobs] &cCouldn''t send you back to your previous location - no previous location found!'

create_npc_noteleportlocation.jpg


timeout

Establece la cantidad de tiempo, en minutos, antes de que un NPC desaparezca permanentemente.

ClaveValoresPor defecto
timeoutInteger0 (nunca)
Ejemplo
timeout: 0

questFileName

Establece las misiones que el NPC otorga.

ClaveValoresPor defecto
questFileNameString Listnone
Ejemplo
questFileName:
- my_quest_one.yml
- my_quest_two.yml

disguise

Establece el disfraz de LibsDisguises que tiene el NPC.

ClaveValoresPor defecto
disguiseLibsDisguises formatnone
Ejemplo
disguise: SKELETON

create_npc_disguise.jpg


customDisguiseData

Establece los datos para un disfraz personalizado de LibsDisguises.

ClaveValoresPor defecto
customDisguiseDataLibsDisguises formatnone
Ejemplo
disguise: custom:my_cool_disguise_name
customDisguiseData: player my_cool_disguise_name setskin {"id":"364acb6d-9050-46f7-b5fb-f8c3fd83a6fc","name":"Unknown","properties":[{"name":"textures","value":"ewogICJ0aW1lc3RhbXAiIDogMTYxMTk4ODA4Nzc1NSwKICAicHJvZmlsZUlkIiA6ICJkZGVkNTZlMWVmOGI0MGZlOGFkMTYyOTIwZjdhZWNkYSIsCiAgInByb2ZpbGVOYW1lIiA6ICJEaXNjb3JkQXBwIiwKICAic2lnbmF0dXJlUmVxdWlyZWQiIDogdHJ1ZSwKICAidGV4dHVyZXMiIDogewogICAgIlNLSU4iIDogewogICAgICAidXJsIiA6ICJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzliYmVkODQzNWY4YmYyNzhhZmUyNmU2NGZkOTI2YjhiMzc3MzJkODhlMzM0ODk3ZGJkNTI3ZDU2ZmY5MTk5MGUiCiAgICB9CiAgfQp9","signature":"ujLq1joYVktuQAp1xpFKlxQFUVinSePiDBiVCAxxix/mA5vP86i/eAOfb1mtGjaAZ6sO0l2olbzvycnGXNBtbAxgqprguROXY4tpWiePVTDmy3iD4GdOCxHAkYLoyMV5qTT4SNsldUFFuND8GSEgbNMltKDLmhNKwzm08iCigPfpeuYpwljgJPxu6ka54PKNaQu4doI0ZDZXKqq4hPhR3Bs2Sz9MI0SmdmQWwcCzUz3DFdVno27fmQ6LwqmT+eSoOv0EttVG/XMaTYQ5lhBY61mqf6WlJyYVUSfjJk1AbYsctu7dWM+sbY8jFq5ljvXJGGr5TyKi+fs8vHy06Z2go20QgTYOw+caFxFijAS6fgm3oY57VEO/+/9OLHdD+Z9BrWqQWcIIrVeIfxjue/yt4pyeVv9jX59hjNFjhcPEwotkxJ+vZ96WlTLWDG4BiqauDr2VeGyLlVaygO9ZU0wwsN65iSh91GI3tMIA5wbDR0Hts/9ABvt9eafHbowS+4SZXN0i9mYnKg7op1eiB8nMEAGsPJg3DwsmUrh3ACAapQ6eYHiJpo59RXDqKlRcXwo7wsEFp//5LgQWbPj0NP3nxnywdpozqSAeq6236qlhE9BT9eiyJ41V9sMelYFEWMlUAltR40NdbIrHB0J3nmfuLJz44/sTwWf6P1khOy//XX0="}],"legacy":false}

create_npc_custom_disguise.jpg


customModel

Establece el modelo personalizado de ModelEngine que usará el NPC.

ClaveValoresPor defecto
customModelStringnone
Ejemplo
customModel: MY_MODEL_ONE

arena

Establece el nombre del archivo de la arena para la que el NPC abrirá un menú (requiere el interactionType ARENA_MASTER).

ClaveValoresPor defecto
arenaFilenamenone
Ejemplo
arena: my_arena.yml

command

Establece el comando que ejecutará el NPC (requiere el interactionType COMMAND).

ClaveValoresPor defecto
commandStringnone
Ejemplo
command: say Look at me running a command, how cool!

create_npc_command.jpg


spawnLocation

Establece la ubicación de aparición de los NPCs. Deberías configurar esto a través del comando /em spawnnpc <npcfilename.yml>.

ClaveValoresPor defecto
spawnLocationStringnone
Ejemplo
spawnLocation: my_world,10,50,10,0,0

spawnLocations

Establece las ubicaciones de aparición de los NPCs. Deberías configurar esto a través del comando /em spawnnpc <npcfilename.yml>.

ClaveValoresPor defecto
spawnLocationsString Listnone
Ejemplo
spawnLocations:
- my_world,10,50,10,0,0
- my_world,-10,50,-10,0,0

instanced

Establece si el NPC debe ser instanciado (para uso en mazmorras instanciadas).

ClaveValoresPor defecto
instancedBooleanfalse
Ejemplo
instanced: false

Ejemplo de Configuración de NPC
isEnabled: true
name: "&cRed Rubin"
role: "&a<Generic NPC>"
profession: NITWIT
greetings:
- Hiya!
- Hello!
dialog:
- Great conversation!
- Pleasure talking with you!
farewell:
- Goodbye!
- Laters!
canTalk: true
activationRadius: 4
interactionType: CHAT
timeout: 0
questFileName:
- my_quest.yml #el interactionType del npc debe estar configurado como CUSTOM_QUEST_GIVER
disguise: SKELETON
customDisguiseData: #usado cuando se configura un libsdisguise personalizado
customModel: MODEL_ONE
arena: my_arena.yml #el interactionType del npc debe estar configurado como ARENA_MASTER
command: /say Hello World! #el interactionType del npc debe estar configurado como COMMAND
spawnLocation: my_world,584,55,127,90,10 #recuerda que los NPCs usan pitch y yaw para establecer hacia dónde están mirando. esto también se configura automáticamente al ejecutar el comando /em spawnnpc <npcfilename.yml>, así que asegúrate de posar donde quieres que el NPC esté mirando al ejecutar el comando.

create_npc_npc.jpg


Special [1]

La siguiente es la lista de tipos de interacción válidos para NPCs:

TipoDescripción
GUILD_GREETERAbre el menú del gremio de aventureros
CHATHacer clic derecho recorre el dialog
CUSTOM_SHOPAbre el menú de tienda personalizada
PROCEDURALLY_GENERATED_SHOPAbre la tienda generada proceduralmente
BARAbre el menú del bar
ARENAAbre el menú de arena
QUEST_GIVERAbre el menú de misiones generadas proceduralmente
CUSTOM_QUEST_GIVERAbre el menú de misión para una misión específica configurada en questFileName
NONESin interacciones
SELLAbre el menú de venta
TELEPORT_BACKTeletransporta a los jugadores de vuelta a la última ubicación de mundo no-elitemobs en la que estuvieron
SCRAPPERAbre el menú de chatarra
REPAIRMANAbre el menú de reparación
ENCHANTERAbre el menú de encantamiento
REFINERAbre el menú de refinación
UNBINDERAbre el menú de desvinculación
ARENA_MASTERAbre el menú de arena para la arena configurada en arenaFilename
COMMANDEjecuta el comando configurado en command

Para más información sobre lo que hacen el SCRAPPER y tipos de interacción similares, haz clic aquí.