Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: SISTEMA DE CANJE Resets->Items(GremoryCase)+Monedas(Coins)+Battlepass en LUA.  (Visto 572 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline KanonFg Posteado: December 21, 2025, 11:32:30 PM

  • Anunciante
  • 0 puntos por ventas
  • *
  • *
  • Rank: Avanzado
  • Posts: 138
  • Gracias recibida: 1055
  • mx
DESCRIPCIÓN DEL SISTEMA:
Este sistema permite que un NPC específico (identificado por ID y ubicación) canjee
Resets del jugador por recompensas.
CARACTERÍSTICA ÚNICA: Puede entregar ITEMS y MONEDAS al mismo tiempo en una sola transacción.

================================================================================
1. ARCHIVOS DEL SISTEMA (¿QUÉ NECESITO?)
================================================================================
Solo necesitas estos 2 archivos en tu carpeta. Si tienes otros antiguos, bórralos.

A) NpcResetExchange.lua
   - ES: El cerebro del sistema.
   - UBICACIÓN: MuServer\GameServer\Data\Lua\ (o carpeta de scripts).
   - FUNCIÓN: Detecta el click al NPC, cobra resets y entrega premios.

B) Install_SP_Gremory.sql
   - ES: El motor de base de datos.
   - UBICACIÓN: Ejecutar una vez en SQL Server.
   - FUNCIÓN: Permite enviar items al sistema "K" (Gremory Case) sin bugs visuales.

================================================================================
2. INSTALACIÓN PASO A PASO
================================================================================

PASO 1: BASE DE DATOS (Solo se hace una vez)
--------------------------------------------
1. Abre SQL Server Management Studio.
2. Selecciona tu base de datos "MuOnline".
3. Arrastra el archivo "Install_SP_Gremory.sql" adentro o ábrelo desde File -> Open.
4. Presiona "Execute" (F5).
   >> Si dice "Commands completed successfully", ya está listo.

PASO 2: ACTIVAR EL SCRIPT
-------------------------
1. Pone "NpcResetExchange.lua" en tu carpeta de scripts.
2. Añádelo a tu lista de carga (ScriptLoader.lua o xml) si tu server lo pide.
3. Haz "/reload lua" en el juego o reinicia el GameServer.

================================================================================
3. CONFIGURACIÓN DEL LUA (LO QUE DEBES Y NO DEBES TOCAR)
================================================================================

ABRE EL ARCHIVO "NpcResetExchange.lua" CON UN EDITOR DE TEXTO.

--------------------------------------------------------------------------------
SECCIÓN A: IDENTIFICACIÓN DEL NPC (¿QUIÉN ES EL VENDEDOR?)
--------------------------------------------------------------------------------
Busca esto al principio:
    NpcClass = 249,       <-- ID del NPC (Ej: 249 es el Guard)
    NpcMap = 0,           <-- Mapa donde debe estar (0 = Lorencia)

[IMPORTANTE]
El script tiene una protección interna para coordenadas.
Solo funcionará si el NPC está en las coordenadas configuradas dentro del script
(Por defecto 130, 126 en Lorencia).
>> NO TOQUES LA LÓGICA DE ABAJO (las funciones if/then/end). Solo edita los números en "Config".

--------------------------------------------------------------------------------
SECCIÓN B: PRECIOS
--------------------------------------------------------------------------------
    CostResets = 1,       <-- Cuántos resets cobrará por cada canje.

--------------------------------------------------------------------------------
SECCIÓN C: MONEDAS Y PUNTOS (WCoins, GP, BattlePass)
--------------------------------------------------------------------------------
    RewardType = 2,       <-- Elige qué moneda dar:
                              0 = Ninguna moneda (Solo item)
                              1 = WCoinC
                              2 = WCoinP
                              3 = GoblinPoint
                              4 = BattlePass (Estrellas)
                             
    RewardAmount = 10,    <-- Cantidad de moneda a regalar.

--------------------------------------------------------------------------------
SECCIÓN D: ITEMS (GREMORY CASE - LETRA K)
--------------------------------------------------------------------------------
Esta es la parte más poderosa. Busca "RewardItem":

    RewardItem = {
        Enabled = true,    <-- true = DAR ITEM. false = NO DAR ITEM.
        item = 7179,       <-- ID del Item (Ver fórmula abajo)
        Level = 0,         <-- Nivel (+0, +15, etc)
        Durability = 100,  <-- Durabilidad (Pon 100. NO PONGAS 0 O DESAPARECE)
        Count = 1          <-- Cantidad
    }

[FÓRMULA PARA CALCULAR ID DE ITEMS]
ID = (Sección * 512) + Index
Ejemplo: Jewel of Bless (Sección 14, Index 13)
Cálculo: 14 * 512 + 13 = 7181. Pones 7181 en "item".

================================================================================
4. PREGUNTAS FRECUENTES (FAQ)
================================================================================

P: ¿CÓMO HAGO PARA DAR ITEM Y MONEDAS AL MISMO TIEMPO?
R: Es automático.
   1. Pon "Enabled = true" en RewardItem.
   2. Pon "RewardType = 1" (o 2, 3, 4).
   ¡El script entregará AMBOS premios y cobrará los resets UNA sola vez!

P: ¿QUÉ PASA SI PONGO UN NPC 249 EN OTRO LADO?
R: Nada. El script verifica coordenadas. Si pones otro NPC igual en Noria,
   ese actuará como un NPC normal (no canjea nada), evitando bugs.

P: ¿EL ITEM DESAPARECE AL RECLAMARLO?
R: No debería. El SQL "Install_SP_Gremory.sql" incluye un generador de Seriales
   (WZ_GetItemSerial). Si desaparece, asegúrate de haber ejecutado ese SQL.

P: ¿QUÉ NO DEBO TOCAR?
R: NO toques nada debajo de la línea que dice "function NpcResetExchange_OnTalk".
   Esa es la lógica interna (programación). Si borras un "end" o un "if",
   el GameServer dejará de abrir. Solo edita la tabla "Config" al principio.

================================================================================
CRÉDITOS
Por: Kanon
================================================================================

COMO ULTIMA COSA, RECOMIENDA USAR UN NPC QUE NO USEN PORQUE USA 1 NPC EN GENERAL.
















[/size]


Offline quocbao #1 Posteado: December 23, 2025, 09:23:13 AM | Modificado: December 23, 2025, 09:25:15 AM by quocbao

  • 0 puntos por ventas
  • *
  • Rank: Dedicado
  • Posts: 34
  • Gracias recibida: 15
  • vn
Hello!

Could you please add some code so that after the resets are reset and the character receives the reward, the character will return to the character selection screen to correct the number of resets after the change?

Thank you very much!


Offline KanonFg #2 Posteado: December 23, 2025, 05:18:34 PM

  • Anunciante
  • 0 puntos por ventas
  • *
  • *
  • Rank: Avanzado
  • Posts: 138
  • Gracias recibida: 1055
  • mx
Hello!

Could you please add some code so that after the resets are reset and the character receives the reward, the character will return to the character selection screen to correct the number of resets after the change?

Thank you very much!


Podria trabajar en ello.


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
5 Replies
2007 Views
Last post January 15, 2019, 05:33:50 PM
by -Rastaa.TSM☢
4 Replies
1573 Views
Last post June 15, 2020, 12:31:20 AM
by Sign1t0s
0 Replies
548 Views
Last post August 27, 2020, 09:53:14 AM
by Tomas4455
0 Replies
633 Views
Last post August 31, 2020, 12:51:18 PM
by Tomas4455
1 Replies
907 Views
Last post November 12, 2021, 05:23:45 PM
by davidrcj