[Tutorial] Crear un servidor para WoW usando ArcEmu y NCDB [Tutorial]

Iniciado por Ariath, 1 Agosto 2008, 12:57 PM

0 Miembros y 4 Visitantes están viendo este tema.

javierdsv

bueno como muchos quieren publicar su servidor online y al parecer... no pueden voy a citar a frequency el creador de la guía anterior:

Citar- Creación de un dominio para nuestro servidor:

Esto es recomendable para aquellas personas que tienen una ip dinamica ( osea que cambia ), pero tambien es recomendable para aquellas que tienen una estatica o fija, ya que siempre quedará mejor un nombre como miservidor.no-ip.com ha nuestra ip, claro que yo siempre recomiendo comprar un dominio .com .net o el que sea pero eso ya es opcional xDD.

Vamos a ir a lo facil entramos en la página de no-ip.com: http://www.no-ip.com/
Nos creamos una cuenta y nos logueamos, una vez logueados en el menú Hosts/Redirects, marcamos Add, en hostname ponemos un nombre da igual cual sea pero será el nombre que estara cara al publico asi que elegir uno bueno, luego en la lista desplegable elegimos el dominio, no-ip.com, no-ip.info, no-ip.biz da igual, el resto lo dejamos como esta y pulsamos Create Host.

Bien pongamos el ejemplo que yo me creé el dominio prueba.no-ip.com, usaré  este dominio en todo el proceso de instalación vosotros solo teneis que cambiarlo por el que os hayais creado.

Los que tengais ip estática, esto bastará pero los que las tengais dinamica, existe un programa muy útil llamado No-Ip Duc. Instaladlo y cuando lo ejecutais os logueais en el programa, el programa realiza una comprobacion cada x tiempo, si vuestro dominio no está actualizado con vuestra ip actual, volverá a redireccionarlo, solo lo teneis que poner y olvidaros del tema.

- Configuración del archivo host y apertura de puertos:

Este paso para mí es uno de los más importantes, ya que olvidarse de esto, puede fastidiarnos el resto del proceso, así que lo hacemos ahora y nos lo quitamos de encima, primero tenemos que saber cual es nuestra ip local:

- En inicio, pulsamos ejecutar y escribimos cmd, luego dentro de la consola tecleamos ipconfig, apuntamos nuestra dirección ip que será del estilo 192.168.x.x más adelante tenemos que abrir los puertos a esta dirección.

-Ahora en inicio, ejecutamos lo siguiente, copialo y pegalo así no habrá fallos: %windir%\system32\drivers\etc una vez dentro del archivo creamos la siguiente linea (Abajo de todos los comentarios que vienen):
Dirección IP dominio, en mi caso sería:
127.0.0.1 prueba.no-ip.com

NOTA: Tenemos que añadir tambien otra linea con 127.0.0.1 localhost
En definitiva os tiene que quedar exactamente (con prueba.no-ip.com):

127.0.0.1 localhost
127.0.0.1 prueba.no-ip.com

- Pero para que todo el contenido funcione y si teneis un router teneis que abrir los siguientes puertos a la direccion ip que os salió antes, todos son tcp:  8129, 8093, 8090, 8085, 3724, 80, 3306. Tambien aseguraos de tener desactivado el firewall de windows ya que puede interferir mucho.

Bueno despues de todo esto ya podemos seguir con la instalacion del servidor.

Avisen si les funciona.. sino me dicen para revisarlo
ahh y una cosa: el archivo hosts se puede llamar diferente pero siempre tiene host en el nombre, se abre con cualquier editor de texto.

Y bueno para los archivos config solo es cuestion de cambiar dónde aparece "127.0.0.1" por tu nuevo dominio y te debería correr bien.

metu481

En primer llugar agradecer al creador del post por tan buena Guia, la segui paso por paso cuidando cada detalle y mi server funciona excelente... Aunque solo tengo  incomvenientes con  respecto a bug, pero esos son debido a la Base de datos, Quest q no funcionan, NPCs q faltan. Las clases no aprenden totalmente los poderes, algunos estan Bug.

Cada vez que hay nuevas versiones del ArcEmu compilo y actualizo, y se solucionan los bug, pero en general lo que quisiera es aprender a reparar yo mismo esos bug como los que expuse arriba, NPc faltantes, talentos q no se aprenden, Ques dañadas.

Y ademas si alguien tiene Querrys con vendedores Custom para las ultimas versines de WhyDB q las cuelgue aca por favor, todos los vendedores q he encontrado no son compatibles creo porq al parecer los creadores modificaron las tablas creo y siempre me da error de q tal columna no existe, etc.

Si alguien puede ayudarme con esto se lo agradezco de antemano.

[Espero descubrir pronto cual es mi habilidad]

Moonlost

Hoy ya mas tranquilo, quería decir al creador de la guía que es como la séptima que he seguido en casi mes y medio, y es la primera vez que me ha funcionado. Las otras guías muchas veces dan pequeños detalles por sentado que la gente los conoce, y ahí es donde meto la pata siempre.

Ahora tengo una consulta, que en breve probaré a ponerlo online. Si hacemos lo que hay puesto un par de post mas arriba en teoría estaría online. Pero parta que se conecte un amigo a mi servidor, qué tendría que hacer él en su ordenador, y yo en el mío ( a parte de supongo crearle una cuenta en la base de datos)?

Otra duda muy urgente, cómo averiguo las coordenadas para moverme por todos los mapas? Y lo que es más importante, cómo puedo entrar en las distintas instancias que son de Raid, yo sólo???

Muchas gracias, y no veas la emoción ayer cuando por fin lo conseguí. :D

Ariath

