NPCInterfaceManager.txt

Sistema para crear NPCs con interfaz que se sincronizan con el cliente. Las reglas visuales dependen del VisualManager(EventID) configurado tanto en el servidor como en el cliente.
Permite requisitos de acceso (Zen, Guild, Ítems) y canjes entre Ítems y Recursos (Reset, MasterReset, WC, WP, GP, Ruud, Zen, LevelPoints).

Este archivo solo se utiliza hasta V12, en versiones posteriores se adapto el sistema al nuevo NPCInterface que conserva todas las opciones e incluye mejoras y agregados.

Requisitos y sincronización

  • Cliente: cada interfaz se gobierna por un VisualManager(EventID) que debe existir en el encoder del cliente. (Revisar la configuración del Encoder / VisualManager en el cliente).
  • Servidor: el mismo EventID se usa para asociar lógica y requisitos del NPC. Si se invoca en otro lugar, el comportamiento puede variar.
  • Sky Event: el EventID = 1 es de uso exclusivo para Sky Event y no puede repetirse ni usarse en otros NPCs.

Definición y restricciones del NPC

Campo Tipo / Rango Valores Descripción
NPCId Entero ID de Monster ID tomado de Monster.txt. Asegúrate que el Level del Monster sea 2 para que el servidor lo trate como NPC.
InterfaceID Entero 100–107 Indica la interfaz de cliente a abrir. Ver tabla “Interfaces disponibles”.
VisualManager (EventID) Entero -1, 0–255 -1 Inactivo. 0–255 código del evento/actividad que determina la lógica del NPC. 1 = Sky Event (reservado).
Map Number Entero 0–114 (V13) / 0–199 (V14+) Mapa donde se encuentra el NPC.
X Entero 0–255 Coordenada X. Debe existir en MonsterSetBase.txt según ubicación.
Y Entero 0–255 Coordenada Y. Debe existir en MonsterSetBase.txt según ubicación.
AccountLevel Entero 0, 1–3 0 Todos. 1–3 rangos VIP que podrán usarlo.
MinLevel Entero 0–400+ Nivel mínimo para activar el NPC.
MaxLevel Entero 0–400+ Nivel máximo. Si tu tope supera 400, ajusta cada línea a tu nuevo máximo.
MinReset Entero 0–99,999 Reset mínimo requerido.
MaxReset Entero 0–99,999 Reset máximo permitido. Recomendado: 99,999.
MinMasterReset Entero 0–99,999 Master Reset mínimo requerido.
MaxMasterReset Entero 0–99,999 Master Reset máximo permitido. Recomendado: 99,999.
PK Level Entero -1, 0–6 -1 Cualquiera · 0 Full Hero · 1 Hero1 · 2 Hero2 · 3 Normal · 4 Phono1 · 5 Phono2 · 6 Murderer.
RankUser Entero -1 o ID ID de rango requerido. Revisar Data/Custom/Interfaces/CustomRanking.txt. Use -1 para ignorar.
SystemName Texto Máx. 60 Nombre del sistema. Se utiliza en logs, importante para auditoría.

Interfaces disponibles (InterfaceID)

InterfaceID Interfaz Descripción
100Jewel StoreTienda de Jewels.
101Map / Item AccessAccesos a mapas / verificación de ítems.
102Reset SystemGestión de resets.
103Event TimeVisualización de horarios de eventos.
104Ruud StoreTienda de Ruud.
105VIP BuyCompra de membresía VIP.
107RankingRanking de usuarios.

Acceso por requisitos (Visual simple)

Configura requisitos de acceso y acciones simples. Este estilo se utiliza, por ejemplo, en Sky Event (custom). El VisualManager(EventID) define el conjunto de reglas de la fila.
VisualManager (EventID) Condición Zen Type Index Level Count GuildName Descripción
Ej: 10 1 = Requerimiento de Zen 500,000 ----- Accede si paga el Zen indicado. Soporta mover a mapa (ver “Destino simple”).
Ej: 11 2 = Solo Guild específico - ---- Winners Accede únicamente si el personaje pertenece al Guild indicado. Soporta mover a mapa.
Ej: 12 3 = Requerimiento de Ítems - 1215510- Requiere 10 ítems de categoría 12, index 15, level 5. Soporta mover a mapa.
Ej: 13 4 = Denied ------ Bloquea temporalmente el evento/NPC.
Condiciones: 1 = Zen · 2 = Guild · 3 = Ítems · 4 = Denegado.

Destino simple (Teleporte al cumplir requisitos)

Define a dónde mover al personaje cuando cumpla los requisitos del Visual simple asociado al mismo EventID.
VisualManager (EventID) Gate Map X Y Notas
Ej: 10–12 -1 34 120 45 Gate = -1 habilita Map/X/Y manuales. Si usas Gate >= 0, toma posición desde Data/Gate.txt.
Ej: 11 512 - - - Usa el Gate 512 de Gate.txt (ignora Map/X/Y).

Canje: Ítem ↔ Ítem

Intercambia un ítem por otro desde interfaz gráfica. El EventID utilizado aquí no debe estar en uso en “Acceso por requisitos” ni “Destino simple”.
VisualManager (EventID) eType Type Index Level Luck Skill Opt ExcOpt Ancient Count Descripción
Ej: 30 1 = Origen 12155114201 Ítem requerido.
Ej: 30 2 = Destino 13167115301 Ítem entregado.
Ancient: 0 = Normal · 1 = Tipo A · 2 = Tipo B. Level: 0–15.

Canje: Ítem → Recurso (Thing)

Cambia un ítem por una “cosa”: Reset, MasterReset, WC, WP, GP, Ruud, Zen o LevelPoints.
VisualManager (EventID) Type Index Level Luck Skill Opt ExcOpt Ancient Count eType Value Descripción
Ej: 40 12155114203 Ruud1500 Entrega 1500 Ruud a cambio del ítem indicado (3 unidades).
eType soportados: Reset · MasterReset · WC · WP · GP · Ruud · Zen · LevelPoints.

Canje: Recurso (Thing) → Ítem

Cambia una “cosa” por un ítem. Útil para tiendas especiales o recompensas por puntos.
VisualManager (EventID) eType Value Type Index Level Luck Skill Opt ExcOpt Ancient Count Descripción
Ej: 41 GP45 13167115301 Entrega el ítem configurado a cambio de 45 GP.

Canje: Recurso (Thing) → Múltiples recursos

Intercambia una cosa por hasta 4 recompensas distintas. Ej.: 10 Reset → 1000 WC, 10 MasterReset, 45 GP.
VisualManager (EventID) eType1 (Costo) Value1 (Costo) RType1 Value1 RType2 Value2 RType3 Value3 RType4 Value4 Descripción
Ej: 50 Reset10 WC1000 MasterReset10 GP45 -- Un costo (Reset) y hasta 4 premios. RType1 es obligatorio; RType2–4 son opcionales.

Buenas prácticas y advertencias

  • IDs únicos: evita reutilizar el mismo VisualManager(EventID) en distintas secciones (salvo el vínculo lógico AccesoDestino).
  • Sky Event: EventID = 1 es exclusivo. No lo dupliques.
  • Coordenadas: valida que X/Y estén definidas en MonsterSetBase.txt.
  • Gates: si usas Gate ≥ 0, la posición se toma de Data/Gate.txt e ignora Map/X/Y.
  • Rangos VIP: AccountLevel utiliza 1–3 para VIP. Usa 0 para todos.
  • Ancient: 0 = Normal · 1 = Tipo A · 2 = Tipo B.

Referencias rápidas

Concepto Valores Notas
Condición (Acceso) 1: Zen · 2: Guild · 3: Ítems · 4: Denied Se usa con “Acceso por requisitos”.
PK Level -1 · 0–6 Ver tabla en “Definición del NPC”.
eType / RType Reset, MasterReset, WC, WP, GP, Ruud, Zen, LevelPoints Identifica el tipo de “cosa” (recurso).
Ancient 0, 1, 2 0 = Normal, 1 = Tipo A, 2 = Tipo B.
Level (Ítem) 0–15 Nivel del ítem requerido/entregado.