Jump to content

omeleteraton

Mensajes recomendados

Hola a todos

Mi Discord es: caanmasu

Les traigo mi segundo tutorial de quest en donde puedes mejorar tus habilidades en quest/lua (un poco de SQL también) hasta convertirte en un verdadero experto.

Nota: en el archivo adjunto está el primer y segundo tutorial (idioma español e inglés)

Este tutorial trata sobre una Mazmorra infinita.

La dinámica de mis tutoriales es hacer una quest donde enseño punto por punto cómo la haría, y lo explico detalladamente.

Si quieres saltarte el tutorial y solo utilizar la quest, eres libre de hacerlo, dejé una carpeta con los archivos para instalar.

Debo advertir que solo proporciono código, no modelos. Utilizo modelos ya existentes del juego, en concreto, mapa de la torre de demonios, Reaper como jefe, perros como monstruos que hay que destruir, etc. Puedes utilizar la mazmorra con los modelos que quieras, así mejoras la experiencia del usuario. La mazmorra es personalizada, solo debes cambiar números.

También debo advertir que la mazmorra no ha sido testeada con varios jugadores, aunque hice buenas pruebas con varios de mis personajes, las mejores pruebas se hacen con jugadores reales. En caso de que se encuentren bugs, reportarlos a mi Discord.

Otra nota importante, si no lees el tutorial, hay datos adicionales de los que no te puedes perder, realmente son obligatorios. Debes ir al tutorial y al final encontrarás una sección llamada 'Datos adicionales:'. De verdad, no te lo puedes perder.

El contenido de este tutorial es el siguiente:

1. Mostrar un botón en el NPC
2. Mostrar el botón del NPC solo cuando estemos en el mapa de afuera de la mazmorra
3. Crear el primer salto a la mazmorra
4. Crear el modo grupo
5. Agregar algunas restricciones para la entrada
6. Crear dos mecánicas de salas y hacerlas funcionar para que se elijan aleatoriamente
7. Sacar al personaje de la mazmorra cuando muera
8. Crear el registro del ranking
9. Agregar retorno de mazmorra
10. Mostrar el ranking
11. Agregar un anuncio cuando alguien rompa un récord de piso
12. Crear el modo espectador
13. Aumentar la dificultad por cada piso
14. Agregar registros/logs
15. Crear las recompensas
16. Crear 5 mecánicas de mazmorras
17. Dinamizar las coordenadas base
18. Agregar tiempo restante en cada piso
19. Facilitar la entrada en personajes GMs
20. Convertir textos a variables

Algunos gifs:

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Debes iniciar sesión para ver el contenido del enlace en esta publicación.


Cantidad de líneas de código:

translate.lua: 48
questlib.lua: 76
quest_infinity_dungeon.sql: 9
infinity_dungeon.quest: 167
infinity_dungeon_lib.lua: 408
infinity_dungeon_mission_lib.lua: 287
infinity_dungeon_rewards.lua: 26

Total: 1021 líneas


Si te gustó la intención de este post puedes ayudarme con una reacción, así podrás darle más popularidad a éste y que sea más visitado para que más personas puedan acceder al conocimiento de quest/lua gratis y de la más alta calidad que jamás se ha visto.

Alguna vez un conocido me dijo que no había suficiente documentación de quest para Metin2 y le di la razón. En ese tiempo sabía un poco de quest/lua pero me dije 'el conocimiento debe ser libre pero alguien debe proporcionarlo, sin ánimo de lucro' y no esperaba que iba a hacerlo yo. No me quería quedar solo con lo que sabía, tenía la necesidad de compartirlo para todos.

Sobre mi conocimiento de quest/lua:
Cuando conocí quest/lua, ya tenía experiencia base de programación en general. Aprendí quest/lua empíricamente viendo quest de otras personas, el código fuente de LUA en C++ sobre las funciones y el código fuente (binario) relacionado con los tokens de RAW TEXT, en ese orden. Podría decir que he visto y revisado miles de quest escritas por alemanes, españoles, ingleses, rumanos, turcos y otras nacionalidades. También he visto todos los niveles en quests escritas por otros. He creado muchas quest para clientes, de todo tipo de nacionalidades para todo tipo de servidores.
En total he acumulado más de 10 mil horas de programación en quest/lua. He dedicado bastante tiempo de mi vida en esto. Soy una persona que no se queda con lo que sabe, sino que quiere extenderse más, así que investigué por mucho tiempo cómo mejorar la calidad de mi código y hasta el día de hoy lo pongo en práctica y es el pilar más importante de toda mi programación: calidad del código.
Aprendí muchas estructuras de código de muchas quest hasta que creé mi propia estructura y también mis propias librerías. Cuando quest/lua se limita a lo que necesito, no tengo ninguna dificultad en modificar o crear funciones de LUA en C++, ya que esto forma parte también de quest.

Hay mucho más sobre esto pero creo que es suficiente en este post.

El día que me vaya, quedará por siempre (o hasta que muera Metin2 por completo) este conocimiento que será útil para mejorar la experiencia de los jugadores en servidores privados de Metin2. Si son shit server o no son ingleses me da igual.

Si necesitas alguna ayuda puedes contactarme. Mi Discord es 'caanmasu'.

Saludos a todos.

Descarga:

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

Enlace para comentar
Compartir en otros sitios

  • 2 weeks later...

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, regístrate para publicar con su cuenta.

Guest
Responder a este tema...

×   Has pegado contenido con formato .   Eliminar formato

  Only 75 emoji are allowed.

×   Tu enlace se ha incorporado automáticamente.   Mostrar un enlace en su lugar

×   Se ha restaurado el contenido anterior. .   Borrar editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recientemente navegando por este tema   0 miembros

    • No hay usuarios registrados visitando esta página.
×
×
  • Crear nuevo...