Para las instancias de Raid, tienes que ser GM, y entonces había un comando que lo que provocaba era que te saltabas todas las comprobaciones del tipo ¿Tienes lo necesario para entrar? ¿Estás en banda? y cosas así, lo que pasa es que no recuerdo el comando ahora mismo. Miraré a ver si lo veo.

Para el online, realmente la persona que se conecta a un servidor, no tiene que hacer nada más que modificar su realmlist con la IP/Dominio del servidor al que se conecte. Los verdaderos cambios vienen de parte del servidor, como la apertura de puertos y redirección de los mismos en el router, configurar adecuadamente los configs, etc ...

Las coordenadas, pues no tengo ni idea, pero supongo que debe haber otro comando que te de información sobre tu personaje, así como las coordenadas sobre las que estás, es cuestión de buscarlo.

Lo de las Quest que faltan o los NPC faltantes, ya está resuelto hace tiempo, ir al primer post a la sección de errores resueltos (no se por que me da la sensación, de que la gente que se lee el tutorial (suponiendo que se lea todos los hilos) siempre se salta esa parte... ).

Lo de los hechizos faltantes y demás, eso ya es por la base de datos o el emulador mismo, tendrán que seguir puliendolo.

Si quieres reparar esos bug tu mismo... pues, los que tengan que ver con la base de datos, veo dificil arreglarlos nosotros, pues tendrías que saber si hay que modificar algo, o si algo falta y donde falta.

En cuanto al emulador en sí, cualquiera puede mirarse el código fuente y tratar de mejorarlo, pero necesitas conocimientos de C.

Fersee, en principio da igual usar el Visual C++ 2008 o el 2005, lo que pasa es que, si te descargas el 2005, la versión Express, necesitas bajarte e instalar también aparte un paquete (una SDK creo que era) para poder compilar, aparte de configurarla para que funcione con el Visual C++ 2005, mientras que con el 2008 no necesitas nada más.

Salu2

ashan

ariath plz dime que puede ser el error ese... se me keda en Authenticating.
he hexo lo que dices al principio del post de las mimas pass, y me lo sigue diciendo

en el primer post de esta pagina esta mis configs

Ariath

Subelo a filebeam plis, el enlace de Megaupload parece que lo han borrado.

Salu2


Ariath

Vale, nada más abrir el arcemu-logonserver.conf, creo que ya he encontrado el error :)

********************************************************************************/

# LogonDatabase Section
#
#    These directives are the location of the `realms` and `accounts`
#    tables.
#
#    LogonDatabase.Host      - The hostname that the database is located on
#    LogonDatabase.Username  - The username used for the mysql connection
#    LogonDatabase.Password  - The password used for the mysql connection
#    LogonDatabase.Name      - The database name
#    LogonDatabase.Port      - Port that MySQL listens on. Usually 3306.
#    LogonDatabase.Type      - Client to use. 1 = MySQL, 2 = PostgreSQL, 3 = Oracle 10g
#

<LogonDatabase Hostname = "127.0.0.1"
               Username = "root"
               Password = "rchinwolak"
               Name     = "logon"
               Port     = "8129"
               Type     = "0">

Prueba a cambiar el puerto 8129 por el puerto 3306 que aparece arriba, en la frase que te he puesto en negrita, en la cual, traducido dice así: Puerto en el que escucha MySQL. Normalmente 3306.

Prueba y me cuentas, si sigue sin ir miro mas cosas.

Salu2

P.D: Ah, se me olvidaba, el Type lo tienes mal. Tu lo tienes puesto a 0.
El valor de Type, hace referencia al tipo de base de datos al que te conectas, que son: 1 = MySQL, 2 = PostgreSQL, 3 = Oracle 10g .

Como ves, el 0 no aparece por ningun lado ;)

Debes dejar el Type a 1, que es el que corresponde a una base de datos MySQL.

ashan


Ariath

He estado haciendo unos cambios en los archivos de config que me has pasado, y de momento ya pasa del Authenticanting, voy a probar a ver si conecta bien a mi servidor y se puede jugar o se cuelga, ahora después te colgaré los archivos de configuración modificados.

He de decir, que no me extraña que no te fuese bien, pues tenías un baile de puertos que ya ya :D

Luego cuando los cuelgue de nuevo, de paso explico donde estaban los errores.

Salu2

P.D: Bueno, paso a relatar los fallos que he encontrado en los archivos de configuración:

arcemu-logonserver.conf:
-----------------------------

<LogonDatabase Hostname = "127.0.0.1"
               Username = "root"
               Password = "rchinwolak"
               Name     = "logon"
               Port     = "8129"
               Type     = "0">

arcemu-realms.conf:
-----------------------

<LogonServer Address = "127.0.0.1"
             Port = "8129"
             Name = "logon"
             RealmCount = "1">

-------------------------------------------------------
-------------- Cómo deberían estar ---------------
-------------------------------------------------------

arcemu-logon.conf:
----------------------

<LogonDatabase Hostname = "127.0.0.1"
               Username = "root"
               Password = "rchinwolak"
               Name     = "logon"
               Port     = "3306"
               Type     = "1">

arcemu-realms.conf:
------------------------

<LogonServer Address = "127.0.0.1"
             Port = "8093"
             Name = "Default Logon"
             RealmCount = "1">

----------------------------------------------------------

La cosa curiosa es que, los datos que tenías mal puestos, son datos que no hace falta modificar para nada, de echo, estos ultimos datos que he puesto (en la parte de Cómo deberían estar), estan extraidos de los archivos de configuración base del arcemu, aquellos que nos copiamos de la carpeta del código fuente. Solo he modificado la parte de los datos concernientes a tu servidor, como la contraseña de MySQL y demás.

Aquí te pongo los archivos ya reparados: http://filebeam.com/0113f7e3715454cc243d55696599b3b7