Saltar al contenido principal

Crear agujeros de gusano

webapp_banner.jpg

¿Qué son los agujeros de gusano?​

Los Agujeros de Gusano son un tipo de sistema de teletransporte de portal a portal muy eficiente. Los portales están marcados con efectos visuales.

Mecánicas de los agujeros de gusano

Los Agujeros de Gusano pueden hacer lo siguiente:

  • Pasar por un portal para llegar al portal de destino, e ir desde el portal de destino de vuelta al primero.
  • Reproducir un sonido cuando los jugadores los atraviesan
  • Cegar temporalmente a los jugadores mientras los atraviesan para suavizar la transición
  • Bloquear el teletransporte hasta que hayan pasado más de 5 segundos y el jugador se haya alejado más de 1.5 × sizeMultiplier + 2 bloques del portal de destino, para evitar bucles
  • Desactivar automáticamente el modo vuelo cuando los jugadores se teletransportan
  • Reproducir efectos visuales elaborados
  • Requerir permisos para usar el agujero de gusano
  • Requerir el uso de moneda para usar el agujero de gusano
  • Notificar a los jugadores y administradores cuando el portal de destino no está disponible

Los jugadores solo se comprueban contra un agujero de gusano cada 5 ticks (un cuarto de segundo), y únicamente mientras estén a menos de 30 bloques de él.

Cambiar de mundo cuenta como salir del radio del portal de destino, así que tras un cambio de mundo el único requisito pendiente son los 5 segundos. Volver a conectarte elimina el tiempo de espera.

Crear un agujero de gusano

Añade los archivos de configuración a plugins/EliteMobs/wormholes. Se admiten subcarpetas, por ejemplo plugins/EliteMobs/wormholes/dungeonName/dungeonName_identifier.yml.

Colocar un agujero de gusano dentro del juego​

En lugar de escribir las coordenadas a mano, puedes situarte donde quieras que esté el portal y ejecutar:

/em place wormhole <filename> <1/2>

1 establece location1 y 2 establece location2. El comando requiere el permiso elitemobs.place.admin, debe ejecutarlo un jugador y escribe las nuevas coordenadas directamente en el archivo de configuración del agujero de gusano. El portal se ancla un bloque (multiplicado por sizeMultiplier) por encima de donde estabas, de modo que los jugadores que lleguen por él caigan sobre el bloque en el que te encontrabas.

Dirección de llegada​

El Yaw y el Pitch (los dos últimos números de las coordenadas) en location1 y location2 establecen la dirección hacia la que mira el jugador cuando llega a ese lado del agujero de gusano. Veamos este ejemplo:

location1: my_world,20,10,20,180,20

Con el Yaw establecido en 180, el jugador llega mirando al norte. El Pitch sigue la convención de Minecraft, en la que los valores positivos miran hacia abajo y los negativos hacia arriba, así que un Pitch de 20 significa que el jugador llega mirando ligeramente hacia abajo.

Ten en cuenta que el agujero de gusano no empuja a los jugadores a ninguna parte; la ubicación de llegada es simplemente las coordenadas del otro lado, incluidos su yaw y su pitch.

Configuración del agujero de gusano​

El siguiente es un ejemplo de una configuración válida de Agujero de Gusano:

isEnabled: true
location1: em_primis,1288.5,19,452.5,135,-23
location2: em_primis,1288.5,-39,451.5,180,-1

isEnabled​

Establece si el agujero de gusano está habilitado.

KeyValuesDefault
isEnabledBooleantrue
Ejemplo
isEnabled: true

location1​

Especifica la primera ubicación del agujero de gusano. Ambos campos aceptan world,x,y,z,yaw,pitch o el nombre de archivo de un paquete de mazmorra, como adventurers_guild_hub.yml. Una referencia a un paquete usa su ubicación de teletransporte configurada. Instala el paquete y carga su mundo antes de usar el portal. El teletransporte comprueba la ubicación resuelta y el mundo cargado, sin exigir por separado el indicador de instalación del paquete. No crea una instancia nueva de la mazmorra.

KeyValuesDefault
location1Stringnone
Ejemplo
location1: world_one,50,100,50,0,0

location2​

Especifica la segunda ubicación del agujero de gusano.

KeyValuesDefault
location2Stringnone
Ejemplo
location2: world_two,100,33,100,0,0

location1Text​

Establece el texto de visualización de la primera ubicación.

KeyValuesDefault
location1TextStringnone
Ejemplo
location1Text: Awesome Wormhole In World One

create_wormhole_location1text.jpg


location2Text​

Establece el texto de visualización de la segunda ubicación.

KeyValuesDefault
location2TextStringnone
Ejemplo
location2Text: Awesome Wormhole In World Two

create_wormhole_location2text.jpg


permission​

Establece el permiso necesario para usar el agujero de gusano en ambas direcciones. Los jugadores que tengan activado /em quest bypass omiten esta comprobación, pero siguen sujetos al coste y al tiempo de espera.

KeyValuesDefault
permissionStringnone
Ejemplo
permission: elitemobs.mypermission

coinCost​

Establece el coste de usar el agujero de gusano. Usa monedas de elite o la moneda del servidor cuando está activada la integración económica con Vault.

El coste solo se cobra después de superar las comprobaciones de permiso, tiempo de espera y destino, y es el mismo en ambas direcciones. Un jugador que no puede pagar recibe insufficientCurrencyForWormholeMessage de Wormholes.yml y no se teletransporta. Si el teletransporte se cancela o no llega a destino, se devuelve el importe.

