Installation (Linux)/es

From Project Skyfire
Jump to navigation Jump to search

Hola que tal.

En esta guía se van a describir los pasos de la instalación de SkyFire EMU sobre una distribución de Linux llamada Debian, en su versión 6, o lo que es lo mismo, de nombre Squeeze, puedes adquirirla en la página oficial aquí.

Bueno, estando ya instalada y funcionando, vamos a empezar por instalar las dependencias de SkyFire EMU, siempre desde el usuario root.

aptitude install build-essential autoconf libtool gcc g++ make cmake subversion mercurial patch wget links zip unzip unrar-free openssl libssl-dev mysql-server mysql-client libmysqlclient-dev libmysql++-dev libreadline5-dev zlib1g-dev libbz2-dev git-core libace-dev libace-5.7.7 screen git git-core ssh unzip libssl-dev libssl0.9.8 libssl-dev linux-headers-$(uname -r)

Esto entre otras cosas nos va a instalar MySQL, el cual nos va a pedir una contraseña, se recomienda establecer una contraseña diferente al usuario "root" el cual ya establecimos su contraseña en la instalación de Debian.

Nos situamos en la ruta de instalación, descargamos el emu, e iniciamos su compilación e instalación. Atentos a la penúltima línea, un ejemplo de su uso sería make -j2

cd /opt
git clone git://github.com/ProjectSkyfire/SkyFireEMU
cd SkyFireEMU
mkdir build
cd build
cmake ../ -DPREFIX=/home/`echo $USER`/skyfire -DTOOLS=1
make -j(nº de cores)
make install

Vamos a instalar la base de datos oficial de SkyFire EMU, substituye USUARIO_ROOT_MYSQL por el usuario con permisos a escribir en la base de datos y cambia CLAVE por la clave que establecistes en el primer paso de instalación de MySQL

mysql -u USUARIO_ROOT_MYSQL -pCLAVE < /opt/SkyFireEMU/sql/create/create_mysql.sql mysql -u USUARIO_ROOT_MYSQL -pCLAVE auth < /opt/SkyFireEMU/sql/base/auth/auth.sql mysql -u USUARIO_ROOT_MYSQL -pCLAVE characters < /opt/SkyFireEMU/sql/base/character/character.sql

Una vez creado el esqueleto de la base de datos vamos a rellenarla , desde la última línea de código editamos el instalador para cambiar los valores que hace referencia el instalador para acceder a la base de datos, le tenemos que proporcionar valores como el usuario, contraseña y es posible que la base de datos del mundo, que habitualmente si no se cambia es "world" sin las comillas

cd /opt
git clone git://github.com/ProjectSkyfire/SkyFireDB
cd SkyFireDB/
nano linux_installer.sh

Por último lo ejecutas:

./linux_installer.sh

Copiamos los archivos de configuración que posteriormente editaremos de acuerdo con nuestras necesidades del server, el cual de nuevo cambiaremos los valores de acceso a nuestra base de datos (usuario, contraseña etc)

cp /opt/SkyFireEMU/src/server/worldserver/worldserver.conf.dist /home/root/skyfire/etc/worldserver.conf
cp /opt/SkyFireEMU/src/server/authserver/authserver.conf.dist /home/root/skyfire/etc/authserver.conf

Editaríamos cada uno de los dos archivos que antes mencionabamos con :

nano /home/root/skyfire/etc/authserver.conf
nano /home/root/skyfire/etc/worldserver.conf

Vamos a editar los valores de la base de datos auth, con nuestra IP para que podamos conectarnos, recordad que si estamos en un server que tenga configurada una IP pública, debemos establecer este mismo valor, en caso de estar en una LAN, debemos introducir el valor correspondiente a su IP interna.

mysql -u USUARIO_ROOT_MYSQL -pCLAVE

Cambiamos valores:

