PvP Server Kiralama & Oyun Sunucuları
0 Giriş Yap Kayıt Ol

Com resoldre els errors de Metin2 Quest? Guia de recàrrega i creació de la Quest

Yazdır

Com resoldre els errors de Metin2 Quest?

Guia per a la recàrrega de missions, la manca de resposta de l'NPC, els errors de funció i els problemes de compilació de missions.

Missions, converses NPC, sistemes d'esdeveniments, biòleg, teletransportació, mercat, seguiment de caps, recompenses diàries i molts sistemes especials als servidors Metin2. recerca Funciona mitjançant fitxers. Per tant, fins i tot un petit error fet al costat de la recerca pot fer que l'NPC no reaccioni, que l'esdeveniment no comenci o que el fitxer syserr del canal produeixi errors constantment.

El problema més gran dels errors de la cerca és que l'error sovint sembla general, com ara "L'NPC no funciona". Però el veritable motiu pot ser vnum incorrecte, falta de funció, sintaxi trencada, estructura d'estat defectuosa o la cerca que no s'està compilant en absolut.

Explicació senzilla: El fitxer de recerca és el fitxer d'instruccions que indica a l'NPC què ha de fer. Si la instrucció és incorrecta, l'NPC no pot respondre correctament.

1. On trobar els fitxers Quest?

La ruta dels fitxers Quest pot variar segons la infraestructura del servidor. Els directoris que s'utilitzen habitualment són:

/usr/game/share/locale/turkey/quest/
/home/game/share/locale/turkey/quest/
/usr/metin2/share/locale/turkey/quest/

Els fitxers Quest solen ser .quest amb extensió. Fitxers creats després de la compilació objecte Es guarda sota la carpeta.

2. Primer comproveu per entendre l'error de la Quest

Si una recerca no funciona, primer s'ha de comprovar el fitxer syserr del canal corresponent.

cd /usr/game/channel1/core1
tail -n 100 syserr

Per veure els errors en directe que es produeixen després de tornar a carregar la missió:

tail -f syserr

Exemples d'errors de cerca habituals:

no such quest function
attempt to call field
syntax error
unexpected symbol
quest not found
when condition error

3. Com compilar Quest?

Quan afegiu un fitxer de cerca nou, no n'hi ha prou amb llançar el fitxer a la carpeta. La recerca s'ha de compilar.

Primer introduïu el directori de la cerca:

cd /usr/game/share/locale/turkey/quest

Exemple per compilar una única recerca:

./qc quest_adi.quest

El camí de qc pot ser diferent en alguns sistemes:

/usr/game/share/locale/turkey/quest/qc quest_adi.quest

El nom de l'script utilitzat per compilar totes les missions varia segons la infraestructura. Exemple:

sh make.sh
Important: Compilar totes les missions innecessàriament en servidors grans pot ser arriscat. És més controlat compilar només el fitxer de recerca editat.

4. Com tornar a carregar Quest?

Un cop compilada la missió, es pot tornar a carregar al joc amb un personatge GM.

/reload q

En alguns casos, només recarregar no n'hi ha prou. Especialment si l'estructura de l'estat, la bandera de la missió o les condicions inicials han canviat, pot ser que calgui tornar a introduir el personatge o reiniciar el canal.

L'ordre general ha de ser el següent:

  • Edita el fitxer de recerca
  • Comproveu la sintaxi
  • Compileu el fitxer Quest amb qc
  • Executar/recarregar q dins del joc
  • Fes una ullada a Syserr
  • Prova el comportament de l'NPC o l'esdeveniment

5. NPC Quest Problema no funciona

Si no passa res quan feu clic a l'NPC, s'han de comprovar els punts següents:

  • El vnum de l'NPC que s'utilitza a la recerca és correcte?
  • Els NPC realment apareixen al mapa del costat del servidor?
  • Està compilat Quest?
  • S'ha produït syserr després de /reload q?
  • El començament de l'estat de la recerca és correcte?
  • El codi deixa d'executar-se a causa d'una condició incorrecta a Quest?

