El Ermitaño Zian no aparece de forma natural en el mundo; pertenece a un plano etéreo y debe ser invocado mediante un riguroso proceso alquímico ambiental:
°. Catalizadores Requeridos: jugador debe interactuar golpeando una Campana (minecraft:bell) sosteniendo obligatoriamente un Ojo del Abismo o un Báculo de Resonancia en la mano principal.
°. Costo del Ritual: Activar el llamado consume de inmediato 1 unidad del Ojo del Abismo o añade +1 de daño de desgaste a la durabilidad del Báculo de Resonancia.
°. Restricción Horaria Estricta: El ritual solo puede ejecutarse durante la noche, específicamente entre los ticks 13,000 y 23,000 del servidor. Si se intenta usar de día, el sistema denegará la invocación enviando el mensaje de error zclegacy.zian.error.time.
°. Cálculo de Posicionamiento: El script lee la dirección cardinal de la campana (minecraft:cardinal_direction) para materializar a Zian exactamente a 1 bloque de distancia de manera frontal, registrando mediante propiedades dinámicas la ID del jugador que lo invocó.
La presencia de Zian en la dimensión del Overworld es temporal y está ligada intrínsecamente a la oscuridad:
°. Alerta de Salida: Al aproximarse el amanecer (entre los ticks 22,800 y 23,000), el script localiza al invocador original y le envía un aviso preventivo en el chat (zclegacy.zian.fading) acompañado del sonido místico de un arpa (note.harp).
°. Retorno Dimensional: En el milisegundo en que el reloj solar marca el tick 23,000 (Inicio del Día), la entidad cambia su estado interno a fase de salida, reproduce el sonido de un portal de Enderman (mob.endermen.portal) y se remueve de forma segura del entorno para evitar sobrecargas.
La arquitectura JSON de la entidad fue diseñada para integrarse perfectamente como un NPC estático de soporte, eliminando cualquier posibilidad de fallos climáticos o ataques malintencionados:
°. Inmunidad Absoluta (damage_sensor): Cuenta con un sumidero de daño que intercepta cualquier tipo de impacto o causa de muerte, reduciendo el daño recibido a cero (deals_damage: false).
°. Anclaje Físico Estricto: Su propiedad de empuje es nula frente a otras entidades vivas, aunque preserva compatibilidad para ser desplazado de forma controlada mediante pistones técnicos.
°. Navegación Segura: Su IA de deambulo aleatorio integra directrices nativas para evadir por completo bloques que causen daño y masas de agua líquida. Asimismo, el script inyecta el componente minecraft:persistent al spawnear, garantizando que nunca desaparezca de forma imprevista mientras dure su ciclo nocturno.
Al interactuar directamente con el NPC, se ejecuta un subprocesamiento asíncrono que despliega un formulario visual avanzado (ActionFormData) con soporte de traducción localizado. La interfaz le ofrece al usuario un menú de navegación centralizado con 5 acciones clave dictadas por etiquetas lógicas del sistema:
°. Ver Misión Pendiente: Inspecciona los requisitos solicitados.
°. Aceptar Misión: Consolida el encargo en el perfil del jugador.
°. Palabras de Sabiduría: Despacha un consejo místico aleatorio del Ermitaño.
°. Entregar Suministros: Procesa la entrega del inventario para validar el cobro.
°. Despedirse: Cierra la sesión de comercio de forma pacífica.
El núcleo comercial del Add-on funciona bajo un sistema de intercambio de suministros vanilla a cambio de Zafiros (zclegacy:sapphire). El script administra un pool dinámico indexado de misiones con las siguientes cuotas de entrega:
°. Misión 1: Requiere 32x Trigo (minecraft:wheat) — Recompensa: 1 Zafiro.
°. Misión 2: Requiere 16x Carbón (minecraft:coal) — Recompensa: 2 Zafiros.
°. Misión 3: Requiere 8x Lingote de Hierro (minecraft:iron_ingot) — Recompensa: 3 Zafiros.
°. Misión 4: Requiere 12x Cobre Crudo (minecraft:raw_copper) — Recompensa: 2 Zafiros.
°. Misión 5: Requiere 20x Papa (minecraft:potato) — Recompensa: 1 Zafiro.
°. Misión 6: Requiere 40x Carne Podrida (minecraft:rotten_flesh) — Recompensa: 2 Zafiros.
°. Misión 7: Requiere 15x Hueso (minecraft:bone) — Recompensa: 1 Zafiro.
°. Misión 8: Requiere 12x Hilo (minecraft:string) — Recompensa: 2 Zafiros.
°. Misión 9: Requiere 10x Saco de Tinta (minecraft:ink_sac) — Recompensa: 2 Zafiros.
°. Misión 10: Requiere 10x Cuero (minecraft:leather) — Recompensa: 2 Zafiros.
°. Misión 11: Requiere 24x Pluma (minecraft:feather) — Recompensa: 1 Zafiro.
°. Misión 12: Requiere 10x Pedernal (minecraft:flint) — Recompensa: 1 Zafiro.
°. Misión 13: Requiere 16x Azúcar (minecraft:sugar) — Recompensa: 1 Zafiro.
°. Misión 14: Requiere 64x Arena (minecraft:sand) — Recompensa: 2 Zafiros.
°. Misión 15: Requiere 32x Tronco de Roble (minecraft:oak_log) — Recompensa: 3 Zafiros.
°. Lógica de Validación: sistema impide solicitar una nueva misión si el jugador ya posee el tag de estado zian_mision_activa. Al momento de la entrega, el motor analiza el contenedor del inventario, deduce los ítems exactos del stack correspondiente, remueve las etiquetas temporales y ejecuta un comando asíncrono para otorgar la recompensa junto a los efectos sonoros de nivelación del servidor (random.levelup).