use auth;
   UPDATE realmlist SET name = 'Your Realm Name' WHERE id = 1;
   UPDATE realmlist SET address = 'Your IP' WHERE id = 1;
   exit


Cambia 'Your Realm Name' por el nombre de tu server, y 'Your IP' por la ip que corresponda según el paso anterior.

Ahora vamos a bajar las herramientas de SkyFire EMU, ellas nos van a permitir extraer los mapas de nuestra instalación de Cataclysm entre otras cosas...

git clone git://github.com/ProjectSkyfire/SkyFire-Community-Tools

Tenemos que copiar los archivos de la ruta :

/opt/SkyFireEMU/SkyFire-Community-Tools/Extractors/406a#

A la carpeta de tu instalación de Cataclysm. debes copiar los archivos extractor.exe vmap3assembler.exe y vmap3extractor.exe a tu carpeta de WoW Cataclysm 4.06a. Antes de que hagas nada, copia tu actual archivo wow.exe (que tiene que ser de la versión 4.06a) a otro nombre (wow406.exe por ejemplo), o en otra carpeta, luego tienes que editar los archivos config.wtf y launcher.wtf dentro de la carpeta WTF de tu wow. Si falta alguno de ellos lo creas, ambos tienen que contener en su interior esta variable :

SET accountType "CT"

es posible que exista de esta manera :

SET accountType "LK"

tú lo cambias y lo dejas en ambos archivos a SET accountType "CT" luego corres el launcher y dejas que se actualize a tope, es decir, no pasa nada si se actualiza todo a 4.20, de hecho tiene que ser así Cuando la actualización de tu wow haya terminado, abres una ventana cmd, te situas en tu carpeta wow y ejecutas primeramente extractor.exe , esto te va a crear dos carpetas, dbc y maps, ambas las tienes que mover a /home/root/skyfire/bin

Después ejecuta vmap3extractor.exe y deja que termine, te creará una carpeta llamada Buildings. Creaté dentro de la carpeta wow una carpeta llamada vmaps y por último ejecuta

vmap3assembler.exe Buildings vmaps

Mueveté esa carpeta vmaps a /home/root/skyfire/bin

Borra las carpetas Buildings, dbc, maps y vmaps, así como extractor.exe, vmap3assembler.exe y vmap3extractor.exe de tu carpeta del wow, es el momento de parchear el wow.exe (pero ojo, el wow.exe es ahora 4.20) a si que le vas a cambiar el nombre a wow420.exe, y tu anterior archivo wow406.exe lo vas a copiar / renombrar a wow.exe

Copiaté los archivos (tres archivos) de

/opt/SkyFireEMU/SkyFire-Community-Tools/SkyFire Patcher/406a#

a tu carpeta del wow, desactiva antes el antivirus, suele darte alarma al archivo injector.exe

Ejecuta SkyFirePatcher.exe contra el archivo wow.exe, si todo sale bien te lo modificará y verás en verde el resultado con "success" o algo así.

Ya podemos correr el server :

screen -S auth
cd /home/root/skyfire/bin
./authserver

Pulsa las teclas CRTL + D para salirnos de la ventana virtual creado con el comando screen y lanzar la segunda ventana :

screen -S world
cd /home/root/skyfire/bin
./worldserver

Pulsa las teclas CRTL + D de nuevo.

Ya tienes el servidor andando. Si necesitas entrar en alguna de las ventanas anteriores virtuales para pulsar CRTL +C para cortar la ejecución o reiniciar, lo que sea, usa

screen -r auth

(para entrar en auth) o

screen -r world

(para el mundo)

para cerrar esas ventanas "exit" en cualquiera de ellas.

PD: El comando screen es útil para dejar corriendo los servicios de auth y world para cuando nos salgamos de nuestra sesión ssh los binarios sigan corriendo, si usasemos esos comandos sin usar screen al cerrar la sesión ssh se cerraría la ejecución de los binarios y el servidor dejaría de estar corriendo.