Exemple d'estructura d'activador de NPC:

quest ornek_npc begin
  state start begin
    when 20011.chat."Ornek Menu" begin
      say_title("Ornek NPC")
      say("Bu bir test mesajidir.")
    end
  end
end

aquí 20011 NPC vnum valor. Si el NPC vnum és incorrecte, la missió no funcionarà.

6. cap error de funció de cerca

a Syserr no hi ha aquesta funció de recerca Si es veu, la funció utilitzada a la recerca no està definida al servidor.

Motius:

  • Quest s'ha extret d'una altra infraestructura.
  • La funció de recerca rellevant no s'afegeix al costat Font.
  • Falta la funció d'ajuda que hauria d'estar a questlib.lua.
  • El nom de la funció està mal escrit.

En aquest cas, la solució és comprovar si la funció existeix realment al servidor. Les missions extretes d'altres fitxers no s'han de considerar directament compatibles.

7. Errors de sintaxi de la cerca

Els errors tipogràfics més comuns als fitxers Quest són:

  • final baix o excessiu
  • No tancar cometes
  • Errada quan s'escriu la condició
  • Utilitzant caràcters turcs o codificació incorrecta
  • Ús de funcions extretes d'un altre sistema sense adaptació

Exemple d'estructura defectuosa:

say("Merhaba oyuncu)

Estructura correcta:

say("Merhaba oyuncu")

8. Problemes de la bandera de la Quest

Algunes missions mantenen una bandera al personatge o al compte. La missió no comença o pot semblar que s'ha completat a causa d'un valor de senyal incorrecte.

Per exemple, si una missió ja s'ha completat, és possible que l'NPC no torni a mostrar el menú. En aquest cas, s'hauria de comprovar la marca de la missió corresponent.

Atenció: L'eliminació massiva de senyals de cerca al servidor en directe s'ha de fer amb cura. Un funcionament incorrecte pot danyar els registres de cerques, esdeveniments o recompenses dels jugadors.

Errors comuns

  • S'ha oblidat de posar el fitxer Quest en una carpeta i compilar-lo
  • S'està fent /reload q tot i que hi ha un error de compilació
  • Valor NPC vnum incorrecte
  • Ús de missions extretes d'altres fitxers sense adaptar-les
  • Pensar que un NPC no funciona sense comprovar la marca de la missió
  • La cerca sembla ser correcta, però no funciona perquè la codificació està malmesa.

PMF

Vaig fer /recarregar q però la recerca no va funcionar, per què?
És possible que la Quest no s'hagi compilat en absolut, que hagi donat un error durant la compilació o que no sigui visible al reproductor a causa de la condició d'estat/marcador.

Faig clic a l'NPC i no apareix el menú. El problema és l'NPC?
No sempre. Fins i tot si el vnum de l'NPC és correcte, és possible que la recerca no s'hagi compilat, escrit incorrectament o s'executi a causa d'una condició.

Per què la missió que he rebut d'un altre servidor dóna un error?
Com que les funcions utilitzades, és possible que l'estructura de questlib o els suports d'origen no estiguin disponibles a la vostra infraestructura.

Recomanacions de seguretat i operacions

  • Feu una còpia de seguretat del fitxer abans d'editar Quest.
  • Implementeu canvis importants en les missions al servidor en directe durant les hores de baixa del jugador.
  • Comproveu syserr després de cada compilació de missions.
  • Presta atenció al caràcter turc i a les distorsions de codificació.
  • Fes una còpia de seguretat abans de suprimir massivament les operacions de senyalització de missions relacionades amb les dades dels jugadors.

Aquest article està preparat especialment per a PvPServer.

Bu cevap yeterince yardımcı oldu mu?

Oyla

overlay spinner