- Desde
- 2 Feb 2020
- Mensajes
- 223
- Reacciones
- 236
- Honor
- 80
Tutorial de Script C++ World of Warcraft 1:
En esta guía, enseñaré una de las maneras de hacer un script C++ para el emulador JadeCore que está basado en TrinityCore antiguo. Les servirá de conocimiento base para otros emuladores más actualizados y motivarlos a investigar mas sobre el tema. Vale aclarar que todo lo planteado aquí es de manera autodidacta no soy programador, solo comparto lo que he aprendido.
Para esta guia deben tener instalado Visual Studio, Cmake y otras dependencias que exija el core ya sea OpenSSL,Boost,Mysql en sus versiones x86 o x64.
Punto sobre los cuales hablaré:
-Comenzare con el link del source JadeCore548-patched.rar
-Como agregar el script C++ al source.
-Estructura del Script.
-Casteo de magias.
-Textos.
-Invocación de Npc.
Como agregar el script C++ al source.
Creamos un archivo en blanco ya sea con bloc de notas o con notepad++, en la carpeta \JadeCore548-patched\src\server\scripts\Custom, con extension .cpp
Yo voy a crear tutorial.cpp.
En el archivo CMakeLists.txt agregamos el script, en caso de no tenerlo lo pueden crear, debe quedar asi:
Pasamos el source por Cmake.
En Visual Studio buscamos en archivo ScriptLoader.cpp (\JadeCore548-patched\src\server\game\Scripting\ScriptLoader.cpp)
Se dede declarar en dos lugares:
Estructura del Script.
Esta es una plantilla de Script de la cual partiremos:
1-Enumerar los datos que vamos a utilizar:
(pueden utilizar la palabra que deseen (xxxxx) pero debe quedar asi)
Para los npc:+
Para los textos:
Para las magias:
Para los eventos:
2-Explicar cada funcion:
-Cuando la criatura se resetee es decir respanee.
-Cuando la criatura entre en combate.
-Cuando la criatura mate, ya sea player o npc.
-Cuando la criatura muera.
3-Agregar los eventos con sus respectivos tiempos:
Al declararse en la funcion void EnterCombat empezara a contar el tiempo en el momento que empiece el combate.
4-Crear los eventos con sus respectivos spell, summon, textos, etc:
El Script deberia ir quedando asi:
Explico que hace el npc sencillo:
Cuando entre en combate dirá un texto, se casteara una magia y :
cada 15 segundos casteara desgarrar a un objetivo aleatorio que este en un rango de 20 metros.
cada 10 segundos casteara rajar al objetivo con mas amenaza.
cada 5 segundos casteara torbellino en el lugar.
cada 20 segundos invocara un NPC en su posicion y dirá un texto.
Cuando mate dirá un texto.
Cuando muera dirá un texto.
Ahora vamos a la parte de SQL:
Crear el NPC con el nombre del script en la columna `ScriptName`:
Textos del NPC:
Compilamos y que lo disfruten.
En esta guía, enseñaré una de las maneras de hacer un script C++ para el emulador JadeCore que está basado en TrinityCore antiguo. Les servirá de conocimiento base para otros emuladores más actualizados y motivarlos a investigar mas sobre el tema. Vale aclarar que todo lo planteado aquí es de manera autodidacta no soy programador, solo comparto lo que he aprendido.
Para esta guia deben tener instalado Visual Studio, Cmake y otras dependencias que exija el core ya sea OpenSSL,Boost,Mysql en sus versiones x86 o x64.
Punto sobre los cuales hablaré:
-Comenzare con el link del source JadeCore548-patched.rar
-Como agregar el script C++ al source.
-Estructura del Script.
-Casteo de magias.
-Textos.
-Invocación de Npc.
Como agregar el script C++ al source.
Creamos un archivo en blanco ya sea con bloc de notas o con notepad++, en la carpeta \JadeCore548-patched\src\server\scripts\Custom, con extension .cpp
Yo voy a crear tutorial.cpp.
En el archivo CMakeLists.txt agregamos el script, en caso de no tenerlo lo pueden crear, debe quedar asi:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Pasamos el source por Cmake.
En Visual Studio buscamos en archivo ScriptLoader.cpp (\JadeCore548-patched\src\server\game\Scripting\ScriptLoader.cpp)
Se dede declarar en dos lugares:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Estructura del Script.
Esta es una plantilla de Script de la cual partiremos:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
1-Enumerar los datos que vamos a utilizar:
(pueden utilizar la palabra que deseen (xxxxx) pero debe quedar asi)
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Para los npc:+
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Para los textos:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Para las magias:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Para los eventos:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
2-Explicar cada funcion:
-Cuando la criatura se resetee es decir respanee.
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
-Cuando la criatura entre en combate.
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
-Cuando la criatura mate, ya sea player o npc.
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
-Cuando la criatura muera.
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
3-Agregar los eventos con sus respectivos tiempos:
Al declararse en la funcion void EnterCombat empezara a contar el tiempo en el momento que empiece el combate.
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
4-Crear los eventos con sus respectivos spell, summon, textos, etc:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Codigo:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
El Script deberia ir quedando asi:
C++:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Explico que hace el npc sencillo:
Cuando entre en combate dirá un texto, se casteara una magia y :
cada 15 segundos casteara desgarrar a un objetivo aleatorio que este en un rango de 20 metros.
cada 10 segundos casteara rajar al objetivo con mas amenaza.
cada 5 segundos casteara torbellino en el lugar.
cada 20 segundos invocara un NPC en su posicion y dirá un texto.
Cuando mate dirá un texto.
Cuando muera dirá un texto.
Ahora vamos a la parte de SQL:
Crear el NPC con el nombre del script en la columna `ScriptName`:
SQL:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Textos del NPC:
SQL:
Necesitas,
Acceder
o
Registrarse para ver el contenido.
Compilamos y que lo disfruten.
Última edición: