Jump to content

ElRaulxX

Miembro
  • Contador contenido

    49
  • Ingreso

  • Última visita

  • Días ganados

    12

Actividad de reputación

  1. Me Gusta
    ElRaulxX got a reaction from klars in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  2. Me Gusta
    ElRaulxX got a reaction from CHRISTIAN YESID CARVAJAL FUENTES in [Minicurso] MySQL en quest   
    He visto que muchos preguntáis como utilizar querys de sql en quest. Le dije a keko que haría este mini tutorial, y aquí lo tenéis.

    Primero de todo decir que esta función no viene por defecto en el metin y es por eso que algunos usuarios la han hecho ellos mismos, pues la utilidad de esta función es muy grande.
    Tengo contado tres personas que han publicado esta función: Hanashi, mijago y yuko. Quizá han sido publicadas más, pero solamente recuerdo estas.
    A mi parecer, la más practica que he visto hasta ahora es la última versión de mijago y es la que utilizaremos en este Minicurso.


    Primero de todo, debemos declarar estas dos funciones en nuestro questlib.lua



    ATENCION! Si en nuestro servidor tenemos instalado la versión 5.5 de MySQL debemos borrar esto:
    os.execute('mysql '..pre..' --e='..string.format('%q',query)..' > '..fi) -- für MySQL51 y quitar las -- de aquí:
    --os.execute('mysql '..pre..' -e'..string.format('%q',query)..' > '..fi) -- für MySQL55 La razón es simple, la sintaxis de esta versión de MySQL es distinta.

    Ahora tenemos que añadir en quest_functions la función:
    mysql_query La función split no hace falta añadirla en este archivo ya que se utiliza internamente en mysql_query.

    Bien, ahora ya tenemos instalada la función de mysql.
    Ahora lo más importante: ¿cómo se usa?

    Tenemos esta tabla:

    Como vemos, la tabla se llama 'tablatest' y se encuentra en la db 'test'. Esta tabla posee tres campos, que son 'campo1', 'campo2' y 'campo3'.
    Con la función mysql_query llamaremos, añadiremos o modificaremos valores de esta tabla. La sintaxis de mysql_query es la misma que cualquier otra query de mysql que utilicemos (de navicat, php...). Sino sabéis la sintaxis os aconsejo que miréis cursos para aprender. La sintaxis es muy sencilla y no tiene complicación, solo se necesita mirar un poco y lo dominaréis perfectamente. Existen miles de cursos y tutoriales por internet de mysql, tan solo debéis buscarlos.

    ATENCION: Para utilizar sentencias que retornen algún tipo de valor (select) debemos asignar la función a una variable. Las demás (update, insert into...) tan solo tenemos que utilizarla como cualquier otra función.

    Bien, empecemos. Comenzaremos llamando toda la tabla.
    local read = mysql_query("SELECT * FROM test.tablatest") Esto almacenará en la variable la siguiente tabla:
    local read = {[campo1] = {"texto1","texto2","texto3"},[campo2] = {"texto4","texto5","texto6"},[campo3] = {"texto7","texto8","texto9"}} Teniendo esto en cuenta, y sabiendo un poco de tablas y arrays en lua está todo solucionado.
    Queremos mostrar en pantalla 'texto5' que está almacenado en nuestra tabla. Lo llamaremos de esta manera.
    local read = mysql_query("SELECT * FROM test.tablatest")say(read.campo2[2])--esto muestra texto5 Ahora queremos llamar 'texto9':
    local read = mysql_query("SELECT * FROM test.tablatest")say(read.campo3[3])--esto muestra texto9 Ahora queremos llamar 'texto1':
    local read = mysql_query("SELECT * FROM test.tablatest")say(read.campo1[1])--esto muestra texto1 Aquí no voy a ponerme a explicar arrays porqué no trata de eso el curso, pero creo que mirando los ejemplos y pensando un poco lo entenderéis.

    Ahora también podemos añadir una condición:
    local read = mysql_query("SELECT * FROM test.tablatest WHERE campo2 = 'texto5'") Esto almacenará en la variable la siguiente tabla:
    local read = {[campo2] = {"texto4","texto5","texto6"}} Y ahora podemos llamarlo de la misma manera que en el ejemplo anterior.
    Esto nos mostrará 'texto6' en pantalla.
    local read = mysql_query("SELECT * FROM test.tablatest WHERE campo2 = 'texto5'")say(read.campo2[3])--esto muestra texto6 Y para hacerla verdaderamente útil podemos llamar a variables o funciones.
    local var = "texto5"local read = mysql_query("SELECT * FROM test.tablatest WHERE campo2 = '"..var.."'")say(read.campo2[3])--esto muestra texto6 Algo importante que hay que decir es que esta función siempre crea tablas y por lo tanto siempre deberemos llamarlo de la misma manera, aunque haya seleccionado un solo valor.
    local read = mysql_query("SELECT campo1 FROM test.tablatest WHERE campo1 = 'texto1'")say(read.campo1[1])--esto muestra texto1 Creo que con estos ejemplos ya podéis ver como funciona un select (la verdad es que es bastante difícil explicarlo teniendo en cuenta que no tenéis conocimientos de tablas, pero al menos lo he intentado xd). La mejor manera que veáis su uso es que vayáis haciendo pruebas en navicat y luego trasladarlo a una quest.

    Y ahora la segunda parte.
    Si queremos añadir nuevos valores lo hacemos de esta manera:
    mysql_query("INSERT INTO test.tablatest VALUES ('texto10','texto11','texto12')") o como hemos hecho antes:
    local v1 = "texto10"local v2 = "texto11"local v3 = "texto12"mysql_query("INSERT INTO test.tablatest VALUES ('"..v1.."','"..v2.."','"..v3.."')") Y nos quedará la tabla así:


    Y si queremos modificar valores:
    mysql_query("UPDATE test.tablatest SET campo1='prueba' WHERE campo1='texto10'") local x = "prueba"local y = "texto10"mysql_query("UPDATE test.tablatest SET campo1='"..x.."' WHERE campo1='"..y.."'") Y nos quedaría esto:


    Sabiendo de mysql no debería ser ninguna complicación, el problema es que no sepáis
    Cuando publiquemos el capítulo de arrays y tablas lo entenderéis todo mejor, no os preocupéis.

    Y creo que eso es todo. Saludos!
  3. Me Gusta
    ElRaulxX got a reaction from VIKSANT in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  4. Me Gusta
    ElRaulxX got a reaction from wille damare in Drop por quest.   
    Con la función game.drop_item_with_ownership() el item tendrá nombre en el suelo, como si fuera un drop normal.
  5. Me Gusta
    ElRaulxX got a reaction from goodgi in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  6. Me Gusta
    ElRaulxX got a reaction from DiegoO93 in [TIP] Activar habilidades Beran-Setaou files 1675+   
    Esto me lo pidieron ayer mismo, pues la verdad es que nunca ha sido publicado en un foro español.
     
    Si os habéis fijado, a partir de los files 2010, beran-setaou (id 2493) adquiere nuevas habilidades. El único problema de ellas es que, normalmente, no hacen daño. La explicación es muy sencilla, pues el daño proviene del propio game y, por lo tanto, debemos activar esas habilidades.
     
    Para hacerlo, debemos ir al directorio (/usr)/home/game/share/locale/germany y abrir con un editor de texto el archivo settings.lua
    En este archivo, a parte de haber configuraciones de sonido, arena y /go de mapas, a partir de ahora se encontrará las configuraciones del mob 2493. ¿Como hacerlo? Fácil, tenemos que ir al final del archivo y copiar el siguiente código:
     
     
     
    Como podéis ver, ahí encontraremos los daños y bonus de las habilidades de nuestro mob. Además, también están las configuraciones de los metines que afectan al estado de nuestro mob en la sala del dragón (no me preguntéis como funciona eso, pues en este momento lo desconozco). Todo esto podemos modificarlo a nuestro antojo (la sintaxis creo que la podemos entender fácilmente).
     
    Post original:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Autor: .Nova.
     
    Y creo que eso es todo.
    Un saludín!
  7. Me Gusta
    ElRaulxX got a reaction from elbloqueconcreto23 in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  8. Me Gusta
    ElRaulxX got a reaction from Freddy Di Maria in [1er Examen - Curso de Quest] Capítulos I - V   
    Aquí escribiré los resultados.
     
    sema:
  9. Me Gusta
    ElRaulxX got a reaction from Freddy Di Maria in [1er Examen - Curso de Quest] Capítulos I - V   
    Espero que hayáis estudiado mucho, pues este es nuestro primer examen del curso. Sino lo hacéis bien habrá mano dura, eh!
     
    La única utilidad de este examen es que veáis lo que habéis aprendido. Hablaré con estos administradores feos haber si podríamos poner algún tipo de plaquita o algo. Estaría bien ¿no?
    Bueno, pues al lío. El examen estará formado por 5 preguntas con valor de 2 puntos cada una con una nota máxima de 10 (me siento profesor ). Los ejercicios, más que nada, consistirán en crear una quest con los parámetros que estableceremos.
     
    Se irá añadiendo un ejercicio nuevo cada x días. Debéis mandarnos la quest del ejercicio por privado. En el post escribiremos la nota individual de cada participante del examen dividido por ejercicios.
     
    IMPORTANTE: Las quests que enviéis deben estar tal cual dice el ejercicio, incluido textos y acciones de la quest. Añadir texto o inventar algo que no diga el ejercicio hará que la quest no sea tomada como válida.
     
    Ejercicio I :
    Ejercicio II :
     
    Y eso es todo. ¡Suerte a los aspirantes a quest-makers!
  10. Me Gusta
    ElRaulxX got a reaction from Meruem in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  11. Me Gusta
    ElRaulxX got a reaction from Cristian Contreras Téllez in [1er Examen - Curso de Quest] Capítulos I - V   
    Espero que hayáis estudiado mucho, pues este es nuestro primer examen del curso. Sino lo hacéis bien habrá mano dura, eh!
     
    La única utilidad de este examen es que veáis lo que habéis aprendido. Hablaré con estos administradores feos haber si podríamos poner algún tipo de plaquita o algo. Estaría bien ¿no?
    Bueno, pues al lío. El examen estará formado por 5 preguntas con valor de 2 puntos cada una con una nota máxima de 10 (me siento profesor ). Los ejercicios, más que nada, consistirán en crear una quest con los parámetros que estableceremos.
     
    Se irá añadiendo un ejercicio nuevo cada x días. Debéis mandarnos la quest del ejercicio por privado. En el post escribiremos la nota individual de cada participante del examen dividido por ejercicios.
     
    IMPORTANTE: Las quests que enviéis deben estar tal cual dice el ejercicio, incluido textos y acciones de la quest. Añadir texto o inventar algo que no diga el ejercicio hará que la quest no sea tomada como válida.
     
    Ejercicio I :
    Ejercicio II :
     
    Y eso es todo. ¡Suerte a los aspirantes a quest-makers!
  12. Me Gusta
    ElRaulxX got a reaction from guba in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  13. Me Gusta
    ElRaulxX got a reaction from SuperGamix in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  14. Me Gusta
    ElRaulxX got a reaction from Rusef in [TIP] Activar habilidades Beran-Setaou files 1675+   
    Esto me lo pidieron ayer mismo, pues la verdad es que nunca ha sido publicado en un foro español.
     
    Si os habéis fijado, a partir de los files 2010, beran-setaou (id 2493) adquiere nuevas habilidades. El único problema de ellas es que, normalmente, no hacen daño. La explicación es muy sencilla, pues el daño proviene del propio game y, por lo tanto, debemos activar esas habilidades.
     
    Para hacerlo, debemos ir al directorio (/usr)/home/game/share/locale/germany y abrir con un editor de texto el archivo settings.lua
    En este archivo, a parte de haber configuraciones de sonido, arena y /go de mapas, a partir de ahora se encontrará las configuraciones del mob 2493. ¿Como hacerlo? Fácil, tenemos que ir al final del archivo y copiar el siguiente código:
     
     
     
    Como podéis ver, ahí encontraremos los daños y bonus de las habilidades de nuestro mob. Además, también están las configuraciones de los metines que afectan al estado de nuestro mob en la sala del dragón (no me preguntéis como funciona eso, pues en este momento lo desconozco). Todo esto podemos modificarlo a nuestro antojo (la sintaxis creo que la podemos entender fácilmente).
     
    Post original:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Autor: .Nova.
     
    Y creo que eso es todo.
    Un saludín!
  15. Me Gusta
    ElRaulxX got a reaction from Strompeta in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  16. Me Gusta
    ElRaulxX got a reaction from krux porn in [1er Examen - Curso de Quest] Capítulos I - V   
    Espero que hayáis estudiado mucho, pues este es nuestro primer examen del curso. Sino lo hacéis bien habrá mano dura, eh!
     
    La única utilidad de este examen es que veáis lo que habéis aprendido. Hablaré con estos administradores feos haber si podríamos poner algún tipo de plaquita o algo. Estaría bien ¿no?
    Bueno, pues al lío. El examen estará formado por 5 preguntas con valor de 2 puntos cada una con una nota máxima de 10 (me siento profesor ). Los ejercicios, más que nada, consistirán en crear una quest con los parámetros que estableceremos.
     
    Se irá añadiendo un ejercicio nuevo cada x días. Debéis mandarnos la quest del ejercicio por privado. En el post escribiremos la nota individual de cada participante del examen dividido por ejercicios.
     
    IMPORTANTE: Las quests que enviéis deben estar tal cual dice el ejercicio, incluido textos y acciones de la quest. Añadir texto o inventar algo que no diga el ejercicio hará que la quest no sea tomada como válida.
     
    Ejercicio I :
    Ejercicio II :
     
    Y eso es todo. ¡Suerte a los aspirantes a quest-makers!
  17. Me Gusta
    ElRaulxX got a reaction from krux porn in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  18. Me Gusta
    ElRaulxX got a reaction from nilsonmax in Capitulo I - Introducción al curso de quest   
    ¡Buenas zone!
     
    Como ya os han dicho, nos dedicaremos keko y yo un tiempo a hacer juntos este graaaaan curso de quests (ya veréis como se os hará corto ). Keko me ha concedido el honor de ser el que abra el curso, así que eso haré jeje
    Los que me conozcan ya sabrán que lo que se me da mejor en cuanto a servidores de metin2 son las quests. Así que aquí estoy... dando un curso a unos cuantos ineptos de lenguaje quest (espero que la palabra inepto la dejemos de lado cuando acabéis este curso, mientras tanto, para mi seréis ineptos xd) para ver si alguien más aprende este lenguaje y dejáis tranquilo al pobre keko xdd
     
    A mi parecer, este lenguaje os empezará siendo bastante sencillo. Aún así, esta sencillez puede ir complicándose hasta llegar al punto de que sino entendéis realmente el funcionamiento básico de las quests no entenderéis nada. Aunque, por mucha complicación de una quest, si la analizas detalladamente y entiendes su funcionamiento, cualquier quest puede sernos fácil.
    Como para eso aún falta mucho, empezaremos por el principio.
     
    Algo importante que tenéis que tener en cuenta es que esto no se aprende en un día. Tenemos que recordar que estamos escribiendo en el lenguaje que habla nuestro servidor. El servidor hará lo que nosotros le digamos que haga. Es por eso que es importante que aprendáis a hablar y pensar en lenguaje informático. Ejemplo:
     
    1 - Pienso en levantarme.
    2 - ¿Estoy levantado? Si es así, se cancela la acción. Sino, paso al siguiente punto.
    3 - Si tengo ganas de andar, pasaré al siguiente punto. Sino, no haré nada.
    4 - Acción de levantarse: ¿se ha ejecutado correctamente? Si es así, voy al siguiente punto. Sino, vuelvo al primer punto.
    5 - Andar = mover las piernas
    6 - Cuando muevo las piernas me desplazo, doy una vuelta y vuelvo a sentarme.
    7 - Vuelvo al primer punto.
    8 - No sé si entenderéis eso, cuando os vayáis familiarizando entenderéis porqué pongo eso y que utilidad tiene.
     
    Creo que lo más lógico antes de aprender algo, es decir que es ese algo. Por eso empezaré definiéndoos lo que es una quest.
     
     
    Qué es una quest?
     
    Podríamos decir que una quest es cualquier archivo que utilice el lenguaje quest. Digo "podríamos" ya que no es un lenguaje de programación propiamente dicho. El lenguaje quest es una derivación de LUA (que sí que es un lenguaje informático) con muchas modificaciones con la intención de adaptarlo a Metin2. Es por eso, que si nos fijamos, el servidor utiliza archivos lua.
    A mi parecer, no es el lenguaje más importante del servidor. Aún así, con este podemos realizar cientos de cosas muy variadas y interesantes.
    Lo más común de una quest son las típicas tipo trama (ves a tal sitio, haz esto, haz lo otro...) pero las quests dan muchísimas más opciones a parte de eso, me atrevería a decir que eso es lo menos usado. Con las quests podemos crear dungeons (como la Torre de demonios), podemos corregir bugs (como el bug de hp negativo), podemos informar a la gente (por ejemplo, anuncios automáticos),... podría decir muchísimas más cosas pero tengo una guía que acabar
     
     
    Funciones
     
    Lo más importante de una quests son las funciones, pues las quests trabajan con ellas, pero ¿qué es una función?
    Una función es un carácter o grupo de carácter que corresponden a una acción del servidor o sustituyen un código determinado.
    La función "caminar" (del anterior ejemplo) equivale a mover las piernas con la intención de cambiar de lugar. Si en una quest tuviéramos que desplazarnos (caso hipotético), deberíamos utilizar la función "caminar" para movernos.
    Pero si tengo que definir una función dentro de nuestro lenguaje quest, lo dividiría en dos partes (sería lo mismo, pero uno más visual que el otro):
     
    ·Funciones definidas por el servidor. Serían aquellas funciones que, al ponerlas en nuestra quest, haría una acción. Un ejemplo real, un tipo de estas funciones sería la función "pc.give_item2(19,1)". Al utilizar esta función en una quest, el usuario (al que llamaremos pronto como pc) obtendrá una unidad del objeto con la id 19. Esta función sustituye la acción interna del servidor de dar un objeto al usuario.
     
    ·Funciones no definidas por el servidor. Son aquellas funciones que hemos definido a parte, en un archivo que más adelante del curso diremos, o en la propia quest. Estas funciones sustituye a varias acciones del servidor o de lua. Por ejemplo, si tenemos que escribir varias veces en la quest que se muestre en pantalla un mensaje de error, podemos poner estas funciones para ahorrarnos código.
     
    En concepto, podríamos pensar que son muy distintas, pero vienen a ser lo mismo.
     
     
    Object - Quest ¿Lo mismo?
     
    Lo que es una quest creo que ya lo hemos definido, pero ¿object?
    El object es lo que lee el servidor. El servidor no reconoce nuestra quest, sino que lee fragmentos de nuestra quest (en lenguaje lua).
    Existe un compilador que nos transforma nuestras quests y las deposita en la carpeta object para que las lea el servidor. El compilador crea un directorio con unas ids determinadas que corresponden al item, mob, timer... y al interior nos la separa en states y en la acción que se realiza. De esta manera, el servidor puede hacer uso de las quests.
    Este compilador se llama qc (quest compilator) y se encuentra en el directorio quest de nuestro servidor.
    Por lo tanto, para implementar las questa tendremos que hacer uso de él.
    Aquí os dejo un TIP que os ayudará:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
     
    Este capitulo ha sido el más teórico de todos y quizá tenga que añadir más información. Los siguientes capítulos serán más prácticos.
    Poco a poco empezareis a descifrar todos los secretos de las quests.
  19. Caca
    ElRaulxX got a reaction from Full Moli in [Quest Editable] Coins comerciables   
    Buenas zone!
    Hoy, para distraerme, me ha dado por hacer alguna quest (que raro en mi... ).
     
    Bueno, al lío! ¿de qué se trata?
    Se trata de una sencilla quest realizada en un ratito, con la intención de hacer un comercio ingame de coins para la ItemShop.
    La he echo con la intención de que sea sencilla de editar: añadiendo menos de dos líneas de código puedes añadir un nuevo objeto a la quest o incluso cambiar el nombre del objeto que saldrá en la quest.
     
    La quest modifica directamente el valor coins de account.account a través de mysql, así que no hace falta decir que deberéis configurar con los datos de vuestro servidor.
    Y como conozco a la gente demasiado bien y sé que harías cualquier cosa por conseguir coins gratis, he añadido un pequeño sistema de revisión a través de function true/false... por si se me escapa algo...
     
    Aquí la tenéis:
     
    La quest
     
     
     
    Como editarla y hacerla funcionar
     
    Para hacerla funcionar, lo primero que tenéis que hacer es sustituir id_item1, id_item2 y id_item3 por las ids del objeto de vuestro servidor (recordar que debe tener type 18 para que funcione la quest). Podéis utilizar ctrl+h en el notepadd...
    Lo único que quedará por hacer es poner vuestros datos de la db donde veáis esto:
    No hace falta decir que los datos va entre las comillas. Os lo he señalizado todo bien... para los mancos de vista  
    Para editarla, debéis buscar esto:
    Y añadir una nueva línea:Después buscais esto:Y añadís el item que habéis puesto antes:  
    Y eso es todo.
    Saludines
  20. Me Gusta
    ElRaulxX got a reaction from Anthony's in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  21. Me Gusta
    ElRaulxX got a reaction from Manuel Camacho in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  22. Me Gusta
    ElRaulxX got a reaction from Kayzer78 in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  23. Me Gusta
    ElRaulxX got a reaction from Dev in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  24. Me Gusta
    ElRaulxX got a reaction from camilo delgado in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
  25. Gracias
    ElRaulxX got a reaction from Slabon in [GUÃ�A] Problemas más comunes en quests   
    Hace un rato vi esta guía, aporte (o como queráis llamarlo) que me pareció muy interesante. Se trata de los errores más comunes en la inserción de quests en nuestros servidores (errores de sintaxis, errores de compilación...).
    Esta guía la veo yo más enfocada hacia los más novatos, pues con la práctica aprendes el significado de estos errores y su solución. Aún así, estoy seguro que muchas personas aprenderán algo que no sabían.
     
    RECALCO que esta guía no es creada por mí, sino que tan solo es traducida al español y un poco ampliada con mis conocimientos.
    Aquí os dejo el post original de .Alessa en elitepvpers:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno, pues vamos al lío xd
     
    Antes de empezar:
    Como esta guía es general para cualquier quest, utilizaremos variables [X]. Es decir, esta variable puede ser diferente en cada caso y substituida por cualquier cosa.
     
     
    1. when doesn't have begin-end clause
     
    Error de sintaxis: when doesn't have begin-end clause. ([X])
    [X]:[X]: Error occured on compile [X]
    Significado: "when" no sigue la estructura begin-end
    Análisis: Este error se produce cuando el conjunto del "when" no sigue la sintaxis apropiada. Seguramente, la razón de este error es un error de escritura o falta de un "begin". Es también común intercambiar un "begin" por un "then". Debemos recordar siempre que un when sigue la estructura: when [X] begin - end.
    Corrección: Buscar los "when" en nuestra quest y asegurarnos que sigue la sintaxis apropiada.
    when [X] begin
    [acción]
    end
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de escritura: ha sido intercambiado el "begin" por "begn"
     
     
    2.`[X]' expected near `[X]'
     
    Error de sintaxis: syntax error : [string "[X]"]:[X]: `[X]´ expected near `[x]´
    [X]:[X]: Error occured on compile [X]
    Significado: No ha sido especificado algo requerido por la sintaxis (acostumbra a ser especificado en el lugar de nuestras variables [X]).
    Análisis: Este error es similar anterior, pero acostumbra a darse en condiciones (if). La sintaxis es incorrecta: el servidor espera encontrar un "then" después de la condición, pero no lo encuentra. Como en el caso anterior, acostumbra a darse por fallos en la escritura o intercambio del "then" por "begin".
    Corrección: Corregir la sintaxis. Podemos saber aproximadamente donde esta el error por "expected near". Estos errores acostumbran a estar relacionados con los "if". Recordemos que la sintaxis apropiada es:
    if [X] == [X] then
    [acción]
    end
    *A veces es posible que los operadores estén invertidos. Recuerda que en todos los operadores que utilizamos que contienen más de un signo (>=, <=, !=, ==,...), el último signo siempre es es el "=".
    Imagen ejemplo:
    Imagen ejemplo - solución: Hemos cometido un error de sintaxis: el servidor espera encontrar un "then", pero no lo encuentra. La solución sería especificar el "then" junto a nuestra condición.
     
     
    3. Calls undeclared function!
     
    Error de sintaxis: Calls undeclared function!
    [X]
    Error occured on compile [X].[X]
    Significado: El servidor no detecta una función.
    Análisis: El servidor ha encontrado en nuestra quest una función que no ha sido especificada. Por lo tanto, no posee esa información y no puede realizar ninguna acción.
    Corrección: Debemos revisar la sintaxis: es posible que la función no esté bien escrita. También debemos revisar que nuestra función se encuentre en el archivo quest_functions (recordemos que si queremos crear una nueva función, debemos crearla en questlib.lua y especificarla en quest_functions para que la reconozca el servidor). Si queremos especificar una función que ha sido escrita dentro de una quest, tenemos que utilizar la siguiente sintaxis:
    nombredelaquest.nombredelafuncion (en vez de escribir tan solo la función)
    Imagen ejemplo:
    Imagen ejemplo - solución: Debemos especificar en el archivo quest_functions la función say_item_vnum
     
     
    4. assertion failure
     
    Error de sintaxis: assertion failure : nested==0
    [X]:[X]:Error occured on compile [X]
    Significado: Estructura equivocada.
    Análisis:La sintaxis general de la quest no es correcta. Este error puede darse en muchas ocasiones. Por ejemplo, este error se da cuando hay demasiados "end" o falta alguno.
    Corrección:
    Revisar que la sintaxis "quest [X] begin" está cerrada con un "end". Revisar que todos los "when" están cerrados con un "end". Revisar que todas las condiciones (if) están cerradas por un "end". Revisar que todos los "state" están cerrados por un "end". Imagen ejemplo: Imagen ejemplo - solución: Nuestro "when" no está cerrado con un "end".
     
     
    5. expecting state
     
    Error de sintaxis: expecting 'state'
    [X]:[X]:Error occured on compile [X]
    Significado: Es necesario un state: la estructura de "state" no es correcta.
    Análisis: Hay un error de sintaxis o es necesario un state. Este error sucede, por ejemplo, cuando un "when" está fuera de un "state".
    Corrección: Revisar que todos los "when" y "if" están dentro de un state. Revisar que los "state" están bien colocados y cerrados con un "end".
    Imagen ejemplo:
     
     
    6. state name not found
     
    Error de sintaxis: [X]:[X]:state name not found : [X]
    Error occured on compile [X]
    Significado: El servidor no encuentra un "state".
    Análisis: El uso o búsqueda de un "state" no es encontrado. Este error se da, por ejemplo, cuando utilizamos la función "set_state()" y el "state" definido en esta función no se encuentra dentro de la quest.
    Corrección: Asegúrate que todos los "state" definidos son correctos, la función que los utiliza está el "state" bien escrito y que todos los "state" están cerrados con un "end".
    Imagen ejemplo:
     
     
    7. must start with 'quest'
     
    Error de sintaxis: must start with 'quest'
    [X]:[X]:Error occured on compile [X]
    Significado: La quest debe empezar con 'quest'.
    Análisis: Toda quest debe ser iniciada con "quest [X] begin" y cerrada con un "end".
    Corrección:
    Asegúrate que la quest empieza con la sintaxis "quest [X] begin". Asegúrate que no hay nada fuera de el bloque "quest [X] begin" - end. Asegúrate que no has cometido un error de escritura en la forma típica de inicio de la quest. Imagen ejemplo:  
     
     
    8. Trying/attempt to compare number with nil
     
    Error de sintaxis: Trying/attempt to compare number with nil (se muestra en el Syserr)
    Significado: Al servidor le es imposible comparar un dato con nil.
    Análisis: Nil es lo que se le da a algo que no tiene valor. Es similar al 0, es decir, la nada, algo que no existe. Teniendo esto en cuenta, es lógico pensar que el servidor no pueda comparar algo con la nada.
    Corrección:
    Revisar que todas las variables o funciones que se comparen (a través de una sentencia if) tengan un valor definido previamente.
     
     
    Y eso es todo.
    Si os aparece algún otro error relacionado con quest, decírmelo. Ampliaré la guía sin ayuda de Alessa xd
     
    Un saludo
×
×
  • Crear nuevo...