Si la economía no puede confirmar un cobro o una devolución, EliteMobs pide al jugador que contacte con un administrador, registra el importe para conciliarlo manualmente y bloquea a ese jugador en todos los agujeros de gusano hasta que se reinicie el servidor. Un coinCost negativo o no finito registra una advertencia y el agujero de gusano no teletransporta a nadie.

KeyValuesDefault
coinCostDouble0
Ejemplo
coinCost: 0

style​

Establece la forma visual del agujero de gusano.

La forma se dibuja como una estructura alámbrica giratoria hecha de block displays, con una ligera capa de partículas añadida encima cada 5 ticks. Establecer style en NONE omite la forma por completo.

Estos efectos pueden causar lag en algunos clientes. Establece noParticlesMode: true en Wormholes.yml para desactivar la estructura alámbrica y sus partículas. El texto, los modelos personalizados y el marcador independiente de Bedrock permanecen.

KeyValuesDefault
styleNONE / CRYSTAL / ICOSAHEDRON / CUBECUBE
Ejemplo
style: CRYSTAL

create_wormhole_style.jpg


particleColor​

Establece el color de las partículas usadas en el ajuste style. Los bloques de la estructura alámbrica no usan el color exacto; EliteMobs elige el bloque concreto cuyo color más se aproxima al que establezcas.

El valor por defecto de 0 es el negro, así que conviene establecerlo en todos los agujeros de gusano que crees.

KeyValuesDefault
particleColor0x seguido de un código hexadecimal0
Ejemplo
particleColor: 0x9f5cdd

create_wormhole_particlecolor.jpg


blindPlayer​

Establece si el portal aplica ceguera durante 40 ticks, unos 2 segundos, al teletransportar.

KeyValuesDefault
blindPlayerBooleanfalse
Ejemplo
blindPlayer: true

create_wormhole_blind.jpg


sizeMultiplier​

Multiplica la forma definida en style y cambia el radio de activación a 1.5 × sizeMultiplier bloques. La distancia incluye la altura, y la búsqueda independiente de jugadores a 30 bloques sigue limitando la activación. Usa un número positivo y finito. También afecta a la altura de colocación y del texto, pero no cambia el tamaño de un modelo de FreeMinecraftModels.

KeyValuesDefault
sizeMultiplierMultiplier1
Ejemplo
sizeMultiplier: 3

Ten en cuenta que tendrás que ajustar las coordenadas Y del agujero de gusano después de aplicar el multiplicador de tamaño.

create_wormhole_size.jpg


customModel1​

Establece un modelo personalizado para usar en la visualización del agujero de gusano en la primera ubicación. Usa una cadena de identificador de modelo. Esto anula la forma definida en style para la ubicación 1.

Los modelos personalizados en agujeros de gusano solo funcionan con FreeMinecraftModels; el modelo debe existir o el agujero de gusano recurrirá a la estructura alámbrica de style. El modelo es puramente decorativo y no se puede pulsar: el teletransporte sigue basándose en la proximidad.

KeyValuesDefault
customModel1Stringnone
Ejemplo
customModel1: my_custom_wormhole_model

customModel2​

Establece un modelo personalizado para usar en la visualización del agujero de gusano en la segunda ubicación. Usa una cadena de identificador de modelo. Esto anula la forma definida en style para la ubicación 2. Se aplica el mismo requisito de FreeMinecraftModels que en customModel1.

KeyValuesDefault
customModel2Stringnone
Ejemplo
customModel2: my_custom_wormhole_model

Ejemplo de configuración de Agujero de Gusano

En este ejemplo crearemos un agujero de gusano sencillo que nos lleve de un mundo a otro. No olvides que los agujeros de gusano también pueden simplemente teletransportar a los jugadores a una ubicación diferente en el mismo mundo.

isEnabled: true #We enable the worm by setting this value to true
location1: my_world,1.5,11.0,1.5,108.0,5.0 #this is where the wormhole will appear in my_world
location2: my_other_world,766.5,29.0,517.5,-136.0,5.0 #this is where the wormhole will appear in my_other_world
location1Text: "&aGo to My World" #makes a nice display text above wormhole location1
location2Text: "&aGo to My Other World" #makes a nice display text above wormhole location2
permission: eliteperm.coolplayers #only players with this permission will be able to use the wormhole, both for location1 and location2
coinCost: 0 #free to use; a positive value charges elite coins, or Vault currency when Vault is enabled
style: CRYSTAL #this wormhole will be in the shape of a crystal
particleColor: 0x00ff00 #this will set the wormhole particles to green
blindPlayer: true #the wormhole teleport will blind the player for a short duration to make the transition less jarring
sizeMultiplier: 1.0 #sets how big the shape of the wormhole should be

Problemas de rendimiento​

Los efectos pueden causar problemas de rendimiento en los clientes Bedrock. Puedes configurarlos en plugins/EliteMobs/Wormholes.yml:

  • reducedParticlesMode: true (predeterminado) - Reduce el número de puntos trazados a lo largo de la forma
  • noParticlesMode: false (predeterminado) - Establecerlo en true desactiva por completo la forma y las partículas del agujero de gusano

Mientras cualquiera de esas opciones esté activada, los jugadores de Bedrock también pueden ver un marcador sencillo si está disponible el puente de entidades personalizadas de Bedrock del servidor. Usa particleColor y una escala mínima de 0.5. Un modelo personalizado cargado correctamente sustituye al marcador. Los jugadores de Java nunca lo ven.

La estructura alámbrica solo se actualiza mientras un jugador a menos de 30 bloques tiene línea de visión hacia el portal. Se elimina tras unos 5 segundos sin línea de visión o cuando ya no hay jugadores cerca. Esta regla no desactiva el teletransporte por proximidad ni el modelo personalizado independiente.